Окружающая среда: WebGL, Chrome. У меня есть следующее поведение при использовании прозрачных png в качестве текстур для моделей:
- Изображение A - дерево скрывает здание за ним, и я вижу текстуру в мире коробки. Он также скрывается (задние ветки не видны).
- В то же время - изображение B - работает правильно, окно прозрачно, и я вижу, что позади
Оба скриншота были сделаны на одной сцене одновременно с разных позиций камеры. Текстуры создаются по тому же алгоритму.
Я не могу понять, какая разница между прозрачностью окон и веток. Мой главный вопрос: как исправить ветки, чтобы не скрывать объекты позади них? Шейдерный код:
gl_FragColor = vec4(textureColor.rgb * vLightWeighting, textureColor.a);
Я играл с включением/отключением blending и depth_test, иногда получая желаемые результаты, но не уверен, что это правильный способ сделать что-то.