Changes

Jump to navigation Jump to search
no edit summary
Line 2: Line 2:     
==Writing to XF registers==
 
==Writing to XF registers==
   
Writing to XF registers is done by writing values to the FIFO, as shown below:
 
Writing to XF registers is done by writing values to the FIFO, as shown below:
   Line 19: Line 18:  
* write the values to write to each register (32-bit each)
 
* write the values to write to each register (32-bit each)
 
Where n is the number of registers to write.
 
Where n is the number of registers to write.
 +
    
==XF registers==
 
==XF registers==
  −
   
===XF viewport registers===
 
===XF viewport registers===
   Line 48: Line 46:       −
{{regsimple | GX_XF_VIEWPORT_F | addr=0x101F | bits=32 | access = R/W}}
+
{{regsimple | GX_XF_VIEWPORT_FP | addr=0x101F | bits=32 | access = R/W}}
 
* 0x101F: This register defines the far plane of the viewport.
 
* 0x101F: This register defines the far plane of the viewport.
   Line 57: Line 55:  
* GX_XF_VIEWPORT_X1 = (viewport_x + (viewport_width / 2)) + 342
 
* GX_XF_VIEWPORT_X1 = (viewport_x + (viewport_width / 2)) + 342
 
* GX_XF_VIEWPORT_Y1 = (viewport_y + (viewport_height / 2)) + 342
 
* GX_XF_VIEWPORT_Y1 = (viewport_y + (viewport_height / 2)) + 342
* GX_XF_VIEWPORT_F = (viewport_farplane * 16777215)
+
* GX_XF_VIEWPORT_FP = (viewport_farplane * 16777215)
 
* GX_XF_VIEWPORT_Z = (viewport_farplane - viewport_nearplane) * 16777215
 
* GX_XF_VIEWPORT_Z = (viewport_farplane - viewport_nearplane) * 16777215
''Note: These formulas are taken from the libogc fucntion GX_SetViewportJitter().''
+
''Note: These formulas are taken from the libogc function GX_SetViewportJitter().''
 +
 
 +
GX_XF_VIEWPORT_FP and GX_XF_VIEWPORT_Z are 24-bit fixed-point values ranging between 0 and 16777215. These values respectively represent 0.0 and 1.0 in floating-point.
 +
All the other viewport registers are 32-bit floating-point values.
55

edits

Navigation menu