ダイスロールをシミュレートするアプリを作成しようとしていますが、現時点ではすべて正常に動作しています。ユーザーがサイコロを選択したときにシェーダーを追加しようとすると、選択したサイコロの周りにアウトラインが配置されます。これを行う方法は、特定のサイコロをわずかに拡大して完全に黒くレンダリングし、その上にテクスチャ付きのサイコロを描画して、輪郭があるように見せることです。
私が抱えている問題は、オブジェクトを黒く描画するためのシェーダーが最初に適用されたとき、黒いサイコロをうまく描画しますが、テクスチャ付きのサイコロをその上に描画しようとすると、間違った場所に描画し、間違ったものを描画することですサイコロ。奇妙なことに、画面上の他のサイコロの 1 つの中に描画されます。
同じシェーダーをオブジェクトに 2 回適用すると、すべてがその特定のシェーダーの想定どおりに描画されます (アウトライン シェーダーのためにすべてが黒くなるか、通常のシェーダーからすべてのテクスチャとライトが適用されます)。同じモデル、うまくいかない。
このクラスは頂点などをロードし、オブジェクトを描画します: http://pastebin.com/N5aYAtBC
このクラスはシェーダーを管理します: http://pastebin.com/0bT7ABRu
問題とは何の関係もないと思われる多くのコードを省略しましたが、さらに必要な場合はコメントを残してください
そして、別のサイコロをクリックすると、これが起こります(最初の写真は正常です): http://imgur.com/a/ikZVX