Поведение прозрачных текстур в WebGL

Среда: WebGL, Chrome. У меня есть следующее поведение при использовании прозрачных PNG в качестве текстур для моделей:

Изображение A - дерево скрывает здание за ним, и я вижу текстуру мира. Он также прячется (задние ветви не видны)В то же время - изображение B - работает правильно, окно прозрачное, и я вижу, что позади

A:B:

Оба снимка экрана были сделаны на одной и той же сцене в одно и то же время с разных позиций камеры. Текстуры производятся по тому же алгоритму.

Я не могу понять, в чем разница между прозрачностью окон и веток. Мой главный вопрос - как починить ветки, чтобы не скрывать объекты за ними? Код шейдера:

gl_FragColor = vec4(textureColor.rgb * vLightWeighting, textureColor.a);

Я играл с включением / отключением смешивания и глубины_теста, иногда получая желаемые результаты, но не уверен, что это правильный способ сделать что-то.

Ответы на вопрос(2)

Ваш ответ на вопрос