Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ OnApply()

override void Microsoft.Xna.Framework.Graphics.EnvironmentMapEffect.OnApply ( )
inlinepackagevirtual

Reimplemented from Microsoft.Xna.Framework.Graphics.Effect.

Definition at line 378 of file EnvironmentMapEffect.cs.

379 {
380 dirtyFlags = EffectHelpers.SetWorldViewProjAndFog(dirtyFlags, ref world, ref view, ref projection, ref worldView, fogEnabled, fogStart, fogEnd, worldViewProjParam, fogVectorParam);
381 dirtyFlags = EffectHelpers.SetLightingMatrices(dirtyFlags, ref world, ref view, worldParam, worldInverseTransposeParam, eyePositionParam);
382 if ((dirtyFlags & EffectDirtyFlags.MaterialColor) != 0)
383 {
384 EffectHelpers.SetMaterialColor(lightingEnabled: true, alpha, ref diffuseColor, ref emissiveColor, ref ambientLightColor, diffuseColorParam, emissiveColorParam);
385 dirtyFlags &= ~EffectDirtyFlags.MaterialColor;
386 }
387 bool flag = !light1.Enabled && !light2.Enabled;
388 if (oneLight != flag)
389 {
390 oneLight = flag;
391 dirtyFlags |= EffectDirtyFlags.ShaderIndex;
392 }
393 if ((dirtyFlags & EffectDirtyFlags.ShaderIndex) != 0)
394 {
395 int num = 0;
396 if (!fogEnabled)
397 {
398 num++;
399 }
400 if (fresnelEnabled)
401 {
402 num += 2;
403 }
404 if (specularEnabled)
405 {
406 num += 4;
407 }
408 if (oneLight)
409 {
410 num += 8;
411 }
413 dirtyFlags &= ~EffectDirtyFlags.ShaderIndex;
414 }
415 }

References Microsoft.Xna.Framework.Graphics.EnvironmentMapEffect.alpha, Microsoft.Xna.Framework.Graphics.EnvironmentMapEffect.ambientLightColor, Microsoft.Xna.Framework.Graphics.EnvironmentMapEffect.diffuseColor, Microsoft.Xna.Framework.Graphics.EnvironmentMapEffect.diffuseColorParam, Microsoft.Xna.Framework.Graphics.EnvironmentMapEffect.dirtyFlags, Microsoft.Xna.Framework.Graphics.EnvironmentMapEffect.emissiveColor, Microsoft.Xna.Framework.Graphics.EnvironmentMapEffect.emissiveColorParam, Microsoft.Xna.Framework.Graphics.DirectionalLight.Enabled, Microsoft.Xna.Framework.Graphics.EnvironmentMapEffect.eyePositionParam, Microsoft.Xna.Framework.Graphics.EnvironmentMapEffect.fogEnabled, Microsoft.Xna.Framework.Graphics.EnvironmentMapEffect.fogEnd, Microsoft.Xna.Framework.Graphics.EnvironmentMapEffect.fogStart, Microsoft.Xna.Framework.Graphics.EnvironmentMapEffect.fogVectorParam, Microsoft.Xna.Framework.Graphics.EnvironmentMapEffect.fresnelEnabled, Microsoft.Xna.Framework.Graphics.EnvironmentMapEffect.light2, Microsoft.Xna.Framework.Graphics.EnvironmentMapEffect.oneLight, Microsoft.Xna.Framework.Graphics.EnvironmentMapEffect.projection, Microsoft.Xna.Framework.Graphics.EffectHelpers.SetLightingMatrices(), Microsoft.Xna.Framework.Graphics.EffectHelpers.SetMaterialColor(), Microsoft.Xna.Framework.Graphics.EffectParameter.SetValue(), Microsoft.Xna.Framework.Graphics.EffectHelpers.SetWorldViewProjAndFog(), Microsoft.Xna.Framework.Graphics.EnvironmentMapEffect.shaderIndexParam, Microsoft.Xna.Framework.Graphics.EnvironmentMapEffect.specularEnabled, Microsoft.Xna.Framework.Graphics.EnvironmentMapEffect.view, Microsoft.Xna.Framework.Graphics.EnvironmentMapEffect.world, Microsoft.Xna.Framework.Graphics.EnvironmentMapEffect.worldInverseTransposeParam, Microsoft.Xna.Framework.Graphics.EnvironmentMapEffect.worldParam, Microsoft.Xna.Framework.Graphics.EnvironmentMapEffect.worldView, and Microsoft.Xna.Framework.Graphics.EnvironmentMapEffect.worldViewProjParam.