Gi spillet ditt litt personlighet med tekst som gjenspeiler design og sjanger.

Estetikk spiller en avgjørende rolle i spillutvikling. Små detaljer kan påvirke hvor godt spillet ditt fanger oppmerksomheten til spillere og fordyper dem i spillverdenen. Egendefinerte fonter og teksteffekter lar deg sette inn personlighet og stil i spillets grensesnitt, dialog og HUD-elementer.

Enten du designer et eventyrspill, puslespill eller noe annet, kan tilpassede fonter og teksteffekter forvandle prosjektet ditt fra grunnleggende til fengslende.

Lag et enkelt 2D-spill

Før du dykker inn i verden av tilpassede fonter og teksteffekter, lag et grunnleggende 2D-spillgrunnlag. For dette eksemplet, lag et spill med spillerbevegelse ved å bruke Pygames funksjoner.

Koden som brukes i denne artikkelen er tilgjengelig i denne GitHub-depot og er gratis for deg å bruke under MIT-lisensen.

For å starte, sett opp spillvinduet. Pygame gir pygame.display.set_mode() funksjon for å lage et vindu som viser spillet ditt. Du kan også angi en tittel for vinduet ved å bruke pygame.display.set_caption().

instagram viewer
import pygame
pygame.init()

# Set up display
width, height = 800, 600
screen = pygame.display.set_mode((width, height))
pygame.display.set_caption("My Pygame Adventure")

Initialiser nå spillerobjektet ved å bruke pygame. Rect() klasse. Denne klassen representerer en rektangulær form, som du kan bruke til å representere karakterer og objekter i 2D-spill.

# Initialize player
player = pygame.Rect(50, 50, 50, 50)
player_color = (255, 0, 0)

Hovedspillsløyfen er hjertet i spillet ditt, hvor all handlingen skjer. Det kontinuerlig sjekker for spillerinndata, oppdaterer spillstatusen og tegner skjermen på nytt.

# Main game loop
running = True

while running:
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False

# Player Movement
keys = pygame.key.get_pressed()

if keys[pygame.K_LEFT]:
player.x -= 5

if keys[pygame.K_RIGHT]:
player.x += 5

if keys[pygame.K_UP]:
player.y -= 5

if keys[pygame.K_DOWN]:
player.y += 5

screen.fill((0, 0, 0))

# Draw the player
pygame.draw.rect(screen, player_color, player)

# Update the screen
pygame.display.flip()

pygame.quit()

Her er den grunnleggende utgangen så langt:

Legg til tekst i spillet ditt

For å vise tekst, start med å laste inn en font ved å bruke pygame.font. Font() klasse. Du kan spesifisere skriftfilen og skriftstørrelsen:

# Load font
font = pygame.font.Font(None, 36)

Med skriften lastet kan du nå gjengi og vise tekst på skjermen. De gjengi() metoden til skriftobjektet tar teksten, kantutjevningsinnstillingen og fargen som argumenter. Du kan da bruke blit() funksjon for å tegne den gjengitte teksten på skjermen.

# Main game loop
while running:
# Draw the player

