【发布时间】:2013-05-09 13:29:08
【问题描述】:
我正在尝试从 THREE.ShaderLib 构建 phong 着色器。 这是我得到的:
var phongShader = THREE.ShaderLib.phong;
var uniforms = THREE.UniformsUtils.clone(phongShader.uniforms);
material = new THREE.ShaderMaterial({
uniforms: uniforms,
vertexShader: phongShader.vertexShader,
fragmentShader: phongShader.fragmentShader
});
它似乎不起作用。我做错了什么?
小提琴:http://jsfiddle.net/Jvf9k/2/ 类似的 SO 问题:Three js - Cloning a shader and changing uniform values
编辑:在 Tapio 答案的帮助下更新了小提琴。现在可以了!
【问题讨论】:
-
试试
THREE.ShaderLib['phong']; -
@gaitat - 在不同的符号(更长且可能效率更低)中,这只是同一件事。