質問編集履歴
1
文章を修正
title
CHANGED
File without changes
|
body
CHANGED
@@ -1,6 +1,8 @@
|
|
1
1
|
提示コードですが`Draw_Final()`関数部を実行するとブラーの掛かっていた`pingpongColorbuffers[0]`変数のテクスチャがブラーの掛かっていない時の画像に戻されてしまいます。また`Draw_Final()`をコメントアウトするとブラーの掛かった提示画像のようなものが表示されます。
|
2
2
|
デバッグの結果何かしらの原因で`pingpongColorbuffers[0]`変数が操作されているものと考えられるのですがこれは何が原因なのでしょうか?
|
3
3
|
|
4
|
+
#### 現状追記
|
5
|
+
`Draw_Final()`関数が実行されることによってpingpongColorbuffers[1]がDraw_Final()のシェーダーによって書き換わることがわかりました。
|
4
6
|
##### 説明
|
5
7
|
/////コメント部内部がbloom効果を発するコードです。
|
6
8
|
pingpongColorbuffers[2]配列にはブラーの掛かったフレームバッファが入る
|
@@ -21,17 +23,7 @@
|
|
21
23
|
glEnable(GL_CULL_FACE); //カリングを有効
|
22
24
|
glCullFace(GL_BACK); //裏面を無効
|
23
25
|
|
24
|
-
|
25
|
-
glBindFramebuffer(GL_FRAMEBUFFER, depthMapFBO);
|
26
|
-
glEnable(GL_DEPTH_TEST);
|
27
|
-
glViewport(0,0, FrameWork::windowContext->getSize().x, FrameWork::windowContext->getSize().y);
|
28
|
-
glClearColor(0.1f, 0.1f, 0.1f, 1.0f);
|
29
26
|
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
|
30
|
-
|
31
|
-
|
32
|
-
glBindFramebuffer(GL_FRAMEBUFFER, hdrFBO);
|
33
|
-
|
34
|
-
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
|
35
27
|
glClearColor(0.1f, 0.1f, 0.1f, 1.0f);
|
36
28
|
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
37
29
|
sprite->Draw(getViewProjection(), glm::vec3(0, 0, -200), 0, 0.0f, glm::vec2(1.0, 1.0), glm::vec2(0, 0), glm::vec2(100, 100)); //カラーバッファ
|