我正在使用本教程学习three.js:http: //demo.bkcore.com/threejs/webgl_tron_glow_seq.html。本教程本身工作正常,但我自己的代码,基于它失败,错误如下:
ERROR: 0:26: 'nuniform' : syntax error Three.js:325
precision highp float;
#define MAX_DIR_LIGHTS 0
...
uniform vec3 cameraPosition;
uniform sampler2D tDiffuse;nuniform sampler2D tGlow;nvarying vec2 vUv;nvoid main() {nvec4 texel = texture2D( tDiffuse, vUv );nvec4 glow = texture2D( tGlow, vUv );ngl_FragColor = texel + vec4(0.5, 0.75, 1.0, 1.0) * glow * 2.0;n}
ERROR: 0:62: 'nvoid' : syntax error Three.js:325
precision highp float;
#define VERTEX_TEXTURES
...
varying vec2 vUv;nvoid main() {nvUv = vec2( uv.x, 1.0 - uv.y );ngl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );n}
等等
看起来浏览器(谷歌浏览器)没有正确解析带有编码在其中的着色器的字符串。来自三个.js 源(缩小版)的代码中出现错误。
一看,代码就ok了。
我只是错过了一些东西,但我不知道到底是什么。
有什么帮助吗?