@three.ez/instanced-mesh
Version:
Enhanced InstancedMesh with frustum culling, fast raycasting (using BVH), sorting, visibility management and more.
3 lines • 934 B
TypeScript
declare const _default: "\n#ifdef USE_SKINNING\n uniform mat4 bindMatrix;\n uniform mat4 bindMatrixInverse;\n uniform highp sampler2D boneTexture;\n\n #ifdef USE_INSTANCING_SKINNING\n uniform int bonesPerInstance;\n #endif\n\n mat4 getBoneMatrix( const in float i ) {\n int size = textureSize( boneTexture, 0 ).x;\n\n #ifdef USE_INSTANCING_SKINNING\n int j = ( bonesPerInstance * int( instanceIndex ) + int( i ) ) * 4;\n #else\n int j = int( i ) * 4;\n #endif\n\n int x = j % size;\n int y = j / size;\n vec4 v1 = texelFetch( boneTexture, ivec2( x, y ), 0 );\n vec4 v2 = texelFetch( boneTexture, ivec2( x + 1, y ), 0 );\n vec4 v3 = texelFetch( boneTexture, ivec2( x + 2, y ), 0 );\n vec4 v4 = texelFetch( boneTexture, ivec2( x + 3, y ), 0 );\n return mat4( v1, v2, v3, v4 );\n }\n#endif\n";
export default _default;
//# sourceMappingURL=instanced_skinning_pars_vertex.glsl.d.ts.map