Graphics Sample Demos

Location

$TwlSDK/build/demos/gx/UnitTours

All of the graphics sample demos use DEMO.h and libDEMO.a, which are found in $TwlSDK/build/demos/gx/UnitTours/DEMOLib.

Compilation

Move to the $TwlSDK/build/demos/gx/UnitTours directory and enter:

% make

 The SRL executable file and the NEF or TEF files with binary information are created in $TwlSDK/build/demos/gx/UnitTours/(sample name)/bin/(platform)/(target)/.

For example:

$TwlSDK/build/demos/gx/UnitTours/2D_Oam_1/bin/ARM9-TS/Release/main.srl

will be the executable file for the 2D_Oam_1 demo.

Execution

For NITRO ROMs:

If using the Ensata emulator:

If using IS-NITRO-DEBUGGER:

If using IS-TWL-DEBUGGER:

For TWL/NITRO HYBRID ROMs:

If using IS-NITRO-DEBUGGER:

If using IS-TWL-DEBUGGER:

For TWL LIMITED ROMs:

If using IS-TWL-DEBUGGER:

Description

BG Samples

Name Directories Operation
2D_CharBg_1 demos Displays BG in text mode.
2D_CharBg_2 demos Displays BG in affine mode. You can rotate the screen with key operations.
2D_CharBg_3 demos Displays BG in affine mode. You can scale the screen with key operations.
2D_CharBg_4 demos Sets an offset to BG. You can scroll the screen with key operations.
2D_CharBg_5 demos Flips each BG character. You can flip each screen character with key operations.
2D_CharBg_6 demos Applies a mosaic to BG. You can change the size of the mosaic with key operations.
2D_CharBg_7 demos Alpha blends 2 BGs. You can adjust the blending coefficient with key operations.
2D_CharBg_8 demos Displays 2 windows. You can change window position and size with key operations.
2D_CharBg_9 demos Sets BG brightness. You can change brightness with key operations.
2D_CharBg_256_16 demos Displays a screen using the affine extension BG, 256 color x 16 palette.
2D_CharBg_256BMP demos Displays a screen using the affine-expanded, 256-color, bit-mapped BG.
2D_CharBg_Direct demos Displays a screen using the affine extension BG, direct color bit mapped BG.
2D_BmpBg_Vram demos Displays a screen using VRAM display mode.
2D_BmpBg_MainRam demos Displays a screen using main memory display mode.
2D_CharBg_BankEx demos Displays screen, directly specifying BG-VRAM with GX_SetBankForBGEx.

OBJ Samples

Name Directories Operation
2D_Oam_1 demos Displays an OBJ.
2D_Oam_2 demos Rotates an OBJ using affine mode. You can rotate an OBJ with key operations.
2D_Oam_3 demos Scales an OBJ using affine doubling mode. You can enlarge and reduce an OBJ with key operations.
2D_Oam_4 demos Flips an OBJ. You can flip an OBJ with key operations.
2D_Oam_5 demos Applies a mosaic to an OBJ. You can change the size of the mosaic with key operations.
2D_Oam_256_16 demos Displays a 256 color x 16 extended palette OBJ.
2D_Oam_Direct demos Displays a 2D mapping bit mapped OBJ.
2D_Oam_Bmp1D demos Displays a 1D mapping bitmapped OBJ.
2D_Oam_Char1D demos Displays a 1D mapping character OBJ.
2D_Oam_Translucent demos Displays a translucent OBJ. Key operations can change the translucent OBJ's blending factor.
2D_Oam_OBJWindow demos Displays a background BG through a circular OBJ window. Key operations can move the OBJ window.

3D Samples

