protected override int begin() { renderSys.BindShader(vtxShader); renderSys.BindShader(pixShader); return(1); //return effect.Begin(FX.DoNotSaveState | FX.DoNotSaveShaderState | FX.DoNotSaveSamplerState); }
protected override int begin() { if (mode == RenderMode.Final) { renderSys.BindShader(vtxShader); renderSys.BindShader(pixShader); } else { renderSys.BindShader(nrmGenVShader); renderSys.BindShader(nrmGenPShader); } stateSetted = false; return(1); }
protected override int begin() { if (mode == RenderMode.Final) { renderSys.BindShader(vtxShader); renderSys.BindShader(pixShader); } else { renderSys.BindShader(nrmGenVShader); renderSys.BindShader(nrmGenPShader); } stateSetted = false; return(1); //return effect.Begin(FX.DoNotSaveState | FX.DoNotSaveShaderState | FX.DoNotSaveSamplerState); }
protected override int begin() { //if (mode == RenderMode.DeferredNormal) //{ //renderSys.BindShader(nrmGenPShader); //renderSys.BindShader(nrmGenVShader); //} //else { renderSys.BindShader(vtxShader); renderSys.BindShader(pixShader); pixShader.SetValue("i_a", EffectParams.LightAmbient); pixShader.SetValue("i_d", EffectParams.LightDiffuse); } stateSetted = false; return(1); //return effect.Begin(FX.DoNotSaveState | FX.DoNotSaveShaderState | FX.DoNotSaveSamplerState); }
//protected override int beginInst() //{ // stateSetted = false; // return effectInst.Begin(FX.DoNotSaveState | FX.DoNotSaveShaderState | FX.DoNotSaveSamplerState); //} //protected override void endInst() //{ // effectInst.End(); //} //public override void BeginPassInst(int passId) //{ // effectInst.BeginPass(passId); //} //public override void EndPassInst() //{ // effectInst.EndPass(); //} #endregion protected override int begin() { if (mode == RenderMode.Depth) { renderSys.BindShader(shdVtxShader); renderSys.BindShader(shdPixShader); } else if (mode == RenderMode.DeferredNormal) { renderSys.BindShader(nrmGenPShader); renderSys.BindShader(nrmGenVShader); } else { renderSys.BindShader(vtxShader); renderSys.BindShader(pixShader); pixShader.SetValue("i_a", EffectParams.LightAmbient); pixShader.SetValue("i_d", EffectParams.LightDiffuse); pixShader.SetValue("i_s", EffectParams.LightSpecular); pixShader.SetValue("lightDir", EffectParams.LightDir); vtxShader.SetValue("viewPos", EffectParams.CurrentCamera.Position); ShaderSamplerState state2 = new ShaderSamplerState(); state2.AddressU = TextureAddressMode.Wrap; state2.AddressV = TextureAddressMode.Wrap; state2.AddressW = TextureAddressMode.Wrap; state2.MinFilter = TextureFilter.Anisotropic; state2.MagFilter = TextureFilter.Anisotropic; state2.MipFilter = TextureFilter.Linear; state2.MaxAnisotropy = 8; state2.MipMapLODBias = 0; pixShader.SetTexture("hatch0", MaterialLibrary.Instance.Hatch0); pixShader.SetTexture("hatch1", MaterialLibrary.Instance.Hatch1); pixShader.SetSamplerState("hatch0", ref state2); pixShader.SetSamplerState("hatch1", ref state2); ShaderSamplerState state = new ShaderSamplerState(); state.AddressU = TextureAddressMode.Border; state.AddressV = TextureAddressMode.Border; state.AddressW = TextureAddressMode.Border; state.MinFilter = TextureFilter.Linear; state.MagFilter = TextureFilter.Linear; state.MipFilter = TextureFilter.None; state.BorderColor = ColorValue.White; state.MaxAnisotropy = 0; state.MipMapLODBias = 0; pixShader.SetSamplerState("texShd", ref state); pixShader.SetTexture("texShd", EffectParams.DepthMap[0]); } stateSetted = false; return(1); //return effect.Begin(FX.DoNotSaveState | FX.DoNotSaveShaderState | FX.DoNotSaveSamplerState); }
public virtual void Begin() { renderSys.BindShader(vtxShader); //renderSys.BindShader((VertexShader)null); renderSys.BindShader(pixShader); }
protected override int begin() { if (mode == RenderMode.Depth) { renderSystem.BindShader(shdVtxShader); renderSystem.BindShader(shdPixShader); } else if (mode == RenderMode.DeferredNormal) { renderSystem.BindShader(nrmVtxShader); renderSystem.BindShader(nrmPixShader); nrmPixShader.SetTexture("texNorm", MaterialLibrary.Instance.GlobalBakedNormalTexture); } else { renderSystem.BindShader(vtxShader); renderSystem.BindShader(pixShader); vtxShader.SetValue("terrSize", (float)terrSize); pixShader.SetValue("i_a", EffectParams.LightAmbient); pixShader.SetValue("i_d", EffectParams.LightDiffuse); //pixShader.SetValue("i_s", EffectParams.LightSpecular); vtxShader.SetValue("lightDir", EffectParams.LightDir); //vtxShader.SetValue("viewPos", EffectParams.CurrentCamera.Position); pixShader.SetTexture("texShd", EffectParams.DepthMap[0]); pixShader.SetTexture("texFog", FogMask); ShaderSamplerState state = new ShaderSamplerState(); state.AddressU = TextureAddressMode.Wrap; state.AddressV = TextureAddressMode.Wrap; state.AddressW = TextureAddressMode.Wrap; state.MinFilter = TextureFilter.Anisotropic; state.MagFilter = TextureFilter.Anisotropic; state.MipFilter = TextureFilter.Linear; state.MaxAnisotropy = 8; state.MipMapLODBias = 0; ShaderSamplerState state2 = new ShaderSamplerState(); state2.AddressU = TextureAddressMode.Wrap; state2.AddressV = TextureAddressMode.Wrap; state2.AddressW = TextureAddressMode.Wrap; state2.MinFilter = TextureFilter.Anisotropic; state2.MagFilter = TextureFilter.Anisotropic; state2.MipFilter = TextureFilter.Linear; state2.MaxAnisotropy = 8; state2.MipMapLODBias = 0; pixShader.SetTexture("texDif", MaterialLibrary.Instance.GlobalIndexTexture); pixShader.SetTexture("texNorm", MaterialLibrary.Instance.GlobalNormalTexture); //pixShader.SetTexture("texEdge", MaterialLibrary.Instance.FadeEdge); pixShader.SetTexture("hatch0", MaterialLibrary.Instance.Hatch0); pixShader.SetTexture("hatch1", MaterialLibrary.Instance.Hatch1); pixShader.SetSamplerState("hatch0", ref state2); pixShader.SetSamplerState("hatch1", ref state2); pixShader.SetSamplerState("texDif", ref state); pixShader.SetSamplerState("texNorm", ref state); pixShader.SetSamplerState("texFog", ref state); TerrainTexture tex; tex = MaterialLibrary.Instance.GetTexture("Snow"); pixShader.SetTexture("texDet1", tex.Texture); pixShader.SetSamplerState("texDet1", ref state); tex = MaterialLibrary.Instance.GetTexture("Grass"); pixShader.SetTexture("texDet2", tex.Texture); pixShader.SetSamplerState("texDet2", ref state); tex = MaterialLibrary.Instance.GetTexture("Sand"); pixShader.SetTexture("texDet3", tex.Texture); pixShader.SetSamplerState("texDet3", ref state); tex = MaterialLibrary.Instance.GetTexture("Rock"); pixShader.SetTexture("texDet4", tex.Texture); pixShader.SetSamplerState("texDet4", ref state); state.AddressU = TextureAddressMode.Clamp; state.AddressV = TextureAddressMode.Clamp; state.AddressW = TextureAddressMode.Clamp; state.AddressU = TextureAddressMode.Border; state.AddressV = TextureAddressMode.Border; state.AddressW = TextureAddressMode.Border; state.MinFilter = TextureFilter.Linear; state.MagFilter = TextureFilter.Linear; state.MipFilter = TextureFilter.None; state.BorderColor = ColorValue.White; state.MaxAnisotropy = 0; state.MipMapLODBias = 0; pixShader.SetSamplerState("texShd", ref state); } stateSetted = false; return(1); }
protected override int begin() { if (mode == RenderMode.DeferredNormal) { renderSystem.BindShader(nrmGenVS); renderSystem.BindShader(nrmGenPS); ShaderSamplerState state = new ShaderSamplerState(); state.AddressU = TextureAddressMode.Wrap; state.AddressV = TextureAddressMode.Wrap; state.AddressW = TextureAddressMode.Wrap; state.MinFilter = TextureFilter.Linear; state.MagFilter = TextureFilter.Linear; state.MipFilter = TextureFilter.Linear; state.MaxAnisotropy = 8; state.MipMapLODBias = 0; nrmGenPS.SetSamplerState("dudvMap", ref state); nrmGenPS.SetSamplerState("normalMap", ref state); } else { renderSystem.BindShader(vtxShader); renderSystem.BindShader(pixShader); vtxShader.SetValue("lightDir", EffectParams.LightDir); ShaderSamplerState state = new ShaderSamplerState(); state.AddressU = TextureAddressMode.Wrap; state.AddressV = TextureAddressMode.Wrap; state.AddressW = TextureAddressMode.Wrap; state.MinFilter = TextureFilter.Anisotropic; state.MagFilter = TextureFilter.Anisotropic; state.MipFilter = TextureFilter.Linear; state.MaxAnisotropy = 8; state.MipMapLODBias = 0; pixShader.SetSamplerState("dudvMap", ref state); pixShader.SetSamplerState("normalMap", ref state); pixShader.SetSamplerState("reflectionMap", ref state); pixShader.SetTexture("texShd", EffectParams.DepthMap[0]); state.AddressU = TextureAddressMode.Clamp; state.AddressV = TextureAddressMode.Clamp; state.AddressW = TextureAddressMode.Clamp; state.AddressU = TextureAddressMode.Border; state.AddressV = TextureAddressMode.Border; state.AddressW = TextureAddressMode.Border; state.MinFilter = TextureFilter.Linear; state.MagFilter = TextureFilter.Linear; state.MipFilter = TextureFilter.None; state.BorderColor = ColorValue.White; state.MaxAnisotropy = 0; state.MipMapLODBias = 0; pixShader.SetSamplerState("texShd", ref state); ShaderSamplerState state2 = new ShaderSamplerState(); state2.AddressU = TextureAddressMode.Wrap; state2.AddressV = TextureAddressMode.Wrap; state2.AddressW = TextureAddressMode.Wrap; state2.MinFilter = TextureFilter.Anisotropic; state2.MagFilter = TextureFilter.Anisotropic; state2.MipFilter = TextureFilter.Linear; state2.MaxAnisotropy = 8; state2.MipMapLODBias = 0; pixShader.SetTexture("hatch0", MaterialLibrary.Instance.Hatch0); pixShader.SetTexture("hatch1", MaterialLibrary.Instance.Hatch1); pixShader.SetSamplerState("hatch0", ref state2); pixShader.SetSamplerState("hatch1", ref state2); } move += 0.0000067f; while (move > 1) { move--; } return(1); }