예제 #1
0
        public void BindCombiner(uint m0, uint m1, bool tex)
        {
            if (!supported) return;

            GL.Enable((EnableCap)All.FragmentProgram);
            foreach (ArbCombineProgram frag in fragcache)
            {
                if (frag.Mux0 == m0 && frag.Mux1 == m1 && frag.Textured == tex)
                {
                    GL.Arb.BindProgram(AssemblyProgramTargetArb.FragmentProgram, frag.GLID);
                    return;
                }
            }

            ArbCombineProgram newcached = new ArbCombineProgram(m0, m1, tex);
            fragcache.Add(newcached);
        }
예제 #2
0
        public void BindCombiner(uint m0, uint m1, bool tex)
        {
            if (!supported)
            {
                return;
            }

            GL.Enable((EnableCap)All.FragmentProgram);
            foreach (ArbCombineProgram frag in fragcache)
            {
                if (frag.Mux0 == m0 && frag.Mux1 == m1 && frag.Textured == tex)
                {
                    GL.Arb.BindProgram(AssemblyProgramTargetArb.FragmentProgram, frag.GLID);
                    return;
                }
            }

            ArbCombineProgram newcached = new ArbCombineProgram(m0, m1, tex);

            fragcache.Add(newcached);
        }