Name Directories Operation
3D_Pol_OneTri demos Displays one triangle on the screen.
3D_Pol_Simple demos Displays a rotating cube without light and vertex color.
3D_Pol_Simple2 demos Displays a cube and uses the G3_VtxXY, G3_VtxXZ, and G3_VtxYZ functions.
3D_Pol_Simple3 demos Displays a cube and uses the G3_Vtx10 function.
3D_Pol_Color demos Displays a cube using the G3_Color function to set vertex color.
3D_Pol_Light demos Displays a cube using the G3_Normal function to set normal vectors.
3D_Pol_LightColor demos Shows the difference in the display when changing the order of the G3_Color and the G3_Normal functions.
3D_Pol_Tex4_Plett demos Applies a 4-color palette texture to a cube and displays it.
3D_Pol_Tex16_Plett demos Applies a 16-color palette texture to a cube and displays it.
3D_Pol_Tex256_Plett demos Applies a 256-color palette texture to a cube and displays it.
3D_Pol_Tex32768 demos Applies a direct texture to a cube and displays it.
3D_Pol_Tex4x4 demos Applies a 4x4 texel compressed texture to a cube and displays it.
3D_Pol_Tex_Alpha demos Applies a translucent texture to a cube and displays it.
3D_Pol_Tex_Decal demos Applies a texture in decal mode to a cube and displays it.
3D_Pol_Toon demos Displays a chair using toon shading.
3D_Pol_High_Light demos Displays a chair using highlight shading.
3D_Pol_TexSRT demos Specifies a TexCoord source with the G3_TexImageParam function, and then scales, rotates, and translates the texture.
3D_Pol_Env_Mapping demos Specifies a Normal source with the G3_TexImageParam function and then displays an environment map.
3D_Pol_Vertex_Source demos Specifies a Vertex source with the G3_TexImageParam function and then displays a projection map.
3D_Pol_Translucent demos Displays translucent polygons.
3D_Pol_Transparent demos Displays transparent polygons (wireframe display).
3D_Shininess demos Sets a specular reflection brightness table, and converts specular reflection brightness.
3D_Fog demos Moves a cube in a space to which fog has been applied.
3D_Edge_Marking demos Performs edge marking of a different color on each of three cubes, and then displays them.
3D_Alpha_Test demos Performs an alpha test. Although two cubes are drawn, only one is displayed.
3D_Command_Pack demos DMA transfers a previously prepared command list (display list), and displays a model.
3D_Pol_MakeDL demos Dynamically generates a command list (display list) in the program and displays a model.
3D_Pol_Split demos Displays a cube on both screens by switching output display during H-Blanks.
3D_PolAttr_1Dot demos Uses MISC_DISP_1DOT in the G3_PolygonAttr function to control the display of 1-dot polygons. Key operations toggle the display of 1-dot polygons ON/OFF.
3D_PolAttr_DpthTest demos Uses MISC_DEPTHTEST_DECAL in the G3_PolygonAttr function to control the display of decal polygons. Key operations toggle the effect ON/OFF.
3D_PolAttr_DpthUpdate demos Uses MISC_XLU_DEPTH_UPDATE in the G3_PolygonAttr function to update the depth buffer used when rendering translucent polygons. Key operations toggle the effect ON/OFF.
3D_PolAttr_FARClip demos Clips polygons that intersect the FAR plane defined in the G3_PolygonAttr function. Key operations move the far plane and toggle the effect ON/OFF.
3D_Shadow_Pol demos Displays a shadow using shadow polygons.
3D_BoxTest demos Performs a box test. Switches between normal rendering and wireframe rendering by determining whether the rotating, moving sphere touches the surface of a cube.
AntiAlias demos Antialiases polygons.
FlipRepeat demos Sets flip and repeat for a texture and displays it. Key operations change the settings.
ClearColor demos Sets the clear color and sets the inital value for the color buffer.
ClearImage demos Uses a clear image to set an image in the clear color buffer's initial value, and displays it.
ClearDepthOnly demos Without setting VRAM to the clear color image slot, uses only the clear depth image. At this time, all clear colors are initialized to 0.
CurrentMtx demos Acquires the current clip matrix and displays it in debug output.
PosVecTest demos Acquires and displays in debug output both the position coordinates transformed by the current clip coordinate matrix and the vectors transformed by the current direction vector matrix.
LinesOver demos Detects lines over and displays in debug output.
RamOverFlow demos Detects polygon list RAM and vertex list RAM overflow and displays them in debug output.
ViewPort demos Sets and displays the viewport. Key operations can change the viewport size and position.

Samples Using Screen Effects

Name Directories Operation
MasterBright demos Displays a screen using the special effect brightness up/down. Key operations can change the screen brightness.
Capture demos Displays a motion blur effect using the screen capture feature.
Window demos Changes the shape of the window display using H-blank interrupts.
Window_HDMA demos Changes the shape of the window display using H-blank auto-start DMA.

Samples Using the Sub Graphics Engine and the Bottom LCD

Name Directories Operation
Sub_CharBg_1 demos The same operation as for 2D_CharBg_1 is carried out for the sub graphics engine and displayed on the Bottom LCD.
Sub_CharBg_2 demos The same operation as for 2D_CharBg_2 is carried out for the sub graphics engine and displayed on the Bottom LCD.
Sub_CharBg_3 demos The same operation as for 2D_CharBg_3 is carried out for the sub graphics engine and displayed on the Bottom LCD.
Sub_CharBg_4 demos The same operation as for 2D_CharBg_4 is carried out for the sub graphics engine and displayed on the Bottom LCD.
Sub_CharBg_5 demos The same operation as for 2D_CharBg_5 is carried out for the sub graphics engine and displayed on the Bottom LCD.
Sub_CharBg_6 demos The same operation as for 2D_CharBg_6 is carried out for the sub graphics engine and displayed on the Bottom LCD.
Sub_CharBg_7 demos The same operation as for 2D_CharBg_7 is carried out for the sub graphics engine and displayed on the Bottom LCD.
Sub_CharBg_8 demos The same operation as for 2D_CharBg_8 is carried out for the sub graphics engine and displayed on the Bottom LCD.
Sub_CharBg_9 demos The same operation as for 2D_CharBg_9 is carried out for the sub graphics engine and displayed on the Bottom LCD.
Sub_Oam_1 demos The same operation as for 2D_Oam_1 is carried out for the sub graphics engine and displayed on the Bottom LCD.
Sub_Oam_2 demos The same operation as for 2D_Oam_2 is carried out for the sub graphics engine and displayed on the Bottom LCD.
Sub_Oam_3 demos The same operation as for 2D_Oam_3 is carried out for the sub graphics engine and displayed on the Bottom LCD.
Sub_Oam_4 demos The same operation as for 2D_Oam_4 is carried out for the sub graphics engine and displayed on the Bottom LCD.
Sub_Oam_5 demos The same operation as for 2D_Oam_5 is carried out for the sub graphics engine and displayed on the Bottom LCD.
Sub_Double3D demos The display of 3D on both screens is mimicked by using capture.

Operation

The 3D_Pol_Transparent demo will not run properly on Ensata.

See Also

Graphics Function List

Revision History

2008/07/11 Changed descriptions to support TWL.
2007/02/23 Removed the VCount demo.
2006/02/27 Corrected a mistake in the description of 2D_CharBg_256BMP.
2005/07/22 Corrected sample demo names.
2005/05/10 Added description of 2D_CharBg_BankEx demo.
2005/03/02 Revised descriptions to reflect current support environment conditions.
2004/08/17 Standardized the notation of the IS-NITRO-EMULATOR.
2004/07/10 Change from .bin to .srl.
2004/02/20 Added Samples using the Sub Graphics Engine and the Bottom LCD.
2004/01/09 Initial version.


CONFIDENTIAL