static void setDrawEnv(u32 blend) { rsxSetColorMask(context,GCM_COLOR_MASK_B | GCM_COLOR_MASK_G | GCM_COLOR_MASK_R | GCM_COLOR_MASK_A); rsxSetColorMaskMRT(context,0); u16 x,y,w,h; f32 min, max; f32 scale[4],offset[4]; x = 0; y = 0; w = display_width; h = display_height; min = 0.0f; max = 1.0f; scale[0] = w * 0.5f; scale[1] = h * -0.5f; scale[2] = (max - min) * 0.5f; scale[3] = 0.0f; offset[0] = x + w * 0.5f; offset[1] = y + h * 0.5f; offset[2] = (max + min) * 0.5f; offset[3] = 0.0f; rsxSetViewport(context,x, y, w, h, min, max, scale, offset); rsxSetScissor(context,x,y,w,h); rsxSetDepthTestEnable(context,GCM_FALSE); //TRUE rsxSetDepthFunc(context,GCM_ALWAYS); //LESS rsxSetShadeModel(context,GCM_SHADE_MODEL_FLAT); //SMOOTH rsxSetDepthWriteEnable(context, 0); rsxSetFrontFace(context,GCM_FRONTFACE_CCW); if (blend) { rsxSetBlendEnable(context, GCM_TRUE); rsxSetBlendFunc(context, GCM_SRC_ALPHA, GCM_ONE_MINUS_SRC_ALPHA, GCM_SRC_COLOR, GCM_DST_COLOR); rsxSetBlendEquation(context, GCM_FUNC_ADD, GCM_FUNC_ADD); } else { rsxSetBlendEnable(context, GCM_FALSE); } }
static void setDrawEnv() { rsxSetColorMask(context,GCM_COLOR_MASK_B | GCM_COLOR_MASK_G | GCM_COLOR_MASK_R | GCM_COLOR_MASK_A); rsxSetColorMaskMRT(context,0); u16 x,y,w,h; f32 min, max; f32 scale[4],offset[4]; x = 0; y = 0; w = display_width; h = display_height; min = 0.0f; max = 1.0f; scale[0] = w*0.5f; scale[1] = h*-0.5f; scale[2] = (max - min)*0.5f; scale[3] = 0.0f; offset[0] = x + w*0.5f; offset[1] = y + h*0.5f; offset[2] = (max + min)*0.5f; offset[3] = 0.0f; rsxSetViewport(context,x, y, w, h, min, max, scale, offset); rsxSetScissor(context,x,y,w,h); rsxSetDepthTestEnable(context,GCM_TRUE); rsxSetDepthFunc(context,GCM_LESS); rsxSetShadeModel(context,GCM_SHADE_MODEL_SMOOTH); rsxSetDepthWriteEnable(context,1); rsxSetFrontFace(context,GCM_FRONTFACE_CCW); }