Contents

Hur man använder anpassade teckensnitt och texteffekter med Pythons arkadbibliotek

Pythons Arcade är ett kraftfullt bibliotek som gör det enkelt att skapa 2D-spel. Ett sätt att förbättra det visuella intrycket av ditt spel är att använda anpassade teckensnitt och texteffekter. Anpassade teckensnitt kan ge ditt spel personlighet, medan texteffekter kan dra uppmärksamheten till viktig information i spelet.

Att integrera anpassad typografi i ditt videospel kan bidra till att förbättra dess övergripande estetiska tilltal genom att ge textkomponenterna en unik identitet. Att välja typsnitt som harmonierar med spelets tematiska och känslomässiga ton kan leda till en ännu mer fängslande och uppslukande miljö för spelaren.

Skapa ett enkelt 2D-spel

För att börja utforska användningen av personliga typsnitt och grafiska textstilar i Unity bör du börja med att utveckla ett grundläggande 2D-spel som innehåller spelarnavigering. Genom att genomföra denna inledande fas kan man skapa en grund för att senare integrera skriftligt innehåll och visuella utsmyckningar inom ramen för spelmiljön.

Källkoden som används i denna publikation kan nås via dess GitHub-arkiv och är öppet tillgänglig utan kostnad, förutsatt att du följer villkoren i MIT-licensen.

För att demonstrera hur man skapar ett grundläggande spel i Pygame inom ramen för denna handledning skapar vi en ny klass med namnet “MyGame” som härstammar från klassen “arcade.Window”. I konstruktorn för denna klass, även känd som __init__ , initialiserar vi spelfönstret genom att tillhandahålla skärmens bredd, höjd och titel till dess föräldrakonstruktor. Dessutom ska vi använda metoden arcade.set_background_color() för att fastställa bakgrundsnyansen för spelfönstret.

Initiera spelarens startposition i konstruktorn genom att definiera deras x- och y-koordinater med self.player_x och self.player_y . Funktionen on_draw() ansvarar för att visa spelarkaraktären visuellt på skärmen. Genom att ställa in dessa inledande steg kan vi bygga vidare på dem för att införliva ytterligare funktioner som text och visuella effekter.

/sv/images/simple-game-in-arcade-1.jpg

Lägga till text

Att integrera skriftligt innehåll är en viktig aspekt av videospel som möjliggör kommunikation med spelarbasen genom att presentera information på olika sätt, till exempel genom att visa poäng, ge instruktioner, föra berättelser framåt och märka användargränssnitt.

I metoden on_draw() i klassen MyGame använder du funktionen arcade.draw_text() för att presentera ett välkomstmeddelande på skärmen. Denna funktion kräver olika parametrar såsom texten, dess placering i form av både x-axelns och y-axelns koordinater, färg och teckenstorlek.

 def on_draw(self):
    arcade.start_render()
    arcade.draw_circle_filled(self.player_x, self.player_y, 30, BLUE)
    
    # Display a welcome message
    arcade.draw_text("Welcome to My Game!", 200, 300, BLACK, 24)

Denna funktion möjliggör en smidig integrering av skrivet innehåll i spelmiljön, vilket banar väg för intrikata visuella och narrativa element att utvecklas.

/sv/images/simple-text-in-arcade.jpg

Lägga till ett anpassat typsnitt

Att använda ett personligt typsnitt kan avsevärt förbättra det visuella tilltalet och särprägeln hos ens videospel, vilket framgår av dess förmåga att skilja sig från mer konventionella alternativ. Lyckligtvis erbjuder Kivy en tillgänglig lösning genom implementeringen av Arcade-biblioteket, vilket underlättar integrationen av unik typografi med hjälp av den användarvänliga arcade.load\_font()-funktionen. Genom att använda denna funktion kan designers enkelt införliva anpassade typsnittsfiler som vanligtvis finns i .ttf-format för sömlös inkludering i deras interaktiva applikation.

För att införliva ett eget typsnitt i ditt spel måste du se till att det finns en licensgodkänd typsnittsfil i projektets rotmapp. Använd metoden arcade.load\_font() i MyGame-klassens initialiseringsfunktion för att importera den personliga typografin och lagra den som en instansvariabel, t.ex. self.custom\_font.

Du kan använda detta personliga typsnitt tillsammans med funktionen arcade.draw\_text() för att presentera text med ett omisskännligt visuellt utseende.

 def on_draw(self):
    arcade.start_render()
    arcade.draw_circle_filled(self.player_x, self.player_y, 30, BLUE)
    
    # Load the custom font in the __init__ method of MyGame class
    self.custom_font = arcade.load_font("custom_font.ttf")
    text = "Custom Font!"

    # Inside the on_draw method, draw text using the custom font
    arcade.draw_text(text, 250, 250, BLACK, font_name=self.custom_font) 

Här är resultatet:

/sv/images/custom-text-in-arcade.jpg

Lägga till texteffekter

Genom att införliva visuellt fängslande texteffekter kan designers ge sina spel en extra dimension av spänning och intriger. Tänk till exempel på att använda en pulserande animering som fångar tittarens uppmärksamhet genom sin dynamiska natur. Detta kan uppnås ganska enkelt genom att manipulera teckenstorleken på ett sådant sätt att det skapar en illusion av rörelse.

