@Override public void main() { RVec2 textureCoord = (RVec2)getGlobal(DefaultShaderVar.G_TEXTURE_COORD); RVec3 texNormal = new RVec3("texNormal"); RVec3 normal = (RVec3)getGlobal(DefaultShaderVar.G_NORMAL); for(int i=0; i<mTextures.size(); i++) { texNormal.assign(castVec3(texture2D(muTextures[i], textureCoord))); texNormal.assign(texNormal.rgb().multiply(2)); texNormal.assignSubtract(1); texNormal.assign(normalize(texNormal)); if(mTextures.get(i).getInfluence() != 1) texNormal.assignMultiply(mTextures.get(i).getInfluence()); normal.assign(normalize(texNormal.add(normal))); } }
@Override public void main() { RVec2 textureCoord = (RVec2)getGlobal(DefaultShaderVar.G_TEXTURE_COORD); RVec3 texNormal = new RVec3("texNormal"); RVec3 normal = (RVec3)getGlobal(DefaultShaderVar.G_NORMAL); for(int i=0; i<mTextures.size(); i++) { texNormal.assign(castVec3(texture2D(muTextures[i], textureCoord))); texNormal.assign(texNormal.rgb().multiply(2)); texNormal.assignSubtract(1); texNormal.assign(normalize(texNormal)); if(mTextures.get(i).getInfluence() != 1) texNormal.assignMultiply(mTextures.get(i).getInfluence()); normal.assign(normalize(texNormal.add(normal))); } }
@Override public void main() { RVec4 position = (RVec4)getGlobal(DefaultShaderVar.G_POSITION); RVec3 normal = (RVec3)getGlobal(DefaultShaderVar.G_NORMAL); RVec4 aPosition = (RVec4)getGlobal(DefaultShaderVar.A_POSITION); RVec3 aNormal = (RVec3)getGlobal(DefaultShaderVar.A_NORMAL); // // -- position = aPosition + uInterpolation * (aNextFramePosition - aPosition); // position.assign(aPosition.add(muInterpolation.multiply(enclose(maNextFramePosition.subtract(aPosition))))); // // -- normal = aNormal + uInterpolation * (aNextFrameNormal - aNormal); // normal.assign(aNormal.add(muInterpolation.multiply(enclose(maNextFrameNormal.subtract(aNormal))))); }
@Override public void main() { RVec4 position = (RVec4)getGlobal(DefaultShaderVar.G_POSITION); RVec3 normal = (RVec3)getGlobal(DefaultShaderVar.G_NORMAL); RVec4 aPosition = (RVec4)getGlobal(DefaultShaderVar.A_POSITION); RVec3 aNormal = (RVec3)getGlobal(DefaultShaderVar.A_NORMAL); // // -- position = aPosition + uInterpolation * (aNextFramePosition - aPosition); // position.assign(aPosition.add(muInterpolation.multiply(enclose(maNextFramePosition.subtract(aPosition))))); // // -- normal = aNormal + uInterpolation * (aNextFrameNormal - aNormal); // normal.assign(aNormal.add(muInterpolation.multiply(enclose(maNextFrameNormal.subtract(aNormal))))); }