public void Initialize(Device device) { _b = EffectUtils.Load(ShadersResourceManager.Manager, "BakeryShaders"); E = new Effect(device, _b); TechPerPixel = new EffectReadyTechnique(E.GetTechniqueByName("PerPixel")); TechMultiLayer = new EffectReadyTechnique(E.GetTechniqueByName("MultiLayer")); TechPerPixel_SecondPass = new EffectReadyTechnique(E.GetTechniqueByName("PerPixel_SecondPass")); TechMultiLayer_SecondPass = new EffectReadyTechnique(E.GetTechniqueByName("MultiLayer_SecondPass")); TechPerPixel_GrassPass = new EffectReadyTechnique(E.GetTechniqueByName("PerPixel_GrassPass")); for (var i = 0; i < TechPerPixel.Description.PassCount && InputSignaturePNTG == null; i++) { InputSignaturePNTG = TechPerPixel.GetPassByIndex(i).Description.Signature; } if (InputSignaturePNTG == null) { throw new System.Exception("input signature (BakeryShaders, PNTG, PerPixel) == null"); } LayoutPNTG = new InputLayout(device, InputSignaturePNTG, InputLayouts.VerticePNTG.InputElementsValue); FxWorldViewProj = new EffectOnlyMatrixVariable(E.GetVariableByName("gWorldViewProj")); FxDiffuseMap = new EffectOnlyResourceVariable(E.GetVariableByName("gDiffuseMap")); FxMaskMap = new EffectOnlyResourceVariable(E.GetVariableByName("gMaskMap")); FxDetailRMap = new EffectOnlyResourceVariable(E.GetVariableByName("gDetailRMap")); FxDetailGMap = new EffectOnlyResourceVariable(E.GetVariableByName("gDetailGMap")); FxDetailBMap = new EffectOnlyResourceVariable(E.GetVariableByName("gDetailBMap")); FxDetailAMap = new EffectOnlyResourceVariable(E.GetVariableByName("gDetailAMap")); FxAlphaMap = new EffectOnlyResourceVariable(E.GetVariableByName("gAlphaMap")); FxKsDiffuse = new EffectOnlyFloatVariable(E.GetVariableByName("gKsDiffuse")); FxAlphaRef = new EffectOnlyFloatVariable(E.GetVariableByName("gAlphaRef")); FxMagicMult = new EffectOnlyFloatVariable(E.GetVariableByName("gMagicMult")); FxSecondPassMode = new EffectOnlyFloatVariable(E.GetVariableByName("gSecondPassMode")); FxMultRGBA = new EffectOnlyVector4Variable(E.GetVariableByName("gMultRGBA")); }
public void Initialize(Device device) { _b = EffectUtils.Load(ShadersResourceManager.Manager, "DeferredTransparent"); E = new Effect(device, _b); TechDebug = E.GetTechniqueByName("Debug"); TechDebugPost = E.GetTechniqueByName("DebugPost"); TechDebugLighting = E.GetTechniqueByName("DebugLighting"); TechDebugLocalReflections = E.GetTechniqueByName("DebugLocalReflections"); TechCombine0 = E.GetTechniqueByName("Combine0"); for (var i = 0; i < TechDebug.Description.PassCount && InputSignaturePT == null; i++) { InputSignaturePT = TechDebug.GetPassByIndex(i).Description.Signature; } if (InputSignaturePT == null) { throw new System.Exception("input signature (DeferredTransparent, PT, Debug) == null"); } LayoutPT = new InputLayout(device, InputSignaturePT, InputLayouts.VerticePT.InputElementsValue); FxWorldViewProjInv = new EffectOnlyMatrixVariable(E.GetVariableByName("gWorldViewProjInv").AsMatrix()); FxBaseMap = E.GetVariableByName("gBaseMap").AsResource(); FxNormalMap = E.GetVariableByName("gNormalMap").AsResource(); FxMapsMap = E.GetVariableByName("gMapsMap").AsResource(); FxDepthMap = E.GetVariableByName("gDepthMap").AsResource(); FxLightMap = E.GetVariableByName("gLightMap").AsResource(); FxLocalReflectionMap = E.GetVariableByName("gLocalReflectionMap").AsResource(); FxReflectionCubemap = E.GetVariableByName("gReflectionCubemap").AsResource(); FxAmbientDown = E.GetVariableByName("gAmbientDown").AsVector(); FxAmbientRange = E.GetVariableByName("gAmbientRange").AsVector(); FxEyePosW = E.GetVariableByName("gEyePosW").AsVector(); }
public void Initialize(Device device) { _b = EffectUtils.Load(ShadersResourceManager.Manager, "DeferredPpSslr"); E = new Effect(device, _b); TechHabrahabrVersion = E.GetTechniqueByName("HabrahabrVersion"); for (var i = 0; i < TechHabrahabrVersion.Description.PassCount && InputSignaturePT == null; i++) { InputSignaturePT = TechHabrahabrVersion.GetPassByIndex(i).Description.Signature; } if (InputSignaturePT == null) { throw new System.Exception("input signature (DeferredPpSslr, PT, HabrahabrVersion) == null"); } LayoutPT = new InputLayout(device, InputSignaturePT, InputLayouts.VerticePT.InputElementsValue); FxWorldViewProjInv = new EffectOnlyMatrixVariable(E.GetVariableByName("gWorldViewProjInv").AsMatrix()); FxWorldViewProj = new EffectOnlyMatrixVariable(E.GetVariableByName("gWorldViewProj").AsMatrix()); FxBaseMap = E.GetVariableByName("gBaseMap").AsResource(); FxLightMap = E.GetVariableByName("gLightMap").AsResource(); FxNormalMap = E.GetVariableByName("gNormalMap").AsResource(); FxMapsMap = E.GetVariableByName("gMapsMap").AsResource(); FxDepthMap = E.GetVariableByName("gDepthMap").AsResource(); FxEyePosW = E.GetVariableByName("gEyePosW").AsVector(); }
public void Initialize(Device device) { _b = EffectUtils.Load(ShadersResourceManager.Manager, "DarkMaterial"); E = new Effect(device, _b); TechStandard = E.GetTechniqueByName("Standard"); TechAlpha = E.GetTechniqueByName("Alpha"); TechReflective = E.GetTechniqueByName("Reflective"); TechNm = E.GetTechniqueByName("Nm"); TechNmUvMult = E.GetTechniqueByName("NmUvMult"); TechAtNm = E.GetTechniqueByName("AtNm"); TechMaps = E.GetTechniqueByName("Maps"); TechDiffMaps = E.GetTechniqueByName("DiffMaps"); TechGl = E.GetTechniqueByName("Gl"); TechAmbientShadow = E.GetTechniqueByName("AmbientShadow"); TechMirror = E.GetTechniqueByName("Mirror"); TechFlatMirror = E.GetTechniqueByName("FlatMirror"); for (var i = 0; i < TechAmbientShadow.Description.PassCount && InputSignaturePT == null; i++) { InputSignaturePT = TechAmbientShadow.GetPassByIndex(i).Description.Signature; } if (InputSignaturePT == null) { throw new System.Exception("input signature (DarkMaterial, PT, AmbientShadow) == null"); } LayoutPT = new InputLayout(device, InputSignaturePT, InputLayouts.VerticePT.InputElementsValue); for (var i = 0; i < TechStandard.Description.PassCount && InputSignaturePNTG == null; i++) { InputSignaturePNTG = TechStandard.GetPassByIndex(i).Description.Signature; } if (InputSignaturePNTG == null) { throw new System.Exception("input signature (DarkMaterial, PNTG, Standard) == null"); } LayoutPNTG = new InputLayout(device, InputSignaturePNTG, InputLayouts.VerticePNTG.InputElementsValue); FxShadowViewProj = E.GetVariableByName("gShadowViewProj").AsMatrix(); FxWorld = E.GetVariableByName("gWorld").AsMatrix(); FxWorldInvTranspose = E.GetVariableByName("gWorldInvTranspose").AsMatrix(); FxWorldViewProj = E.GetVariableByName("gWorldViewProj").AsMatrix(); FxShadowMaps = E.GetVariableByName("gShadowMaps").AsResource(); FxDiffuseMap = E.GetVariableByName("gDiffuseMap").AsResource(); FxNormalMap = E.GetVariableByName("gNormalMap").AsResource(); FxMapsMap = E.GetVariableByName("gMapsMap").AsResource(); FxDetailsMap = E.GetVariableByName("gDetailsMap").AsResource(); FxDetailsNormalMap = E.GetVariableByName("gDetailsNormalMap").AsResource(); FxReflectionCubemap = E.GetVariableByName("gReflectionCubemap").AsResource(); FxFlatMirrored = E.GetVariableByName("gFlatMirrored").AsScalar(); FxEyePosW = E.GetVariableByName("gEyePosW").AsVector(); FxLightDir = E.GetVariableByName("gLightDir").AsVector(); FxMaterial = E.GetVariableByName("gMaterial"); FxReflectiveMaterial = E.GetVariableByName("gReflectiveMaterial"); FxMapsMaterial = E.GetVariableByName("gMapsMaterial"); FxAlphaMaterial = E.GetVariableByName("gAlphaMaterial"); FxNmUvMultMaterial = E.GetVariableByName("gNmUvMultMaterial"); }
public void Initialize(Device device) { _b = EffectUtils.Load(ShadersResourceManager.Manager, "DeferredGObject"); E = new Effect(device, _b); TechStandardDeferred = E.GetTechniqueByName("StandardDeferred"); TechStandardForward = E.GetTechniqueByName("StandardForward"); TechAmbientShadowDeferred = E.GetTechniqueByName("AmbientShadowDeferred"); TechTransparentDeferred = E.GetTechniqueByName("TransparentDeferred"); TechTransparentForward = E.GetTechniqueByName("TransparentForward"); TechTransparentMask = E.GetTechniqueByName("TransparentMask"); for (var i = 0; i < TechStandardDeferred.Description.PassCount && InputSignaturePNTG == null; i++) { InputSignaturePNTG = TechStandardDeferred.GetPassByIndex(i).Description.Signature; } if (InputSignaturePNTG == null) { throw new System.Exception("input signature (DeferredGObject, PNTG, StandardDeferred) == null"); } LayoutPNTG = new InputLayout(device, InputSignaturePNTG, InputLayouts.VerticePNTG.InputElementsValue); for (var i = 0; i < TechAmbientShadowDeferred.Description.PassCount && InputSignaturePT == null; i++) { InputSignaturePT = TechAmbientShadowDeferred.GetPassByIndex(i).Description.Signature; } if (InputSignaturePT == null) { throw new System.Exception("input signature (DeferredGObject, PT, AmbientShadowDeferred) == null"); } LayoutPT = new InputLayout(device, InputSignaturePT, InputLayouts.VerticePT.InputElementsValue); FxWorld = new EffectOnlyMatrixVariable(E.GetVariableByName("gWorld").AsMatrix()); FxWorldInvTranspose = new EffectOnlyMatrixVariable(E.GetVariableByName("gWorldInvTranspose").AsMatrix()); FxWorldViewProj = new EffectOnlyMatrixVariable(E.GetVariableByName("gWorldViewProj").AsMatrix()); FxDiffuseMap = E.GetVariableByName("gDiffuseMap").AsResource(); FxNormalMap = E.GetVariableByName("gNormalMap").AsResource(); FxMapsMap = E.GetVariableByName("gMapsMap").AsResource(); FxDetailsMap = E.GetVariableByName("gDetailsMap").AsResource(); FxDetailsNormalMap = E.GetVariableByName("gDetailsNormalMap").AsResource(); FxReflectionCubemap = E.GetVariableByName("gReflectionCubemap").AsResource(); FxEyePosW = E.GetVariableByName("gEyePosW").AsVector(); FxAmbientDown = E.GetVariableByName("gAmbientDown").AsVector(); FxAmbientRange = E.GetVariableByName("gAmbientRange").AsVector(); FxLightColor = E.GetVariableByName("gLightColor").AsVector(); FxDirectionalLightDirection = E.GetVariableByName("gDirectionalLightDirection").AsVector(); FxMaterial = E.GetVariableByName("gMaterial"); }
public void Initialize(Device device) { _b = EffectUtils.Load(ShadersResourceManager.Manager, "DeferredLight"); E = new Effect(device, _b); TechPointLight = E.GetTechniqueByName("PointLight"); TechPointLight_NoSpec = E.GetTechniqueByName("PointLight_NoSpec"); TechPointLight_Debug = E.GetTechniqueByName("PointLight_Debug"); TechDirectionalLight = E.GetTechniqueByName("DirectionalLight"); TechDirectionalLight_Shadows = E.GetTechniqueByName("DirectionalLight_Shadows"); TechDirectionalLight_Shadows_NoFilter = E.GetTechniqueByName("DirectionalLight_Shadows_NoFilter"); TechDirectionalLight_Split = E.GetTechniqueByName("DirectionalLight_Split"); for (var i = 0; i < TechDirectionalLight.Description.PassCount && InputSignaturePT == null; i++) { InputSignaturePT = TechDirectionalLight.GetPassByIndex(i).Description.Signature; } if (InputSignaturePT == null) { throw new System.Exception("input signature (DeferredLight, PT, DirectionalLight) == null"); } LayoutPT = new InputLayout(device, InputSignaturePT, InputLayouts.VerticePT.InputElementsValue); FxWorld = new EffectOnlyMatrixVariable(E.GetVariableByName("gWorld").AsMatrix()); FxWorldInvTranspose = new EffectOnlyMatrixVariable(E.GetVariableByName("gWorldInvTranspose").AsMatrix()); FxWorldViewProj = new EffectOnlyMatrixVariable(E.GetVariableByName("gWorldViewProj").AsMatrix()); FxWorldViewProjInv = new EffectOnlyMatrixVariable(E.GetVariableByName("gWorldViewProjInv").AsMatrix()); FxShadowViewProj = new EffectOnlyMatrixArrayVariable(E.GetVariableByName("gShadowViewProj").AsMatrix()); FxBaseMap = E.GetVariableByName("gBaseMap").AsResource(); FxNormalMap = E.GetVariableByName("gNormalMap").AsResource(); FxMapsMap = E.GetVariableByName("gMapsMap").AsResource(); FxDepthMap = E.GetVariableByName("gDepthMap").AsResource(); FxShadowMaps = E.GetVariableByName("gShadowMaps").AsResource(); FxPointLightRadius = E.GetVariableByName("gPointLightRadius").AsScalar(); FxScreenSize = E.GetVariableByName("gScreenSize").AsVector(); FxLightColor = E.GetVariableByName("gLightColor").AsVector(); FxDirectionalLightDirection = E.GetVariableByName("gDirectionalLightDirection").AsVector(); FxPointLightPosition = E.GetVariableByName("gPointLightPosition").AsVector(); FxShadowDepths = E.GetVariableByName("gShadowDepths").AsVector(); FxEyePosW = E.GetVariableByName("gEyePosW").AsVector(); }
public void Initialize(Device device) { _b = EffectUtils.Load(ShadersResourceManager.Manager, "DeferredGObjectSpecial"); E = new Effect(device, _b); TechSpecialGlDeferred = E.GetTechniqueByName("SpecialGlDeferred"); TechSpecialGlForward = E.GetTechniqueByName("SpecialGlForward"); TechSpecialGlMask = E.GetTechniqueByName("SpecialGlMask"); for (var i = 0; i < TechSpecialGlDeferred.Description.PassCount && InputSignaturePNTG == null; i++) { InputSignaturePNTG = TechSpecialGlDeferred.GetPassByIndex(i).Description.Signature; } if (InputSignaturePNTG == null) { throw new System.Exception("input signature (DeferredGObjectSpecial, PNTG, SpecialGlDeferred) == null"); } LayoutPNTG = new InputLayout(device, InputSignaturePNTG, InputLayouts.VerticePNTG.InputElementsValue); FxWorld = new EffectOnlyMatrixVariable(E.GetVariableByName("gWorld").AsMatrix()); FxWorldInvTranspose = new EffectOnlyMatrixVariable(E.GetVariableByName("gWorldInvTranspose").AsMatrix()); FxWorldViewProj = new EffectOnlyMatrixVariable(E.GetVariableByName("gWorldViewProj").AsMatrix()); }
public void Initialize(Device device) { _b = EffectUtils.Load(ShadersResourceManager.Manager, "DeferredGSky"); E = new Effect(device, _b); TechSkyDeferred = E.GetTechniqueByName("SkyDeferred"); TechSkyForward = E.GetTechniqueByName("SkyForward"); for (var i = 0; i < TechSkyDeferred.Description.PassCount && InputSignatureP == null; i++) { InputSignatureP = TechSkyDeferred.GetPassByIndex(i).Description.Signature; } if (InputSignatureP == null) { throw new System.Exception("input signature (DeferredGSky, P, SkyDeferred) == null"); } LayoutP = new InputLayout(device, InputSignatureP, InputLayouts.VerticeP.InputElementsValue); FxWorld = new EffectOnlyMatrixVariable(E.GetVariableByName("gWorld").AsMatrix()); FxWorldInvTranspose = new EffectOnlyMatrixVariable(E.GetVariableByName("gWorldInvTranspose").AsMatrix()); FxWorldViewProj = new EffectOnlyMatrixVariable(E.GetVariableByName("gWorldViewProj").AsMatrix()); FxSkyDown = E.GetVariableByName("gSkyDown").AsVector(); FxSkyRange = E.GetVariableByName("gSkyRange").AsVector(); }