小编Ste*_*ord的帖子

three.js中带有顶点着色器的属性产生超出范围的顶点错误

我一直在尝试使用此链接来学习在Three.js中使用着色器,但不幸的是,这已经有些过时了,在尝试更新代码时,我到目前为止:

<script id="vshader" type="x-shader/x-vertex">
    attribute float displacement;

    varying vec3 vNormal;

    void main() {
        vNormal = normal;

        vec3 newPosition = position + normal * vec3(displacement);

        gl_Position = projectionMatrix * modelViewMatrix * vec4(newPosition, 1.0);
    }
</script>
<script id="fshader" type="x-shader/x-fragment">
    varying vec3 vNormal;

    void main() {
        vec3 light = vec3(0.5, 0.2, 1.0);

        light = normalize(light);

        float dprod = max(0.0, dot(vNormal, light));
        gl_FragColor = vec4(dprod, dprod, dprod, 1.0);
    }
</script>

var shaderProperties = {
    vertexShader: document.getElementById("vshader").textContent,
    fragmentShader: document.getElementById("fshader").textContent
};

var shaderMaterial = …
Run Code Online (Sandbox Code Playgroud)

javascript opengl-es webgl three.js

1
推荐指数
1
解决办法
1032
查看次数

标签 统计

javascript ×1

opengl-es ×1

three.js ×1

webgl ×1