mirror of
https://git.coom.tech/drummyfish/small3dlib.git
synced 2024-11-21 20:39:57 +01:00
Update TODO
This commit is contained in:
parent
0deafc2da6
commit
c46f4ad219
1 changed files with 13 additions and 9 deletions
22
todo.txt
22
todo.txt
|
@ -36,10 +36,7 @@ features:
|
||||||
- perspective correction modes:
|
- perspective correction modes:
|
||||||
- none DONE
|
- none DONE
|
||||||
- full DONE
|
- full DONE
|
||||||
- triangle subdivision (each triangle side will be subdivided after reaching
|
- approximate DONE
|
||||||
a defined length, which will be measured by Chebyshev or similarly fast
|
|
||||||
distance).
|
|
||||||
- also offer some approximation function?
|
|
||||||
|
|
||||||
- predefined 3D shapes:
|
- predefined 3D shapes:
|
||||||
- cube DONE
|
- cube DONE
|
||||||
|
@ -52,11 +49,22 @@ features:
|
||||||
specified with a define (S3L_COMPUTE_DEPTH), which may be turned on
|
specified with a define (S3L_COMPUTE_DEPTH), which may be turned on
|
||||||
automatically for some modes (e.g. Z-buffer). It should be computed by the
|
automatically for some modes (e.g. Z-buffer). It should be computed by the
|
||||||
fast lerp and passed in the PixelInfo struct. DONE
|
fast lerp and passed in the PixelInfo struct. DONE
|
||||||
|
|
||||||
- Python tool to convert obj to C array DONE
|
- Python tool to convert obj to C array DONE
|
||||||
- create demos
|
|
||||||
|
- Python tool to convert texture images to C array DONE
|
||||||
|
|
||||||
|
- create demos:
|
||||||
|
- model viewer DONE
|
||||||
|
- game-like demo (GTA-style, Quake style etc.)
|
||||||
|
- offline HQ (lerp texuring, normal mapping, reflections, ...) rendering
|
||||||
|
to PPM image file
|
||||||
|
|
||||||
- drawModel: create an option that would use a cache to not transform the same
|
- drawModel: create an option that would use a cache to not transform the same
|
||||||
point twice
|
point twice
|
||||||
|
|
||||||
- Optional rendering stats (FPS, rendered triangles, ...).
|
- Optional rendering stats (FPS, rendered triangles, ...).
|
||||||
|
|
||||||
- profiling functions for optimization
|
- profiling functions for optimization
|
||||||
|
|
||||||
bugs:
|
bugs:
|
||||||
|
@ -64,10 +72,6 @@ bugs:
|
||||||
- Determining CW/CCW for a triangle is not 100% exact, sometimes leaves holes in
|
- Determining CW/CCW for a triangle is not 100% exact, sometimes leaves holes in
|
||||||
models (some very thin triangles)!
|
models (some very thin triangles)!
|
||||||
|
|
||||||
- With PC = 2, triangles that are at a too sharp angle can get very weird values
|
|
||||||
of barycentric AND DEPTH (which messes up the z-buffer). Seems to only affect
|
|
||||||
triangles facing right (not left).
|
|
||||||
|
|
||||||
- Barycentric coodinates can get wrong in these ways:
|
- Barycentric coodinates can get wrong in these ways:
|
||||||
- Any of them can exceed the range <0,511>
|
- Any of them can exceed the range <0,511>
|
||||||
- b0 + b1 can be > 511, which causes b2 (= 511 - b0 - b1) to be negative!
|
- b0 + b1 can be > 511, which causes b2 (= 511 - b0 - b1) to be negative!
|
||||||
|
|
Loading…
Reference in a new issue