게임엔진/크로스플랫폼 : HazelEngine

230822 Hazel GameEngine : IMGUI + FrameBuffer

mrawesome 2023. 8. 27. 19:59

참고 : 모든 정리 내용들 모두 복습 노트에 정리해두기 

 

1) 전체 Scene 을 Frame Buffer 에 그린다

그 Frame Buffer 를 Texture 로 변환한다.

그 Texture 를 가지고 Imgul:ImageView 를 이용하여 Render 한다.

 

2) 

기본 framebuffer에 있는 렌더 buffer의 위에서 동작되었습니다. 기본 framebuffer는 여러분이 윈도우 창을 생성할 때 생성됩니다(GLFW가 자동으로 해줍니다). 

glBindFramebuffer(GL_FRAMEBUFFER, fbo); 

해당 함수의 경우, 우리가 만든 FrameBuffer 를 Binding 시켜서

모든 렌더링 작업이 우리가 만든 FrameBuffer 에서 동작하게 하는 것이다.

 

다른 FrameBufer 에 렌더링 하는 것을 off-scrreen 렌더링이라고 부른다.

 

glBindFramebuffer(GL_FRAMEBUFFER, 0);

이렇게 Unbind 시키면 다시,  모든 렌더링 작업들을 메인 윈도우창에 나타나게 할 수 있다.