mirror of
https://gitlab.com/shinovon/re3-symbian.git
synced 2026-05-22 17:47:20 +03:00
29 lines
931 B
C++
29 lines
931 B
C++
const char *skin_vert_src =
|
|
"uniform mat4 u_boneMatrices[24];\n"
|
|
|
|
"VSIN(ATTRIB_POS) vec3 in_pos;\n"
|
|
|
|
"VSOUT vec4 v_color;\n"
|
|
"VSOUT vec3 v_tex0_fog;\n"
|
|
|
|
"void\n"
|
|
"main(void)\n"
|
|
"{\n"
|
|
" vec3 SkinVertex = vec3(0.0, 0.0, 0.0);\n"
|
|
" \n"
|
|
" SkinVertex += (u_boneMatrices[int(in_indices.x)] * vec4(in_pos, 1.0)).xyz * in_weights.x;\n"
|
|
" SkinVertex += (u_boneMatrices[int(in_indices.y)] * vec4(in_pos, 1.0)).xyz * in_weights.y;\n"
|
|
" SkinVertex += (u_boneMatrices[int(in_indices.z)] * vec4(in_pos, 1.0)).xyz * in_weights.z;\n"
|
|
" SkinVertex += (u_boneMatrices[int(in_indices.w)] * vec4(in_pos, 1.0)).xyz * in_weights.w;\n"
|
|
|
|
" vec4 Vertex = u_world * vec4(SkinVertex, 1.0);\n"
|
|
" gl_Position = u_proj * u_view * Vertex;\n"
|
|
|
|
" v_color = in_color;\n"
|
|
" v_color.rgb += u_ambLight.rgb*surfAmbient;\n"
|
|
" v_color = clamp(v_color, 0.0, 1.0);\n"
|
|
" v_color *= u_matColor;\n"
|
|
|
|
" v_tex0_fog = vec3(in_tex0.x, in_tex0.y, DoFog(gl_Position.w));\n"
|
|
"}\n"
|
|
;
|