2013-08-29 3 views
1

조각 쉐이더 코드

function getFragmentShader() { 
    return ["in vec3 ex_Color;", 
    "out vec4 out_Color;", 
    "void main(void) {", 
    "out_Color = vec4(ex_Color,1.0);", 
    "}"].join("\n"); 
} 

사용 쉐이더 문자열을 얻을 컴파일이 기능은, 그것은 나에게 다음과 같은 오류 줄 때 :WebGL을 - compileShader 구문 오류

ERROR:0:1:": syntax error 

내가 테스트하는 크롬을 사용하고를 이. "이 언제 어떻게 도입되는지 잘 모르겠습니다. gl.shaderSource에 전달 된 문자열을 볼 때 "이 표시되지 않습니다. 이 문제를 해결할 수있는 모든 의견을 보내 주시면 대단히 감사하겠습니다.

+0

OpenGL ES 쉐이딩 언어 (GLSL ES) 대신 HTSL 쉐이더 코드를 사용하려는 것 같습니다. 배열 대신 단일 문자열을 전달하려고합니다. – moka

답변

1

문제는 기본적으로 셰이더 프로그램에서 x/y와 같은 부분이 둘 중 하나의 값이 Float 값이면 Float이어야합니다. 크롬은이 문제를 "으로 지적했으나 모질라는 정확하게 정확한 문제를 지적하는 데 정확했다.