Subversion Repositories AndroidProjects

Rev

Rev 1794 | Rev 1815 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed

#version 120

uniform mat4 uMVPMatrix;
uniform mat3 uNormalMatrix;

uniform mat4 uBoneMatrices[16];

attribute vec4 aPosition;
attribute vec3 aNormal;
attribute vec2 aTexCoord0;
attribute vec4 aBlendIndex;
attribute vec4 aBlendWeight;

varying vec2 vTexCoord;
varying vec3 vNormal;

void main()
{
        /*vec4 position = vec4(0.0);*/
        vec4 position = aPosition;
        mat4 mat = uBoneMatrices[0];
        position.x = position.x + mat[int(aBlendIndex.x)][0];
        
        /*position = position + (uBoneMatrices[int(aBlendIndex.x)] * aPosition) * aBlendWeight.x;       
        position = position + (uBoneMatrices[int(aBlendIndex.y)] * aPosition) * aBlendWeight.y;
        position = position + (uBoneMatrices[int(aBlendIndex.z)] * aPosition) * aBlendWeight.z;
        position = position + (uBoneMatrices[int(aBlendIndex.w)] * aPosition) * aBlendWeight.w;*/
        
        gl_Position = uMVPMatrix * position;
        vNormal = uNormalMatrix * aNormal;
        
        vTexCoord = aTexCoord0;
}