Digital Frontier: Programowanie gier - część 1
-
Upload
leszek-godlewski -
Category
Sports
-
view
200 -
download
2
description
Transcript of Digital Frontier: Programowanie gier - część 1
Programowanie gierCzęść 1 – Kto to: programista gier?
Digital Frontier · 16-12-2012
Leszek [email protected]
www.thefarm51.com
Plan spotkania
www.thefarm51.com
● Część I: Kto to: programista gier?● Programista gier vs „klasyczny”● Przegląd dyscyplin programowania gier
● Część II: Silnik, czyli koń roboczy● Część III: Narzędzia (zbrodni)● Część IV: Rozgrywka, głupcze!● Część V: Back-end, front-end...
Infrastruktura sieciowa
Kto zacz?
www.thefarm51.com
● Farmer od marca 2010● Painkiller HD, Adventurer...
● Entuzjasta open source● Modder gier od ~12 roku życia● Student Politechniki Śląskiej
WGK 2012
Szukamy pracowników!
http://www.skillshot.pl/search/The+Farm+51 www.thefarm51.com
●Fajny zespół!●Fajne projekty!●Fajne miasto!●Polecam! � �
www.thefarm51.com
Programista gier vs „klasyczny”
Kto to jest: programista?
www.thefarm51.com
● Lubi:● Sensowne, techniczne wyzwania● Znać oczekiwania wobec niego● Optymalizować swoją pracę
● Nie lubi:● Braku designu● Marnowania jego czasu● Działu QA � �
A programista gier?
www.thefarm51.com
programista gier!=
programista „klasyczny”(webdev, enterprise itd.)
● Natura i skala problemów● Sposób myślenia● Narzędzia● Interdyscyplinarne środowisko pracy (zespół)
Problemy - „growe” vs „klasyczne”
www.thefarm51.com
Programowanie „klasyczne” Programowanie gierDużo czasu na rozwiązanie problemu
Większość problemów musi być rozwiązana w obrębie 1 klatki animacji (33⅓ ms lub mniej!)
Dużo dostępnej pamięci Mało dostępnej pamięci (zwłaszcza na konsolach)
Priorytet: niezawodność Priorytet: wydajność
Dziedzina problemów – głównie deterministyczna
Dziedzina problemów – głównie niedeterministyczna
Odpowiedzialność przed klientem/przełożonym
Odpowiedzialność przed kolegami z zespołu
Inżynieria oprogramowania
www.thefarm51.com
● IO stosowana wyrywkowo...● UML – rzadkość● Continuous Integration – rzadkość● Testy jednostkowe – rzadkość● Wzorce projektowe – rzadkość
● ...ale jednak● Modne metodologie agile
– Scrum, Kanban...● Kontrola wersji, bugtracking● Code review
www.thefarm51.com
Dyscypliny w programowaniu gier
Struktura współczesnej gry
www.thefarm51.com
EdytorEdytorNarzędziapoziomówNarzędziapoziomów
Narzędziaassetów
Narzędziaassetów
SilnikSilnik
FizykaFizyka
RenderingRendering AudioAudio
SiećSieć
PlatformaPlatforma
WejścieWejście
Infrastrukturasieciowa
Infrastrukturasieciowa
GraGra
UIUI MechanikaMechanika AIAI
Stanowiska programistyczne
www.thefarm51.com
● Engine Programmer/Engineer● Graphics/
Rendering...● Physics...● Platform...● Input...● Audio/Sound...● Tool...
● Network...● Gameplay...● Artificial
Intelligence...● User Interface...● Generalist...● Lead...
Indywidualne specjalności
www.thefarm51.com
rozmiar zespołu
wsz
echs
tron
ność
wiedza
I wszystko to musimy zrobić sami?
www.thefarm51.com
Nie.
● Gotowe silniki● Unity, Unreal Engine/UDK, CryEngine,
Unigine...● Middleware
● OGRE, Renderware, FMOD, Havok, PhysX, Bullet, SpeedTree, Scaleform...
Jaki jest „plan minimum”?
www.thefarm51.com
EdytorEdytorNarzędziapoziomówNarzędziapoziomów
Narzędziaassetów
Narzędziaassetów
SilnikSilnik
FizykaFizyka
RenderingRendering AudioAudio
SiećSieć
PlatformaPlatforma
WejścieWejście
Infrastrukturasieciowa
Infrastrukturasieciowa
GraGra
UIUI MechanikaMechanika AIAI
Jaki jest „plan minimum”?
www.thefarm51.com
EdytorEdytorNarzędziapoziomówNarzędziapoziomów
Narzędziaassetów
Narzędziaassetów
SilnikSilnik
FizykaFizyka
RenderingRendering AudioAudio
SiećSieć
PlatformaPlatforma
WejścieWejście
Infrastrukturasieciowa
Infrastrukturasieciowa
GraGra
UIUI MechanikaMechanika AIAI
Jaki jest „plan minimum”?
www.thefarm51.com
EdytorEdytorNarzędziapoziomówNarzędziapoziomów
Narzędziaassetów
Narzędziaassetów
SilnikSilnik
FizykaFizyka
RenderingRendering AudioAudio
SiećSieć
PlatformaPlatforma
WejścieWejście
Infrastrukturasieciowa
Infrastrukturasieciowa
GraGra
UIUI MechanikaMechanika AIAI
www.thefarm51.com
Pytania?
Dziękuję za uwagę!
Polub nas na Facebooku!http://www.facebook.com/farm51http://www.facebook.com/ProjectAdventurerhttp://www.facebook.com/PainkillerGame
www.thefarm51.com