Exemplo n.º 1
0
 public CCMode(string name, G_CCMUX a, G_CCMUX b, G_CCMUX c, G_CCMUX d, G_ACMUX Aa, G_ACMUX Ab, G_ACMUX Ac, G_ACMUX Ad)
 {
     Name    = name;
     this.a  = a & (G_CCMUX)((1 << 4) - 1);
     this.b  = b & (G_CCMUX)((1 << 4) - 1);
     this.c  = c & (G_CCMUX)((1 << 5) - 1);
     this.d  = d & (G_CCMUX)((1 << 3) - 1);
     this.Aa = Aa & (G_ACMUX)((1 << 3) - 1);
     this.Ab = Ab & (G_ACMUX)((1 << 3) - 1);
     this.Ac = Ac & (G_ACMUX)((1 << 3) - 1);
     this.Ad = Ad & (G_ACMUX)((1 << 3) - 1);
 }
Exemplo n.º 2
0
        // These 2 functions are reimps of oot's code
        private static string DisCCM(G_CCMUX value, int idx)
        {
            switch (value)
            {
            case G_CCMUX.G_CCMUX_COMBINED:
            case G_CCMUX.G_CCMUX_TEXEL0:
            case G_CCMUX.G_CCMUX_TEXEL1:
            case G_CCMUX.G_CCMUX_PRIMITIVE:
            case G_CCMUX.G_CCMUX_SHADE:
            case G_CCMUX.G_CCMUX_ENVIRONMENT:
                return(value.ToString().Replace("G_CCMUX_", ""));

            case (G_CCMUX)6:
                return((idx == 2) ? "CENTER" : (idx == 3) ? "SCALE" : "1");

            case (G_CCMUX)7:
                return((idx == 1) ? "NOISE" : (idx == 2) ? "K4" : (idx == 3) ? "COMBINED_ALPHA" : "0");

            default:
            {
                if (idx == 3)
                {
                    switch (value)
                    {
                    case G_CCMUX.G_CCMUX_TEXEL0_ALPHA:
                    case G_CCMUX.G_CCMUX_TEXEL1_ALPHA:
                    case G_CCMUX.G_CCMUX_PRIMITIVE_ALPHA:
                    case G_CCMUX.G_CCMUX_SHADE_ALPHA:
                    case G_CCMUX.G_CCMUX_ENV_ALPHA:
                    case G_CCMUX.G_CCMUX_LOD_FRACTION:
                    case G_CCMUX.G_CCMUX_PRIM_LOD_FRAC:
                    case G_CCMUX.G_CCMUX_K5:
                        return(value.ToString().Replace("G_CCMUX_", ""));

                    default:
                        return("0");
                    }
                }
                else
                {
                    return("0");
                }
            }
            }
        }