Lines Matching full:gglctx
261 Value * GenerateFSBlend(const GGLState * gglCtx, const GGLPixelFormat format, /*const RegDesc * regDesc,*/
267 if (!gglCtx->blendState.enable) {
335 Value * constant = constIntVec(builder,gglCtx->blendState.color[0],
336 gglCtx->blendState.color[1],
337 gglCtx->blendState.color[2],
338 gglCtx->blendState.color[3]);
348 Value * sf = BlendFactor(gglCtx->blendState.scf, src, dst,
351 if (gglCtx->blendState.scf != gglCtx->blendState.saf) {
352 Value * sfA = BlendFactor(gglCtx->blendState.saf, srcA, dstA,
359 Value * df = BlendFactor(gglCtx->blendState.dcf, src, dst,
362 if (gglCtx->blendState.dcf != gglCtx->blendState.daf) {
363 Value * dfA = BlendFactor(gglCtx->blendState.daf, srcA, dstA,
378 switch (gglCtx->blendState.ce + GL_FUNC_ADD) {
392 if (gglCtx->blendState.ce != gglCtx->blendState.ae) {
396 switch (gglCtx->blendState.ae + GL_FUNC_ADD) {
448 void GenerateScanLine(const GGLState * gglCtx, const gl_shader_program * program, Module * mod,
491 if (gglCtx->bufferState.stencilTest) {
493 if (gglCtx->frontStencil.ref == gglCtx->backStencil.ref)
494 sRef = builder.getInt8(gglCtx->frontStencil.ref);
497 if (gglCtx->frontStencil.mask == gglCtx->backStencil.mask)
498 sMask = builder.getInt8(gglCtx->frontStencil.mask);
501 if (gglCtx->frontStencil.func == gglCtx->backStencil.func)
502 sFunc = builder.getInt8(gglCtx->frontStencil.func);
509 assert(framePtr && gglCtx);
512 if (GGL_PIXEL_FORMAT_RGBA_8888 == gglCtx->bufferState.colorFormat)
514 else if (GGL_PIXEL_FORMAT_RGB_565 == gglCtx->bufferState.colorFormat) {
517 } else if (GGL_PIXEL_FORMAT_UNKNOWN == gglCtx->bufferState.colorFormat)
524 if (gglCtx->bufferState.depthTest) {
525 assert(GGL_PIXEL_FORMAT_Z_32 == gglCtx->bufferState.depthFormat);
539 if (gglCtx->bufferState.stencilTest) {
553 if (gglCtx->frontStencil.func != gglCtx->backStencil.func)
556 StencilFunc(builder, gglCtx->frontStencil.func, s, sRef, sCmpPtr);
558 if (gglCtx->frontStencil.func != gglCtx->backStencil.func) {
560 StencilFunc(builder, gglCtx->backStencil.func, s, sRef, sCmpPtr);
570 if (gglCtx->bufferState.depthTest) {
593 switch (0x200 | gglCtx->bufferState.depthFunc) {
642 if (gglCtx->blendState.enable && (0 != gglCtx->blendState.dcf || 0 != gglCtx->blendState.daf)) {
644 dst = ScreenColorToIntVector(builder, gglCtx->bufferState.colorFormat, frameColor);
650 Value * color = GenerateFSBlend(gglCtx, gglCtx->bufferState.colorFormat,/*&prog->outputRegDesc,*/ builder, src, dst);
653 if (gglCtx->bufferState.depthTest) {
658 if (gglCtx->bufferState.stencilTest)
659 builder.CreateStore(StencilOp(builder, sFace, gglCtx->frontStencil.dPass,
660 gglCtx->backStencil.dPass, sPtr, sRef), stencil);
664 if (gglCtx->bufferState.stencilTest)
665 builder.CreateStore(StencilOp(builder, sFace, gglCtx->frontStencil.dFail,
666 gglCtx->backStencil.dFail, sPtr, sRef), stencil);
670 if (gglCtx->bufferState.stencilTest)
671 builder.CreateStore(StencilOp(builder, sFace, gglCtx->frontStencil.sFail,
672 gglCtx->backStencil.sFail, sPtr, sRef), stencil);
680 if (gglCtx->bufferState.depthTest) {
684 if (gglCtx->bufferState.stencilTest) {
698 } else if (gglCtx->bufferState.depthTest) {