Regarding incompatibility with versions released on and before 09/16/2004

Callback Incompatibilities

With the version released on 10/11/2004, the NNS_G3dDraw function can set one callback function for one SBC instead of one callback for all SBCs. However, this change caused incompatibility issues with some of the previous versions.

How to handle callback codes that cannot be compiled

When the callback function and generation conditions were changed in the callback

When the cbFunc, cbCmd, and cbTiming members of the NNSG3dRS structure are changed in the callback function, replace the code as shown below.

  1. Use the NNS_G3dRSResetCallBack function in the callback function, and release the callback that is being used.
  2. Use the NNS_G3dRSSetCallBack function to specify new callback functions and generation conditions.

When using multiple callbacks

The second and subsequent callbacks cannot be registered with the NNS_G3dRenderObjSetCallBack function. To limit the size of NNSG3dRenderObj, the NNSG3dRS structure is set in the NNS_G3dDraw function before drawing to register callbacks.

  1. Use NNSG3dRenderObjSetInitFunc, at the time NNS_G3dDraw executes, set/configure NNSG3dRenderObj structure. By using the NNS_G3dRenderObjSetInitFunc function, set the function that is executed when the NNS_G3dDraw function is executed before the drawing to the NNSG3dRenderObj structure.
  2. In the set function, specify the callback function and generation conditions by using NNS_G3dRSSetCallBack.

For details, see the sample callback5.

Revision History

10/11/2004 Initial version.