Terraria
v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches
BlizzardShaderData.cs
Go to the documentation of this file.
1
using
Microsoft.Xna.Framework
;
2
using
Terraria.Graphics.Shaders
;
3
4
namespace
Terraria.GameContent.Shaders
;
5
6
public
class
BlizzardShaderData
:
ScreenShaderData
7
{
8
private
Vector2
_texturePosition
=
Vector2
.
Zero
;
9
10
private
float
windSpeed
= 0.1f;
11
12
public
BlizzardShaderData
(
string
passName)
13
: base(passName)
14
{
15
}
16
17
public
override
void
Update
(GameTime gameTime)
18
{
19
float
num =
Main
.
windSpeedCurrent
;
20
if
(num >= 0f && num <= 0.1f)
21
{
22
num = 0.1f;
23
}
24
else
if
(num <= 0f && num >= -0.1f)
25
{
26
num = -0.1f;
27
}
28
windSpeed
= num * 0.05f +
windSpeed
* 0.95f;
29
Vector2
vector =
new
Vector2
(0f -
windSpeed
, -1f) *
new
Vector2
(10f, 2f);
30
vector.
Normalize
();
31
vector *=
new
Vector2
(0.8f, 0.6f);
32
if
(!
Main
.
gamePaused
&&
Main
.
hasFocus
)
33
{
34
_texturePosition
+= vector * (float)gameTime.ElapsedGameTime.TotalSeconds;
35
}
36
_texturePosition.X %= 10f;
37
_texturePosition.Y %= 10f;
38
UseDirection
(vector);
39
UseTargetPosition
(
_texturePosition
);
40
base.Update(gameTime);
41
}
42
43
public
override
void
Apply
()
44
{
45
UseTargetPosition
(
_texturePosition
);
46
base.Apply();
47
}
48
}
Terraria.GameContent.Shaders.BlizzardShaderData.Update
override void Update(GameTime gameTime)
Definition
BlizzardShaderData.cs:17
Terraria.GameContent.Shaders.BlizzardShaderData.Apply
override void Apply()
Definition
BlizzardShaderData.cs:43
Terraria.GameContent.Shaders.BlizzardShaderData.BlizzardShaderData
BlizzardShaderData(string passName)
Definition
BlizzardShaderData.cs:12
Terraria.GameContent.Shaders.BlizzardShaderData.windSpeed
float windSpeed
Definition
BlizzardShaderData.cs:10
Terraria.GameContent.Shaders.BlizzardShaderData._texturePosition
Vector2 _texturePosition
Definition
BlizzardShaderData.cs:8
Terraria.GameContent.Shaders.BlizzardShaderData
Definition
BlizzardShaderData.cs:7
Terraria.Graphics.Shaders.ScreenShaderData.UseTargetPosition
ScreenShaderData UseTargetPosition(Vector2 position)
Definition
ScreenShaderData.cs:168
Terraria.Graphics.Shaders.ScreenShaderData.UseDirection
ScreenShaderData UseDirection(Vector2 direction)
Definition
ScreenShaderData.cs:156
Terraria.Graphics.Shaders.ScreenShaderData
Definition
ScreenShaderData.cs:8
Terraria.Main.windSpeedCurrent
static float windSpeedCurrent
Definition
Main.cs:1360
Terraria.Main.hasFocus
static bool hasFocus
Definition
Main.cs:1781
Terraria.Main.gamePaused
static bool gamePaused
Definition
Main.cs:1072
Terraria.Main
Definition
Main.cs:79
Microsoft.Xna.Framework
Definition
AlphaTestEffect.cs:1
Terraria.GameContent.Shaders
Definition
BlizzardShaderData.cs:4
Terraria.Graphics.Shaders
Definition
ArmorShaderData.cs:6
Microsoft.Xna.Framework.Vector2.Zero
static Vector2 Zero
Definition
Vector2.cs:27
Microsoft.Xna.Framework.Vector2.Normalize
void Normalize()
Definition
Vector2.cs:131
Microsoft.Xna.Framework.Vector2
Definition
Vector2.cs:12
source
Terraria.GameContent.Shaders
BlizzardShaderData.cs
Generated by
1.10.0