ThreeJS: Получить полезный журнал сборки шейдеров - PullRequest
2 голосов
/ 06 мая 2019

Когда мои пользовательские шейдеры ThreeJS содержат ошибки, я получаю очень загадочное сообщение INVALID_OPERATION в консоли JS на этапе рендеринга:

WebGL: INVALID_OPERATION: useProgram: program not valid

Есть ли способ получить более полезный журнал, напримеркак возвращаемое getShaderInfoLog () ?

(Чтобы проверить это быстро, можно добавить ошибки в шейдерах этого приложения .)

1 Ответ

5 голосов
/ 06 мая 2019

По соображениям производительности three.js R104 больше не выполняет проверку ошибок и создание отчетов при компиляции шейдерных программ. Однако несколько пользователей пожаловались на это изменение, поэтому оно было недавно отменено. В следующем выпуске R105 все будет так же, как и раньше (см. Руководство по миграции ).

Однако вы можете вручную включить предыдущее поведение в R104, установив renderer.debug.checkShaderErrors в true.

...