小编Eth*_*sey的帖子

使用着色器材料的标准材料。USE_MAP 突然停止工作,“maptexelToLinear;找不到匹配的重载函数”



我正在使用来自 github 的最新的three.js 版本,它是在前一天晚上更新的。

这段代码几天前可以工作,但没有更改代码,昨天就停止工作了。它maptexelToLinear; no matching overloaded function found在 map_fragment shaderChunk 的第 6 行给出了错误信息:

vec4 texelColor = texture2D( map, vUv );
texelColor = mapTexelToLinear( texelColor ); //here
Run Code Online (Sandbox Code Playgroud)

有什么改变吗?这仍然是从着色器材料创建标准材料的正确方法吗?与定义,扩展和地图统一?

https://jsfiddle.net/EthanHermsey/c4sea1rg/119/

    let texture = new THREE.TextureLoader().load(

        document.getElementById( 'blockDiff' ).src

    );


    // this works fine
    /* let mat = new THREE.MeshStandardMaterial( {

           map: texture

    } ) */



    // this does not
    let mat = new THREE.ShaderMaterial( {

        //custom shaders
        // vertexShader: document.getElementById( 'blockVertexShader' ).textContent,
        // fragmentShader: document.getElementById( 'blockFragmentShader' ).textContent,

        //The …
Run Code Online (Sandbox Code Playgroud)

three.js

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

标签 统计

three.js ×1