0
私はこのしたいのですが:ブレンディングとデプステストを同時に使用できますか?
描画オブジェクト1(IはglDrawElementまたはglDrawArrayを使用する必要があるため、デプステストを使用する必要があります) 描画オブジェクト2
ブレンド1および2(OBJ 1 +透明obj2が単純な擬似コードによって説明する)
、
glEnable(GL_BNELD);
/// draw obj1 ///
glEnable(GL_DEPTH_TEST);
glUniform4f(color1,1.0f);
glDrawElements(...) // draw obj1
glDisable(GL_DEPTH_TEST);
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
/// draw obj2 ///
glEnable(GL_DEPTH_TEST);
glUniform4f(color2,0.5f);
glDrawElements(...) // draw obj2
glDisable(GL_DEPTH_TEST);
glDisable(GL_BLEND);
Iは、これらのブレンド及び深さテストが同時に使用されない場合、任意の代替があることを聞きましたか? (実際には上記コードの結果は奇妙に見えます)
はい、あなたは何をしているのかを知る必要がありますが(アーティファクトを避けるために)、これは助けになるでしょう:[OpenGL - オーダーに依存しない透明性を作成する方法](http://stackoverflow.com/a/37783085/2521214) – Spektre