3D Game Development
Principles for 3D game systems.
1. Rendering Pipeline
Stages
1. Vertex Processing → Transform geometry
2. Rasterization → Convert to pixels
3. Fragment Processing → Color pixels
4. Output → To screen
Optimization Principles
| Technique |
Purpose |
| Frustum culling |
Don't render off-screen |
| Occlusion culling |
Don't render hidden |
| LOD |
Less detail at distance |
| Batching |
Combine draw calls |
2. Shader Principles
Shader Types
| Type |
Purpose |
| Vertex |
Position, normals |
| Fragment/Pixel |
Color, lighting |
| Compute |
General computation |
When to Write Custom Shaders
- Special effects (water, fire, portals)
- Stylized rendering (toon, sketch)
- Performance optimization
- Unique visual identity
3. 3D Physics
Collision Shapes
| Shape |
Use Case |
| Box |
Buildings, crates |
| Sphere |
Balls, quick checks |
| Capsule |
Characters |
| Mesh |
Terrain (expensive) |
Principles
- Simple colliders, complex visuals
- Layer-based filtering
- Raycasting for line-of-sight
4. Camera Systems
Camera Types
| Type |
Use |
| Third-person |
Action, adventure |
| First-person |
Immersive, FPS |
| Isometric |
Strategy, RPG |
| Orbital |
Inspection, editors |
Camera Feel
- Smooth following (lerp)
- Collision avoidance
- Look-ahead for movement
- FOV changes for speed
5. Lighting
Light Types
| Type |
Use |
| Directional |
Sun, moon |
| Point |
Lamps, torches |
| Spot |
Flashlight, stage |
| Ambient |
Base illumination |
Performance Consideration
- Real-time shadows are expensive
- Bake when possible
- Shadow cascades for large worlds
6. Level of Detail (LOD)
LOD Strategy
| Distance |
Model |
| Near |
Full detail |
| Medium |
50% triangles |
| Far |
25% or billboard |
7. Anti-Patterns
| ❌ Don't |
✅ Do |
| Mesh colliders everywhere |
Simple shapes |
| Real-time shadows on mobile |
Baked or blob shadows |
| One LOD for all distances |
Distance-based LOD |
| Unoptimized shaders |
Profile and simplify |
Remember: 3D is about illusion. Create the impression of detail, not the detail itself.