För att implementera den önskade visuella effekten i klassen MyGame , skall vi införliva en extra variabel som heter text_effect . Denna variabel kommer att reglera den pulserande animationen genom att påverka skalningen av textens teckenstorlek.

Genom iterativa ändringar och inkapsling av text_effect variabeln i on_draw() metoden kan vi skapa en oscillerande visuell effekt genom att modulera teckenstorleken över tid, vilket resulterar i en rytmisk animation som påminner om en puls.

 self.text_effect = 0

text = "Pulsating Text"

# Inside the on_draw method, implement the pulsating text effect
text_size = 24 \\+ self.text_effect
arcade.draw_text(text, 300, 200, BLACK, text_size, self.custom_font)
self.text_effect = (self.text_effect \\+ 1) % 10 

Inkluderar ytterligare funktioner

Förutom att använda ett personligt typsnitt kan en rad ytterligare funktioner användas för att förbättra din digitala upplevelse.

Animationer

Genom att integrera sprites med animerade sekvenser kan man förbättra spelelementens estetiska tilltal genom att ge dem rörelse och lockelse. Ett bra exempel är att införliva rörelseanimationer för avatarer eller införa små oscillerande rörelser i lövverk och flora.

Poängvisning

Överväg att använda unika typsnitt och visuella utsmyckningar för att presentera spelarnas prestationer och poäng på ett fängslande sätt. Använd iögonfallande animationer under poänguppdateringar för att förbättra presentationens övergripande tilltal.

Dialogrutor

Överväg att använda visuella element som texteffekter för att förbättra estetiken i spelets dialoger genom visuellt fängslande dialogrutor, samtidigt som du använder unika typsnitt och specialeffekter för att skilja mellan olika karaktärer.

Bästa praxis för anpassade teckensnitt och texteffekter

För att garantera en oklanderlig och estetiskt tilltalande spelupplevelse är det viktigt att följa vissa optimala tillvägagångssätt eller “bästa praxis”.

Använd läsbara typsnitt

När du använder egna typsnitt i dina videospel är det viktigt att hitta en balans mellan konstnärlig känsla och läsbart innehåll. Även om ett visuellt tilltalande typsnitt kan förbättra spelets övergripande estetik, kan dess oläslighet potentiellt försämra spelarens upplevelse och minska deras engagemang.

Välj ett typsnitt som harmonierar med det övergripande motivet i ditt spel, samtidigt som texten förblir läsbar och begriplig.

Ha ett konsekvent tema

Se till att alla typografiska beslut är enhetliga för att skapa en enhetlig estetik genom hela din videospelupplevelse. Det är viktigt att välja typsnitt som passar med det övergripande motivet och atmosfären i ditt spel.

En konsekvent typografi kan skapa en sammanhängande visuell identitet och minska risken för visuellt avvikande element som kan göra det svårt att leva sig in i spelet.

Tänk på teckenstorleken

När man införlivar anpassade typsnitt är det viktigt att tänka på hur teckenstorleken ska skalas i förhållande till olika upplösningar och enheter. Ett typsnitt som är perfekt läsbart på en utvecklares skärm kan vara antingen för litet eller för stort när det återges på andra skärmar.

Säkerställ läsbarhet och visuellt tilltal genom att testa spelet på en rad olika enheter, inklusive sådana med olika skärmstorlekar och upplösningar.

Säkerställ god kontrast

Det teckensnitt som används i videospel måste vara tillräckligt urskiljbart från de omgivande visuella elementen, vilket säkerställer optimal läsbarhet under olika ljusförhållanden och komplexa bakgrunder. Särskild uppmärksamhet bör ägnas åt situationer där skärmen är svagt upplyst eller har en mängd konkurrerande visuella element.

Välj nyanser som lätt kan urskiljas mot bakgrunden, och använd en konsekvent färgpalett för att stärka en visuellt harmonisk presentation.

Använd texteffekter med måtta

Det är viktigt att vara återhållsam när man använder texteffekter i videospel. En överdriven användning av sådana utsmyckningar kan resultera i en visuellt kaotisk miljö som tar bort fokus från viktiga detaljer och stör spelarens upplevelse.

Använd textutsmyckningar selektivt och reservera dem för att framhäva viktig kommunikation, prestationer eller anmärkningsvärda spelförekomster för att säkerställa att de behåller sin styrka.

Upprätthålla god prestanda

Att optimera textelement i spel är avgörande för att upprätthålla en balans mellan visuellt tilltal och prestanda. Implementering av högupplösta teckensnitt eller komplicerade animationer kan påverka spelets totala bildfrekvens negativt, vilket resulterar i en suboptimal användarupplevelse. För att säkerställa en oavbruten spelsession är det viktigt att hitta en harmonisk jämvikt mellan dessa två faktorer.

Gör dina spel mer engagerande med anpassade typsnitt och texteffekter

Att integrera personliga typsnitt och grafiska detaljer i en arkadupplevelse är inte bara estetiskt tilltalande; de ger spelupplevelsen förhöjda nivåer av interaktivitet och djup. Genom att använda typografi kan du förmedla spelets väsen och atmosfär, medan iögonfallande textutsmyckningar hjälper spelaren att fokusera och ger visuella ledtrådar.

Genom att integrera dessa element på ett genomtänkt sätt kan du skapa en dynamisk och fängslande spelupplevelse som engagerar spelaren till fullo.