Lines Matching refs:sc
94 static void DrawInit ( MySceneCtrlObj* sc );
95 static void DrawTick ( MySceneCtrlObj* sc );
96 static void AnimTick ( MySceneCtrlObj* sc );
99 static void SetLight ( MySceneCtrlObj* sc );
100 static void PreLighting ( MySceneCtrlObj* sc );
102 static void StatusMessage ( MySceneCtrlObj* sc );
224 static void DrawInit( MySceneCtrlObj* sc ) in DrawInit() argument
236 sc->preLitColor = MEMAllocFromAllocator(&DemoAllocator1, WALL_ARRAY_SIZE ); in DrawInit()
237 ASSERTMSG(sc->preLitColor != 0, "Memory allocation failed."); in DrawInit()
239 GXSetArray(GX_VA_CLR0, sc->preLitColor, 3*sizeof(u8)); in DrawInit()
246 sc->cam.cfg = DefaultCamera; in DrawInit()
247 SetCamera(&sc->cam); // never changes in this test in DrawInit()
252 sc->lightCtrl[i].theta = 70; in DrawInit()
253 sc->lightCtrl[i].velocity = 2; in DrawInit()
254 sc->lightCtrl[i].color = i; in DrawInit()
260 sc->fakeLight[i] = DefaultFakeLightStatus[i]; in DrawInit()
264 sc->ambSrc = GX_SRC_VTX; in DrawInit()
265 sc->matSrc = GX_SRC_REG; in DrawInit()
272 MTXConcat(sc->cam.view, mt, mv); in DrawInit()
290 static void DrawTick( MySceneCtrlObj* sc ) in DrawTick() argument
299 PreLighting(sc); in DrawTick()
302 SetLight(sc); in DrawTick()
318 static void AnimTick( MySceneCtrlObj* sc ) in AnimTick() argument
326 sc->ambSrc = ( sc->ambSrc == GX_SRC_REG ) ? GX_SRC_VTX : GX_SRC_REG; in AnimTick()
328 if ( sc->ambSrc == GX_SRC_REG ) in AnimTick()
330 sc->matSrc = ( sc->matSrc == GX_SRC_REG ) ? GX_SRC_VTX : GX_SRC_REG; in AnimTick()
333 StatusMessage(sc); in AnimTick()
339 sc->fakeLight[i].xpos += sc->fakeLight[i].vx; in AnimTick()
340 sc->fakeLight[i].ypos += sc->fakeLight[i].vy; in AnimTick()
342 if ( sc->fakeLight[i].xpos < 0.0F || sc->fakeLight[i].xpos > WALL_SIZE ) in AnimTick()
344 sc->fakeLight[i].vx = - sc->fakeLight[i].vx; in AnimTick()
346 if ( sc->fakeLight[i].ypos < 0.0F || sc->fakeLight[i].ypos > WALL_SIZE ) in AnimTick()
348 sc->fakeLight[i].vy = - sc->fakeLight[i].vy; in AnimTick()
355 sc->lightCtrl[i].theta += sc->lightCtrl[i].velocity; in AnimTick()
356 if ( sc->lightCtrl[i].theta < 0 || sc->lightCtrl[i].theta > 90 ) in AnimTick()
358 sc->lightCtrl[i].velocity = - sc->lightCtrl[i].velocity; in AnimTick()
437 void SetLight( MySceneCtrlObj* sc ) in SetLight() argument
449 MTXRotAxisDeg(mr, &laxis, (f32)sc->lightCtrl[i].theta); in SetLight()
452 MTXMultVecSR(sc->cam.view, &ldir, &ldir); in SetLight()
459 MTXMultVec(sc->cam.view, &lpos, &lpos); in SetLight()
461 GXInitLightDirv(&sc->lightCtrl[i].lobj, &ldir); in SetLight()
462 GXInitLightPosv(&sc->lightCtrl[i].lobj, &lpos); in SetLight()
464 &sc->lightCtrl[i].lobj, in SetLight()
472 &sc->lightCtrl[i].lobj, in SetLight()
473 MyColors[sc->lightCtrl[i].color] ); in SetLight()
477 GXLoadLightObjImm(&sc->lightCtrl[0].lobj, GX_LIGHT0); in SetLight()
478 GXLoadLightObjImm(&sc->lightCtrl[1].lobj, GX_LIGHT1); in SetLight()
479 GXLoadLightObjImm(&sc->lightCtrl[2].lobj, GX_LIGHT2); in SetLight()
480 GXLoadLightObjImm(&sc->lightCtrl[3].lobj, GX_LIGHT3); in SetLight()
487 sc->ambSrc, // amb source in SetLight()
488 sc->matSrc, // mat source in SetLight()
516 static void PreLighting( MySceneCtrlObj* sc ) in PreLighting() argument
531 col = sc->fakeLight[il].color; in PreLighting()
532 dx = sc->fakeLight[il].xpos - x; in PreLighting()
533 dy = sc->fakeLight[il].ypos - y; in PreLighting()
534 z = sc->fakeLight[il].zpos * sc->fakeLight[il].zpos; in PreLighting()
542 sc->preLitColor[iv] = (u8)(( r > 255.0F ) ? 255 : r); in PreLighting()
543 sc->preLitColor[iv+1] = (u8)(( g > 255.0F ) ? 255 : g); in PreLighting()
544 sc->preLitColor[iv+2] = (u8)(( b > 255.0F ) ? 255 : b); in PreLighting()
550 DCFlushRange(sc->preLitColor, WALL_ARRAY_SIZE); in PreLighting()
586 static void StatusMessage( MySceneCtrlObj* sc ) in StatusMessage() argument
588 if ( sc->ambSrc == GX_SRC_VTX ) in StatusMessage()
593 if ( sc->matSrc == GX_SRC_VTX ) in StatusMessage()