# Render and display text
text = font.render("Welcome to My Game", True, (255, 255, 255))
screen.blit(text, (width // 2 - text.get_width() // 2, 10))

# Update the screen

Utgangen skal se omtrent slik ut:

Legg til egendefinerte skrifter

Selv om standardfontene fungerer bra, kan bruk av egendefinerte fonter forbedre spillets visuelle appell betydelig. Følg disse trinnene for å legge til en egendefinert skrift.

Først trenger du en egendefinert TrueType-fontfil (TTF) som samsvarer med estetikken til spillet ditt. Det er mange ressurser på nettet hvor du kan finne gratis eller betalte skrifter.

Plasser den nedlastede fontfilen i samme katalog som spillskriptet ditt. Dette sikrer at Pygame kan finne og laste fonten.

# Load custom font
custom_font = pygame.font.Font("custom_font.ttf", 48)

# Main game loop
while running:
# Draw the player

# Render and display custom font text
custom_text = custom_font.render("Custom Font Text", True, (0, 255, 0))
screen.blit(custom_text, (width // 2 - custom_text.get_width() // 2, 100))

# Update the screen

Du bør se tekst gjengitt med den valgte fonten:

Lag teksteffekter

Å legge til teksteffekter i spillet ditt kan forvandle statisk tekst til dynamiske og oppmerksomhetsfengende elementer. En av de enkleste, men effektive teksteffektene er en pulserende effekt.

Den pulserende teksteffekten innebærer at teksten ser ut til å utvide seg og trekke seg sammen rytmisk, noe som gir den en pustende eller pulserende kvalitet. Slik kan du implementere denne effekten:

# Main game loop
while running:
# Draw the player

# Create text with pulsating effect
pulsating_text = custom_font.render("Pulsating Text", True, (0, 0, 255))

# Calculate pulsation factor based on time
pulsation_factor = 1 + abs((pygame.time.get_ticks() % 1000) - 500) / 500

width = int(pulsating_text.get_width() * pulsation_factor)
height = int(pulsating_text.get_height() * pulsation_factor)

# Scale the text based on pulsation factor
pulsating_text = pygame.transform.scale(
pulsating_text,
(width, height)
)

# Calculate text position to center it on the screen
text_x = width // 2 - pulsating_text.get_width() // 2
text_y = 200

screen.blit(pulsating_text, (text_x, text_y))

# Update the screen

Beregn pulseringsfaktoren basert på gjeldende tid ved bruk pygame.time.get_ticcks(). Ved å justere faktoren kontrollerer du graden av ekspansjon og sammentrekning, og oppnår dermed den pulserende effekten.

I tillegg til den pulserende effekten, er det mange andre teksteffekter du kan eksperimentere med for å gi spillet flair:

  1. Skrivemaskineffekt. Vis tekst bokstav for bokstav, simuler lyden av en skrivemaskin.
  2. Blekende tekst. Tok teksten gradvis inn eller ut for å skape en jevn overgang.
  3. Rystende tekst. Få teksten til å riste eller riste litt for å skape en følelse av at det haster eller spenning.
  4. Glødende tekst. Legg til en subtil glødende effekt til teksten for å få den til å skille seg ut i mørkere omgivelser.

For å implementere disse effektene kan du kombinere teknikker som å endre alfakanalen (gjennomsiktighet), endre posisjon og bruke fargeoverganger.

Ikke vær redd for å være kreativ og eksperimentere med kombinasjoner av effekter for å finne den perfekte passformen til spillets stil.

Inkluder tilleggsfunksjoner

Etter hvert som du blir mer komfortabel med egendefinerte fonter og teksteffekter, bør du vurdere å legge til ytterligere forbedringer i spillet ditt.

Interaktive dialoger

Implementer interaktive samtaler med NPC-er ved å bruke stiliserte tekstbokser og egendefinerte fonter. Tillat spillere å velg dialogalternativer som kan påvirke spillets historie eller utfall.

HUD-elementer

Vis viktig spillerinformasjon, helsestreker, resultater og mer ved å bruke visuelt tiltalende teksteffekter. Å designe en godt organisert og estetisk tiltalende HUD kan bidra til en sømløs spillopplevelse.

Animert tekst

Inkluder animasjoner inn i teksteffektene dine for mer dynamisk historiefortelling. Tekst som tones inn og ut, ruller eller endrer farge kan trekke oppmerksomhet til viktige øyeblikk eller hendelser i spillet.

Beste praksis for egendefinerte skrifter og teksteffekter

Når du fordyper deg i riket av egendefinerte fonter og teksteffekter, kan det å holde noen beste fremgangsmåter i bakhodet bidra til å sikre en polert og engasjerende presentasjon.

Konsistens

Oppretthold en konsistent visuell stil på tvers av spillets fonter og teksteffekter. Sammenheng i typografi bidrar til et mer profesjonelt og polert utseende.

Lesbarhet

Prioriter lesbarhet ved valg av fonter. Selv om dekorative skrifter kan være tiltalende, bør de ikke ofre klarheten i teksten. Sørg for at de valgte skriftene er lett lesbare, selv i forskjellige størrelser.

Kontrast

Vær oppmerksom på kontrasten mellom teksten og bakgrunnen. Høy kontrast sikrer at teksten forblir synlig og lett å lese, noe som forbedrer brukeropplevelsen.

Fargepsykologi

Vurder den psykologiske effekten av farge i teksten din. Ulike farger fremkaller forskjellige følelser, så velg farger som stemmer overens med stemningen og tonen i spillet ditt.

Gjør spillene dine mer engasjerende med tilpassede fonter og teksteffekter

Ved å integrere tilpassede fonter og teksteffekter i Pygame-prosjektet ditt, hever du ikke bare den visuelle estetikken til spillet ditt, men gir også spillerne en mer oppslukende og engasjerende opplevelse.

Gjennomtenkt utformet tekst kan formidle følelser, sette tonen i spillet og veilede spillere gjennom reisen deres. Enten det er å vise viktig informasjon, levere vittig dialog eller skape en følelse av undring, er teksteffekter et allsidig verktøy i spillutviklingsarsenalet ditt.