User Tools

Site Tools


f3ddkr

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
f3ddkr [2022/05/20 14:43]
David typo
f3ddkr [2022/11/24 16:49]
David [Changes from Fast3D]
Line 9: Line 9:
   - The commands [[super_mario_64:​fast3d_display_list_commands#​beg_culldl|G_CULLDL]],​ [[super_mario_64:​fast3d_display_list_commands#​bfg_tri1|G_TRI1]],​ and [[super_mario_64:​fast3d_display_list_commands#​bdg_popmtx|G_POPMTX]] were removed, and are now NOPS (No operations).   - The commands [[super_mario_64:​fast3d_display_list_commands#​beg_culldl|G_CULLDL]],​ [[super_mario_64:​fast3d_display_list_commands#​bfg_tri1|G_TRI1]],​ and [[super_mario_64:​fast3d_display_list_commands#​bdg_popmtx|G_POPMTX]] were removed, and are now NOPS (No operations).
   - Triangles are drawn in batches; up to 16 triangles per batch.   - Triangles are drawn in batches; up to 16 triangles per batch.
-  - The number of vertices was increased to 24.+  - The number of vertices was increased ​from 16 to 24.
   - The vertex structure is smaller, being only 10 bytes per vertex instead of 16.   - The vertex structure is smaller, being only 10 bytes per vertex instead of 16.
   - UV coordinates are per-face instead of per-vertex.   - UV coordinates are per-face instead of per-vertex.
-  - The lighting overlay was removed. Dynamic lighting & environment mapping are done on the CPU. +  - The lighting overlay was removed. Dynamic lighting & environment mapping ​for objects ​are calculated ​on the CPU. 
-  - The matrix stack has been removed; ​fixed indices ​are used instead.+  - The matrix stack has been removed; ​there are now only 3 matrices at fixed offsets. 
 +  - The number of segment banks has been reduced from 16 to 8 
 +  - Mipmapping cannot be done, due to some changes in the triangle setup routine.
  
 ---- ----
Line 21: Line 23:
 ==== Vertex (10 bytes) ==== ==== Vertex (10 bytes) ====
  
-''​[<​color red>XX XX</​color>​] [<color green>YY YY</​color>​] [<color cyan>ZZ ZZ</​color>​] [<color pink>XR</​color>​] [<color lightgreen>​YG</​color>​] [<color lightblue>​ZB</​color>​] [<color lightgray>​AA</​color>​]''​+''​[<​color red>XX XX</​color>​] [<color green>YY YY</​color>​] [<color cyan>ZZ ZZ</​color>​] [<color pink>RR</​color>​] [<color lightgreen>​GG</​color>​] [<color lightblue>​BB</​color>​] [<color lightgray>​AA</​color>​]''​
  
 | <color red>​XXXX</​color>​ |    short    | Position on X axis | | <color red>​XXXX</​color>​ |    short    | Position on X axis |
 | <color green>​YYYY</​color>​ |    short    | Position on Y axis | | <color green>​YYYY</​color>​ |    short    | Position on Y axis |
 | <color cyan>​ZZZZ</​color>​ |    short    | Position on Z axis | | <color cyan>​ZZZZ</​color>​ |    short    | Position on Z axis |
-| <color pink>XR</​color>​ | byte or ubyte | X unit vector of normal or red color | +| <color pink>RR</​color>​ |    ubyte    Red color channel ​
-| <color lightgreen>​YG</​color>​ | byte or ubyte | Y unit vector of normal or green color | +| <color lightgreen>​GG</​color>​ |    ubyte    Green color channel ​
-| <color lightblue>​ZB</​color>​ | byte or ubyte | Z unit vector of normal or blue color |+| <color lightblue>​BB</​color>​ |    ubyte    Blue color channel ​|
 | <color lightgray>​AA</​color>​ |     ​ubyte ​    | Alpha (Transparency) | | <color lightgray>​AA</​color>​ |     ​ubyte ​    | Alpha (Transparency) |
  
Line 61: Line 63:
  
 ==== 04: G_VTX ==== ==== 04: G_VTX ====
-Loads up to 32 vertices from a segment address.+Loads up to 24 vertices from a segment address.
  
 ''​04 [<color pink>​N</​color><​color lightgreen>​O</​color>​] [<color lightblue>​II II</​color>​] [<color #​AA88DD>​SS SS SS SS</​color>​]''​ ''​04 [<color pink>​N</​color><​color lightgreen>​O</​color>​] [<color lightblue>​II II</​color>​] [<color #​AA88DD>​SS SS SS SS</​color>​]''​
Line 84: Line 86:
  
 ==== 07: G_DMADL ==== ==== 07: G_DMADL ====
-DMA'​s ​a fixed-size display list from RDRAM and outputs the commands directly to the RDP. This is used by the game engine to load textures for models. ​+DMAs a fixed-size display list from RDRAM and outputs the commands directly to the RDP. This is used by the game engine to load textures for models. ​
  
 ''​07 [<color pink>​NN</​color>​] [<color lightblue>​LL LL</​color>​] [<color #​AA88DD>​SS SS SS SS</​color>​]''​ ''​07 [<color pink>​NN</​color>​] [<color lightblue>​LL LL</​color>​] [<color #​AA88DD>​SS SS SS SS</​color>​]''​
f3ddkr.txt · Last modified: 2022/11/24 16:49 by David