-
Notifications
You must be signed in to change notification settings - Fork 0
Home
Vinicius Almada edited this page Sep 14, 2022
·
1 revision
Welcome to the Pepper wiki!
Two sides
Renderer (API/platform agnostic) │ Render API (API/platform specific)
- 2D/3D Renderer │ * Render context
- Forward, deferred, etc. │ * Swap chain
- Scene graph │ * Framebuffer
- Sorting │ * Vertex buffer
- Culling │ * Index Buffer
- Materials │ * Texture
- LOD │ * Shader
- Animation │ * States
- Camera │ * Pipelines
- VFX │ * Render passes
- PostFX │
- Other things │
- (eg. reflections, occlusion) │
Where do we start?
- We're going to start with OpenGL
- Simplest, easiest API (although requires stronger design from our side)
- Step 1: build Render API
- Step 2: build Renderer
- Note: these steps have overlap and mostly aren't dependent
- After that we have a base to render anything we want
- In the future (TBD), we will implement other APIs
Renderer2D::DrawCircle(c,r) Renderer2D::DrawRect(p,s,c,t)
-Batch rendering 100k sprits, 60 fps, with textures