Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky

Domáce Hardware Siete Programovanie Softvér Otázka Systémy

Ako si vyrobiť hier Použitie Python pre začiatočníkov

Python a jeho slobodný rozvoj herné knižnice , pygame , zvládnuť veľa detailné práce vývoji hry pre vás , čo vám umožní sústrediť sa na herný dizajn . Napriek tomu , Crysis nebol napísaný v deň , takže budete musieť začať , kde videá samotnej hry začal tým , že hru ako " Pong . " To nemusí byť to , čo ste sa dostal do hernej design urobiť , ale to vás naučí základy a nechať si hru a beží rýchlo . Veci , ktoré budete potrebovať
pygame
Zobraziť ďalšie inštrukcie Cestuj 1

Otvorte Idle , predvolené Python IDE z ponuky Štart systému Windows . Kliknite na " Súbor " a " Nové okno . " Ihneď uložte nový súbor a dať mu názov " Ping.py. "
2

si herné prostredie pripravený . Zadajte nasledujúci príkaz do Ping.py súboru : Spojené

import os , sysimport pygamefrom pygame.locals import *

obrazovka = pygame.display.set_mode ( ( 640.480 ) )

tento dovoz z Pythone povely navyše budete musieť napísať hru a vytvorí nové okno pre svoju hru spustiť dovnútra Hit " F5 " pre spustenie programu . Prípadne , kliknite na tlačidlo " Spustiť " a " Spustiť modul " z menu . Obaja budú mať rovnaký výsledok - sa objaví na ploche úplne priehľadné okno . To bude 640 pixelov široký a 480 pixelov vysoký .

A to spadne a dá vám chybové hlásenie celkom rýchlo , pretože aj napriek tomu , že okno bolo vytvorené , nič sa neurobilo s ním .

3

Vytvorte pádlo prehrávača . Pridajte nasledujúci kód do hry hneď pod poslednej časti kódu :

PADDLE_WIDTH = 50PADDLE_HEIGHT = 10p1Paddle = pygame.Rect ( 10 , 430 , PADDLE_WIDTH , PADDLE_HEIGHT )

PADDLE_COLOR = pygame.color . Color ( " červený " ) SCREEN_COLOR = pygame.color.Color ( " čierna " ) ;

hovorí počítaču , koľko pixelov a vysoká pádlo hráč by mal byť , rovnako ako to , čo farba by mala byť . To tiež hovorí Pythone , že chcete , aby vaše pádlo byť 10 pixelov od ľavej strane obrazovky a 430 bodov z hornej časti obrazovky . Nezabudnite , že obrazovka je 640 pixelov široký a 480 pixelov vysoký , takže pádlo bude na ľavej strane obrazovky , v blízkosti dna .

Tiež definuje , že obrazovka sám bude mať čiernu farbu .
4

Vytvorte puk . Zadajte nasledujúci príkaz do hry :

puckSpeedX = 1puckSpeedY = 1

PUCK_COLOR = pygame.color.Color ( " zelených " ) puk = pygame.Rect ( 320,240,10,10 )

hovorí počítaču , akú farbu bude puk a kde by mal byť umiestnený na obrazovke . V tomto prípade to bude 320 pixelov od ľavého a 240 bodov z vrcholu . Bude tiež 10 pixelov široký a 10 pixelov vysoké .

Konečne , pretože puk pohyby jeho vlastnej vôle , je potrebné rýchlosť . Často v 2D hry , ako je " Pong " je jednoduchšie rozdeliť na rýchlosti , ako obrovský objekt sa pohybuje vo vodorovnom smere , a ako rýchlo sa pohybuje vo zvislom smere . V tomto prípade , sa puk pohybovať vo vodorovnom smere ( X ) pri rýchlosti 1 a budú pohybovať v zvislom smere ( Y ) pri rýchlosti 1 aj
5

Nastavte herné slučku zadaním : .

je síce pravda : p1Paddle.left = pygame.mouse.get_pos ( ) [ 0 ] puck.left = puck.left + puckSpeedXpuck.top = puck.top + puckSpeedYscreen.fill ( SCREEN_COLOR ) ; screen.fill ( PADDLE_COLOR , p1Paddle ) screen.fill ( PUCK_COLOR , puk ) pygame.time.delay ( 10 )

Chystáte sa riadok po riadku , " pričom platí " príkaz hovorí hru , aby beh na dobu neurčitú , alebo kým používateľ narazí " tlačidlo Zavrieť " na jeho okno .

Ďalej hovorí počítaču , že pádlo hráč by mal byť na rovnakom mieste na obrazovke , vodorovne , než ukazovateľ myši . Tak môže hráč sledovať puk pohybom svojej myši . Puk sám sa pohybuje pridaním jeho X a Y rýchlosti jeho pozíciu na obrazovke . Potom sa kreslí pozadie obrazovky , pádlo prehrávače a puk , v tomto poradí . Hit " F5 " pre spustenie hry .

Všimnite si nejaké problémy ? Žiadna z vašich grafiky sú vypracované na obrazovku . Takmer všetky moderné hry použiť trik s názvom " double buffering " kresliť na obrazovku . To znamená , že grafika sú vypracované do pamäte a potom vyvodiť , zrazu na obrazovku neskôr . Bez dvojité ukladanie do vyrovnávacej pamäte , grafika hry majú vo zvyku blikania . Chcete povedať , Python , aby skutočne napísať grafiky na obrazovke počítača , alebo " flip vyrovnávacej pamäte , " pridajte nasledujúci riadok do hry :

pygame.display.flip ( ) ;

Stlačte " F5 " pre spustenie hry . Je tu stále dosť veľká chyba v hre : puk práve letí pádlo a mimo obrazovku , ako by to tam nebolo
6

Pridať detekciu kolízií na puk .. To môže vyžadovať trochu osviežiť prvák algebry . Pridať tento kód do hernej slučky :

ak puck.colliderect ( p1Paddle ) : puckSpeedY = puckSpeedY * -1

ak puck.top < 0 alebo puck.bottom > 480 : puckSpeedY = puckSpeedY * -1

ak puck.left < 0 alebo puck.right > 640 : puckSpeedX = puckSpeedX * -1

Chystáte sa jeden po druhom , zvážiť , čo sa tu deje . Je-li puk zrazí s pádlom hráča , potom je to rýchlosť Y sa vynásobí mínus - 1 . Takže , ak je rýchlosť Y ( pamätať , to znamená , že vertikálne rýchlosť ) bolo 1 , je teraz mínus - 1 . Tak to sa pohybuje v presne opačnom smere zvislom smere . To isté sa stane , keď narazí puk do hornej alebo dolnej časti obrazovky . A konečne , v prípade , že narazia puk do ľavej alebo pravej strane obrazovky , jeho rýchlosť X ( alebo jej horizontálna rýchlosť ) sa násobí mínus - 1 . Hit " F5 " , spustiť hru a vidieť efekt .

Najnovšie články

Copyright © počítačové znalosti Všetky práva vyhradené