comparison README.md @ 663:af9ab61aa87e

add: documentation
author Sam <sam@basx.dev>
date Mon, 08 May 2023 00:48:11 +0700
parents 8599b84f0563
children b5d9410a8184
comparison
equal deleted inserted replaced
662:9848403320f0 663:af9ab61aa87e
30 - [x] Per-instance vertex attributes (required to be able to draw scene graph) 30 - [x] Per-instance vertex attributes (required to be able to draw scene graph)
31 - [x] Fixed framerate 31 - [x] Fixed framerate
32 - [x] Instanced drawing (currently can use instance attributes, but we only support a single instance per draw call) 32 - [x] Instanced drawing (currently can use instance attributes, but we only support a single instance per draw call)
33 - [x] Textures 33 - [x] Textures
34 - [ ] Multisampling 34 - [ ] Multisampling
35 - [ ] Materials (vertices with material indices)
35 - [ ] Viewport scaling (e.g. framebuffer resolution != window resolution 36 - [ ] Viewport scaling (e.g. framebuffer resolution != window resolution
36 - [ ] Allow different shaders (ie pipelines) for different meshes 37 - [ ] Allow different shaders (ie pipelines) for different meshes
37 38
38 Required for 3D rendering: 39 Required for 3D rendering:
39 40
103 - Telemetry: telemetry.nim (wip) 104 - Telemetry: telemetry.nim (wip)
104 - Resources/mods: resources.nim (wip) 105 - Resources/mods: resources.nim (wip)
105 106
106 Got you: Everything is wip, but (wip) here means work has not started yet. 107 Got you: Everything is wip, but (wip) here means work has not started yet.
107 108
109 Handling of assets
110 ------------------
111
112 A short description how I want to handle assets.
113
114 Support for file formats (super limited, no external dependencies, uses quite a bit of space, hoping for zip):
115
116 - Images: BMP
117 - Audio: AU
118 - Mesh: OBJ + MTL
119
120 In-memory layout of assets (everything needs to be converted to those while loading):
121
122 - Images: 4 channel with each uint8 = 32 bit RGBA, little endian (R is low bits, A is high bits)
123 - Audio: 2 Channel 16 bit signed little endian, 44100Hz
124 - Meshes: non-interleaved, lists of values for each vertex, one list per attribute
125
108 Configuration 126 Configuration
109 ------------- 127 -------------
110 128
111 Or: How to organize s**t that is not code 129 Or: How to organize s**t that is not code
112 130