// à placer dans la boucle comme si t'affichait un spriteMtx44 m, m1, m2, mv;// ??? GX_SetTevOp(GX_TEVSTAGE0, GX_MODULATE);// ??? GX_SetVtxDesc(GX_VA_TEX0, GX_DIRECT);// Là ce sont les transformations pour le changement d'échelle, la rotation et la translation.guMtxIdentity (m1);guMtxScaleApply(m1, m1, scaleX, scaleY, 1.0);guVector axis = (guVector) {0, 0, 1};guMtxRotAxisDeg (m2, &axis, angle);guMtxConcat(m2, m1, m);guMtxTransApply(m, m, screenX+width, screenY+height, 0);guMtxConcat (GXmodelView2D, m, mv);GX_LoadPosMtxImm (mv, GX_PNMTX0);// Ici tu créé le triangleGX_Begin(GX_TRIANGLES, GX_VTXFMT0, 3); GX_Position1x8(0); GX_Color1x8(0); GX_Position1x8(1); GX_Color1x8(1); GX_Position1x8(2); GX_Color1x8(2);GX_End();GX_LoadPosMtxImm(GXmodelView2D, GX_PNMTX0);// ??? GX_SetTevOp(GX_TEVSTAGE0, GX_PASSCLR);// ??? GX_SetVtxDesc(GX_VA_TEX0, GX_NONE);ML_Refresh();
extern Mtx GXmodelView2D;
extern static Mtx GXmodelView2D;