//--------------------------------------------------------------------------------------------------------------------------------------------------- // // Copyright (C)2007 DarkWynter Studios. All rights reserved. // //--------------------------------------------------------------------------------------------------------------------------------------------------- // {Contact : darkwynter.com for licensing information //--------------------------------------------------------------------------------------------------------------------------------------------------- namespace ElementalGame { #region Using Statements using System; using System.Collections.Generic; using Microsoft.Xna.Framework; using Microsoft.Xna.Framework.Content; using Microsoft.Xna.Framework.Graphics; #endregion public class ShaderParameters { Effect effect; public static EffectParameter ViewProj; public static EffectParameter World; public static EffectParameter WorldInverseTranspose; public static EffectParameter LightViewProj1; public static EffectParameter LightViewProj2; public static EffectParameter EyePostion; public static EffectParameter EyePostion1; public static EffectParameter EyePostion2; public static EffectParameter EyePostion3; public static EffectParameter ScreenWidth; public static EffectParameter ScreenHeight; public static EffectParameter playerIsDead; public static EffectParameter pixelColor1; public static EffectParameter pixelColor2; public static EffectParameter fogColor; public static EffectParameter fogDensity; public static EffectParameter zMaxDepth; public static EffectParameter light0; public static EffectParameter light1; public static EffectParameter coreShininess; public static EffectParameter WaveRadius; public static EffectParameter SphereRadius; public static EffectParameter particleType; public static EffectParameter particleLookVector; public static EffectParameter particleEnergyValue; public static EffectParameter coreMaterialDiffuse; public static EffectParameter coreMaterialSpecular; public static EffectParameter halfwayVector1; public static EffectParameter halfwayVector2; public static EffectParameter diffuse0; public static EffectParameter diffuse1; public static EffectParameter specular0; public static EffectParameter specular1; public static EffectParameter ambientColor; public static EffectParameter diffuseColor; public static EffectParameter specularColor; public static EffectParameter textureValue; public static EffectParameter worldMinY; public static EffectParameter worldMaxY; public static EffectParameter targetFeedbackArray; public static EffectParameter btime; public static EffectParameter ScreenTexture; public static EffectParameter boulderRichtor; public static EffectParameter boulderAmplitude; public static EffectParameter boudlerRedShift; public static EffectParameter waveFormScaler; public static EffectParameter LightUpTerrainMod; public static EffectParameter PlaneRayIntersectionPoint; public static EffectParameter TerrainModRange; public static EffectParameter normal; public static EffectParameter playerPosition; public static EffectParameter terrainMapSize; public static EffectParameter terrainScaleFactor; public static EffectParameter matrixPalette; public static EffectParameter modelTexture1; public static EffectParameter modelTexture2; public static EffectParameter modelTexture3; public static EffectParameter modelTexture4; public static EffectParameter modelTexture5; public static EffectParameter modelTexture6; public static EffectParameter bumpTexture1; public static EffectParameter bumpTexture2; public static EffectParameter bumpTexture3; public static EffectParameter bumpTexture4; public static EffectParameter bumpTexture5; public static EffectParameter bumpTexture6; public static EffectParameter shadowTexture1; public static EffectParameter shadowTexture2; public static EffectParameter terrainModTexture; public static EffectParameter heightMapTexture; public static EffectParameter terrainNormalMapTexture; public static EffectParameter hitTime; public static EffectParameter hits; public ShaderParameters() { effect = ElementalGame.content.Load("Shaders/ElementalGPU"); } public void LoadParameters() { // Std Matrix ViewProj = effect.Parameters["ViewProj"]; World = effect.Parameters["World"]; WorldInverseTranspose = effect.Parameters["WorldInverseTranspose"]; // Raster ScreenWidth = effect.Parameters["ScreenWidth"]; ScreenHeight = effect.Parameters["ScreenHeight"]; pixelColor1 = effect.Parameters["pixelColor1"]; pixelColor2 = effect.Parameters["pixelColor2"]; fogColor = effect.Parameters["fogColor"]; fogDensity = effect.Parameters["fogDensity"]; zMaxDepth = effect.Parameters["zMaxDepth"]; // Lighting light0 = effect.Parameters["light0"]; light1 = effect.Parameters["light1"]; coreShininess = effect.Parameters["coreShininess"]; coreMaterialDiffuse = effect.Parameters["coreMaterialDiffuse"]; coreMaterialSpecular = effect.Parameters["coreMaterialSpecular"]; halfwayVector1 = effect.Parameters["halfwayVector1"]; halfwayVector2 = effect.Parameters["halfwayVector2"]; diffuse0 = effect.Parameters["diffuse0"]; diffuse1 = effect.Parameters["diffuse1"]; specular0 = effect.Parameters["specular0"]; specular1 = effect.Parameters["specular1"]; ambientColor = effect.Parameters["ambientColor"]; diffuseColor = effect.Parameters["diffuseColor"]; specularColor = effect.Parameters["specularColor"]; // Shadow LightViewProj1 = effect.Parameters["LightViewProj1"]; LightViewProj2 = effect.Parameters["LightViewProj2"]; EyePostion = effect.Parameters["EyePostion"]; EyePostion1 = effect.Parameters["EyePostion1"]; EyePostion2 = effect.Parameters["EyePostion2"]; EyePostion3 = effect.Parameters["EyePostion3"]; // Particle Shader boulderRichtor = effect.Parameters["particleRichtor"]; boulderAmplitude = effect.Parameters["particleAmplitude"]; boudlerRedShift = effect.Parameters["particleRedShift"]; waveFormScaler = effect.Parameters["waveFormScaler"]; WaveRadius = effect.Parameters["WaveRadius"]; SphereRadius = effect.Parameters["SphereRadius"]; particleType = effect.Parameters["particleType"]; particleLookVector = effect.Parameters["particleLookVector"]; particleEnergyValue = effect.Parameters["particleEnergyValue"]; // Multi- Texturing modelTexture1 = effect.Parameters["modelTexture1"]; modelTexture2 = effect.Parameters["modelTexture2"]; modelTexture3 = effect.Parameters["modelTexture3"]; modelTexture4 = effect.Parameters["modelTexture4"]; modelTexture5 = effect.Parameters["modelTexture5"]; modelTexture6 = effect.Parameters["modelTexture6"]; bumpTexture1 = effect.Parameters["bumpTexture1"]; bumpTexture2 = effect.Parameters["bumpTexture2"]; bumpTexture3 = effect.Parameters["bumpTexture3"]; bumpTexture4 = effect.Parameters["bumpTexture4"]; bumpTexture5 = effect.Parameters["bumpTexture5"]; bumpTexture6 = effect.Parameters["bumpTexture6"]; shadowTexture1 = effect.Parameters["shadowTexture1"]; shadowTexture2 = effect.Parameters["shadowTexture2"]; // Terrain heightMapTexture = effect.Parameters["heightMapTexture"]; terrainMapSize = effect.Parameters["terrainMapSize"]; terrainScaleFactor = effect.Parameters["terrainScaleFactor"]; terrainNormalMapTexture = effect.Parameters["terrainNormalMapTexture"]; // Terrain Mod Range TerrainModRange = effect.Parameters["TerrainModRange"]; terrainModTexture = effect.Parameters["terrainModTexture"]; LightUpTerrainMod = effect.Parameters["LightUpTerrainMod"]; playerIsDead = effect.Parameters["playerIsDead"]; hitTime = effect.Parameters["hitTime"]; hits = effect.Parameters["hits"]; targetFeedbackArray = effect.Parameters["targetFeedbackArray"]; btime = effect.Parameters["btime"]; textureValue = effect.Parameters["textureValue"]; worldMinY = effect.Parameters["worldMinY"]; worldMaxY = effect.Parameters["worldMaxY"]; ScreenTexture = effect.Parameters["ScreenTexture"]; PlaneRayIntersectionPoint = effect.Parameters["PlaneRayIntersectionPoint"]; normal = effect.Parameters["normal"]; playerPosition = effect.Parameters["playerPosition"]; matrixPalette = effect.Parameters["MatrixPalette"]; } } }