THREE.ShaderLib.phong texture support

I was recently trying to debug some shader issues I was encountering, and in doing so tried going back to the simplest case, which for me was defining a THREE.ShaderMaterial using THREE.ShaderLib.phong. Everything worked great with colors, transparency, etc., but textures weren’t working as expected.

  • Set uniforms.map.value = texture;.
    • Mesh appeared with no texture.
  • Added map: true to the parameters.
    • Received the console warning: “THREE.ShaderMaterial: ‘map’ is not a property of this material.“.
  • After creating the material, set mat.map = true;.
    • The texture set in the uniform appeared on the mesh.

So the only way to get a texture on the ShaderMaterial was to set a parameter of the material that technically isn’t a parameter of the material. If this is the intended behavior, I’ll ignore it and move along.

You can see the working example here (code below, apologies for the giant data:image/png): http://jsfiddle.net/TheJim01/jwx1jom8/

// Generic Viewer

var useShader = true;

function createMaterial(texture){
    var mat = null;

    if(!useShader){
        // This works fine.
        mat = new THREE.MeshBasicMaterial({
            map: texture,
            side: THREE.DoubleSide
        });
    }
    else{
        var uniforms = THREE.UniformsUtils.clone(THREE.ShaderLib.phong.uniforms);
        uniforms.map.value = texture;

        var parameters = {
            fragmentShader: THREE.ShaderLib.phong.fragmentShader,
            vertexShader: THREE.ShaderLib.phong.vertexShader,
            uniforms: uniforms,
            lights: true,
            fog: false,
            side: THREE.DoubleSide,
            blending: THREE.NormalBlending,
            transparent: (uniforms.opacity.value < 1.0)
        };

        mat = new THREE.ShaderMaterial(parameters);
        mat.map = true; // Not a parameters of ShaderMaterial, but necessary to use texture
    }

    return mat;
}

function addGeometry(){
    var textureReady = function(img){
        // getting rid of warning for non-power-of-two image
        img.minFilter = THREE.LinearFilter;

        var msh = new THREE.Mesh(getPlaneGeometry(), createMaterial(img));
        scene.add(msh);
    }
    THREE.ImageUtils.loadTexture(getTextureURL(), {}, textureReady);
}

var hostDiv, scene, renderer, camera, controls, light;

function init() {
    hostDiv = document.createElement('div');
    hostDiv.style.width = '500px';
    hostDiv.style.height = '500px';
    document.body.appendChild(hostDiv);

    renderer = new THREE.WebGLRenderer({ antialias: true, preserverDrawingBuffer: true });
    renderer.setSize(500, 500);
    hostDiv.appendChild(renderer.domElement);

    camera = new THREE.PerspectiveCamera(35, 500 / 500, 1, 1000);
    camera.position.z = 500;

    controls = new THREE.TrackballControls(camera, renderer.domElement);

    light = new THREE.PointLight(0xffffff, 1, Infinity);
    light.position.copy(camera.position);

    scene = new THREE.Scene();
    scene.add(camera);
    scene.add(light);

    animate();
}

function render() {
    light.position.copy(camera.position);

    renderer.render(scene, camera);

    controls.update();
}

function animate() {    
    requestAnimationFrame(animate);
    render();
}

function getPlaneGeometry(){
    /**
     * Faces are arranged:
     * 1 - 0
     *   \ |
     *     2
     * 3
     * | \
     * 4 - 5
     */
    var geo = new THREE.BufferGeometry();
    geo.addAttribute('position', new THREE.BufferAttribute(new Float32Array([
        100,100,0,
        -100,100,0,
        100,-100,0,
        -100,100,0,
        -100,-100,0,
        100,-100,0
    ]), 3));
    geo.addAttribute('normal', new THREE.BufferAttribute(new Float32Array([
        0,0,1,
        0,0,1,
        0,0,1,
        0,0,1,
        0,0,1,
        0,0,1
    ]), 3));
    geo.addAttribute('uv', new THREE.BufferAttribute(new Float32Array([
        1,1,
        0,1,
        1,0,
        0,1,
        0,0,
        1,0
    ]), 2));
    return geo;
}

function getTextureURL(){
    // CREDIT: https://commons.wikimedia.org/wiki/File:ILS_gauge.svg
    return 'data:image/png;base64,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';
}

init();
addGeometry();

Author: Fantashit

1 thought on “THREE.ShaderLib.phong texture support

Comments are closed.