Dajte svojoj igri nešto osobnosti s tekstom koji odražava njezin dizajn i žanr.

Estetika igra ključnu ulogu u razvoju igre. Mali detalji mogu utjecati na to koliko dobro vaša igra privlači pažnju igrača i uranja ih u svijet igre. Prilagođeni fontovi i tekstualni efekti omogućuju vam da unesete osobnost i stil u sučelje, dijalog i HUD elemente svoje igre.

Bilo da dizajnirate avanturističku igru, puzzle igru ​​ili bilo koju drugu, prilagođeni fontovi i tekstualni efekti mogu transformirati vaš projekt iz osnovnog u zadivljujuće.

Napravite jednostavnu 2D igru

Prije nego što uronite u svijet prilagođenih fontova i tekstualnih efekata, stvorite osnovni temelj 2D igre. Za ovaj primjer, izradite igru ​​s kretanjem igrača pomoću značajki Pygame.

Kôd korišten u ovom članku dostupan je u ovom GitHub spremište i besplatan je za korištenje pod MIT licencom.

Za početak postavite prozor igre. Pygame pruža pygame.display.set_mode() funkciju za stvaranje prozora koji prikazuje vašu igru. Također možete postaviti naslov za prozor koristeći 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")

Sada inicijalizirajte objekt igrača pomoću pygame. Rect() razreda. Ova klasa predstavlja pravokutni oblik, koji možete koristiti za predstavljanje likova i objekata u 2D igrama.

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

Glavna petlja igre srce je vaše igre, gdje se odvija sva radnja. To kontinuirano provjerava unos igrača, ažurira stanje igre i ponovno crta zaslon.

# 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()

Evo osnovnog rezultata do sada:

Dodajte tekst svojoj igri

Za prikaz teksta, počnite s učitavanjem fonta pomoću pygame.font. Font() razreda. Možete odrediti datoteku fonta i veličinu fonta:

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

S učitanim fontom sada možete renderirati i prikazati tekst na zaslonu. The render() metoda objekta fonta uzima tekst, antialiasing postavku i boju kao argumente. Zatim možete koristiti blit() funkciju za crtanje prikazanog teksta na zaslonu.

# 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

Izlaz bi trebao izgledati otprilike ovako:

Dodajte prilagođene fontove

Iako zadani fontovi dobro funkcioniraju, upotreba prilagođenih fontova može značajno poboljšati vizualnu privlačnost vaše igre. Za dodavanje prilagođenog fonta slijedite ove korake.

Prvo, potrebna vam je prilagođena TrueType datoteka fonta (TTF) koja odgovara estetici vaše igre. Postoji mnogo izvora na internetu gdje možete pronaći besplatne ili plaćene fontove.

Postavite preuzetu datoteku fonta u isti direktorij u kojem se nalazi skripta vaše igre. Ovo osigurava da Pygame može locirati i učitati font.

# 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

Trebali biste vidjeti tekst prikazan u odabranom fontu:

Stvorite tekstualne efekte

Dodavanje tekstualnih efekata vašoj igri može transformirati statični tekst u dinamične elemente koji privlače pozornost. Jedan od najjednostavnijih, ali učinkovitih tekstualnih efekata je pulsirajući efekt.

Učinak pulsirajućeg teksta uključuje dojam da se tekst ritmički širi i skuplja, dajući mu kvalitetu disanja ili pulsiranja. Evo kako možete implementirati ovaj učinak:

# 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

Izračunajte faktor pulsiranja na temelju trenutnog vremena pygame.time.get_ticks(). Podešavanjem faktora kontrolirate stupanj širenja i skupljanja čime se postiže pulsirajući učinak.

Osim pulsirajućeg efekta, postoji mnogo drugih tekstualnih efekata s kojima možete eksperimentirati kako biste svojoj igri dodali štih:

  1. Efekt pisaćeg stroja. Prikaz teksta slovo po slovo, simulirajući zvuk pisaćeg stroja.
  2. Tekst koji blijedi. Postupno izblijedite ili smanjite tekst kako biste stvorili glatki prijelaz.
  3. Tekst koji se trese. Neka tekst malo podrhtava ili se trese kako bi se stvorio osjećaj hitnosti ili uzbuđenja.
  4. Svjetleći tekst. Dodajte suptilni sjajni efekt tekstu kako bi se istaknuo u tamnijim okruženjima.

Da biste implementirali ove efekte, možete kombinirati tehnike kao što su mijenjanje alfa kanala (transparentnost), mijenjanje položaja i primjena prijelaza boja.

Nemojte se bojati biti kreativni i eksperimentirati s kombinacijama efekata kako biste pronašli ono što savršeno odgovara stilu vaše igre.

Uključite dodatne značajke

Kako se budete osjećali ugodnije s prilagođenim fontovima i tekstualnim efektima, razmislite o dodavanju dodatnih poboljšanja u svoju igru.

Interaktivni dijalozi

Implementirajte interaktivne razgovore s NPC-ima koristeći stilizirane tekstualne okvire i prilagođene fontove. Dopustite igračima da odaberite mogućnosti dijaloga koji mogu utjecati na priču ili ishod igre.

HUD elementi

Prikažite bitne informacije o igraču, trake zdravlja, rezultate i više koristeći vizualno privlačne tekstualne efekte. Dizajniranje dobro organiziranog i estetski ugodnog HUD-a može pridonijeti besprijekornom iskustvu igranja.

Animirani tekst

Uključite animacije u tekstualne efekte za dinamičnije pripovijedanje. Tekst koji blijedi, pomiče se ili mijenja boju može privući pozornost na važne trenutke ili događaje u igri.

Najbolji primjeri iz prakse za prilagođene fontove i tekstualne efekte

Dok zaranjate u područje prilagođenih fontova i tekstualnih efekata, imajući na umu nekoliko najboljih praksi može pomoći u osiguravanju dotjerane i zanimljive prezentacije.

Dosljednost

Održavajte dosljedan vizualni stil u svim fontovima i tekstualnim efektima vaše igre. Kohezivnost u tipografiji doprinosi profesionalnijem i uglađenijem izgledu.

Čitljivost

Dajte prednost čitljivosti pri odabiru fontova. Iako ukrasni fontovi mogu biti privlačni, oni ne bi trebali žrtvovati jasnoću teksta. Osigurajte da su odabrani fontovi lako čitljivi, čak i u različitim veličinama.

Kontrast

Obratite pozornost na kontrast između teksta i pozadine. Visoki kontrast osigurava da tekst ostaje vidljiv i lak za čitanje, poboljšavajući korisničko iskustvo.

Psihologija boja

Razmotrite psihološki utjecaj boje u vašem tekstu. Različite boje izazivaju različite emocije, stoga odaberite boje koje odgovaraju raspoloženju i tonu vaše igre.

Učinite svoje igre privlačnijim s prilagođenim fontovima i tekstualnim efektima

Integriranjem prilagođenih fontova i tekstualnih efekata u vaš Pygame projekt, ne samo da podižete vizualnu estetiku svoje igre, već i igračima pružate impresivnije i privlačnije iskustvo.

Promišljeno dizajniran tekst može prenijeti emocije, postaviti ton igre i voditi igrače kroz njihovo putovanje. Bilo da se radi o prikazu ključnih informacija, isporuci duhovitih dijaloga ili stvaranju osjećaja čuda, tekstualni efekti svestrani su alat u vašem arsenalu za razvoj igara.