Initial commit
This commit is contained in:
commit
dd58a721ec
8 changed files with 617 additions and 0 deletions
41
shdProjectileEffect.vsh
Normal file
41
shdProjectileEffect.vsh
Normal file
|
|
@ -0,0 +1,41 @@
|
|||
attribute vec3 in_Position;
|
||||
attribute vec4 in_Colour;
|
||||
attribute vec2 in_TextureCoord;
|
||||
attribute vec3 in_Colour0;
|
||||
attribute vec2 in_Colour1;
|
||||
attribute float in_Colour2;
|
||||
attribute vec3 in_Colour3;
|
||||
attribute float in_Colour4;
|
||||
attribute vec3 in_Colour5;
|
||||
|
||||
#define in_Offset in_Colour0
|
||||
#define in_Scale in_Colour1
|
||||
#define in_Angle in_Colour2
|
||||
#define in_RotationDirection in_Colour3
|
||||
#define in_Animation in_Colour4
|
||||
#define in_Hsv in_Colour5
|
||||
|
||||
varying vec2 v_vTexcoord;
|
||||
varying vec4 v_vColour;
|
||||
varying vec3 v_vHsv;
|
||||
|
||||
mat4 rotation_matrix_3d(vec3 axis, float angle) {
|
||||
float s = sin(angle);
|
||||
float c = cos(angle);
|
||||
float oc = 1.0 - c;
|
||||
|
||||
return mat4(
|
||||
oc * axis.x * axis.x + c, oc * axis.x * axis.y - axis.z * s, oc * axis.z * axis.x + axis.y * s, 0.0,
|
||||
oc * axis.x * axis.y + axis.z * s, oc * axis.y * axis.y + c, oc * axis.y * axis.z - axis.x * s, 0.0,
|
||||
oc * axis.z * axis.x - axis.y * s, oc * axis.y * axis.z + axis.x * s, oc * axis.z * axis.z + c, 0.0,
|
||||
0.0, 0.0, 0.0, 1.0);
|
||||
}
|
||||
|
||||
void main() {
|
||||
mat4 rotmat = rotation_matrix_3d(in_RotationDirection, in_Angle);
|
||||
vec4 pos = vec4(in_Position.xy * in_Scale, in_Position.z, 1.0) * rotmat + vec4(in_Offset, 0.0);
|
||||
gl_Position = gm_Matrices[MATRIX_WORLD_VIEW_PROJECTION] * pos;
|
||||
v_vColour = in_Colour;
|
||||
v_vTexcoord = in_TextureCoord + vec2(in_Animation, 0.0);
|
||||
v_vHsv = in_Hsv;
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue