Dijelovi engine-a
Dijelovi okvirno
- Grafika
- 3D model/Teksture
- Animacija
- Shaderi
- Teren
- Cinematics
- Particles
- Audio
- Pozicioniranje izvora zvuka(3D zvuk)
- Umjetna inteligencija
- Pathfinding
- Behaviour trees
- Fizika
- Otkrivanje sudara među objektima
- "Ragdoll" fizika
- Fizika za vozila
- Dinamičko uništavanje objekata
- Umrežavanje
- Općenito
- Network state updates
- RPC
- Dead reckoning
- Autoritativni server
- Općenito
- Skriptni jezici
- Optimizacije
- Culling
- Frustum culling
- Portal culling
- Occlusion culling
- Particioniranje prostora
- Oct/Quad -tree
- BSP tree
- Level of detail
- Upravljanje memorijom/resursima
- Streaming
- Multi-threading
- Culling
Animacija
- Skinning animacija
- Kosti i kostur pričvršćeni na “skin”
- Skin – vanjski dio modela
- Samo kosti se animiraju, a sa njima se kreće i skin
- Kosti i kostur pričvršćeni na “skin”
- Vertex blending/Morphing
- Interpolacija između dva ista modela u različitim pozicija
- Tweening

Shaderi
- Programabilne jedinice na grafičkoj kartici
- Napredak naprama Fixed function pipeline
- Shader jezici: Assembly, HLSL, Cg, GLSL
- Napredak naprama Fixed function pipeline
- Vertex, Geometry, Pixel Shader
- Danas ih koriste sve bolje igre za iscrtavanje skoro svih objekata
- Koriste se za osvjetljenje, sjene, refleksiju, izgled vode, blur, filtre slike, itd.
Normal mapping
Sjene
Motion blur
Depth of field
Teren
- Heightmap – najčešće korišten način
- Nemoguće kreiranje “rupa” u terenu (špilje i sl.)
- Nemoguće kreiranje “rupa” u terenu (špilje i sl.)
- Voxel terrain – novija metoda
- Veliki objekt = velik broj poligona
- Continous level of detail
Heightmap

Voxel
CLOD

Pathfinding
- A* algoritam
- Koristi graf da bi pronašao put
- Koristi graf da bi pronašao put
- Graf
- NavMesh
- Node network
- NavMesh
NavMesh

Node network

A*

Dinamičko uništavanje objekata


Culling
Frustum culling
- Najosnovnija metoda
- Sve što nije u vidokrugu kamere ne iscrtava se
Portal culling
- Odlično za unutrašnjost zgrada

Occlusion culling

Level of detail
- Smanjivanje kvalitete objekta sa većom udaljenosti od kamere
- Smanjivanje broja poligona
- Smanjivanje rezolucije teksture
- Jeftiniji shaderi na većoj udaljenosti
- Smanjivanje broja poligona
Smanjenje broja poligona


