작성
·
103
0
렌더 타겟을 SRV로 사용을 하려고 합니다.
우선 결론을 말씀드리면 기존에 투명 파티클인 Bubble 파티클 뒤에 보이는 픽셀들에
굴절 효과를 추가하려고 합니다.
그러기 위해 렌더 타겟을 텍스쳐로 만들어서 SRV로 파티클 셰이더에 텍스쳐로 보내려고 합니다.
제가 시도해본 과정입니다.
Scene의 RenderFinal 함수에서 shared_ptr로 renderTargetTexture을 가져와서
제가 만든 Resources 클래스의 멤버 변수인 _renderTargetTexture에 Set 하였습니다.
(원래는 리소스의 상태를 렌더 타겟에서 SRV로 수정을 했어야 하나, 결과가 똑같아서 제외하였습니다.)
그리고 파티클 시스템의 FinalUpdate에서 RenderTargetTexture를 가져와서 0번 텍스쳐에 Set을 해주었습니다.
아래는 실행 결과입니다.
빨간색으로 표시된 부분은 제가 기존에 만들어봤던 파티클들이고
파란색으로 표시된 부분은 렌더 타겟을 텍스쳐로 만들어 셰이더에 전달한 것을 출력하는 파티클들 입니다.
결과를 보면 렌더 타겟에 보이는 빨간 부분 파티클들이 제대로 파란색 표시된 쪽에 출력이 된 것을 확인할 수 있었습니다.
그러나 렌더 타겟으로 파티클을 띄웠으면 배경이나 (가운데 잘 안보이지만) 구 객체도 같이 출력이 되었어야 하는데 파티클들만 출력이 된 것을 확인할 수 있었습니다.
아마 예상으로는 구나 배경(디퍼드 렌더링)을 찍는 0번 카메라와 파티클(포워드 렌더링)을 찍는 1번 카메라 중 1번 카메라만 렌더 타겟 텍스쳐로 전달이 되어서 발생하는 문제라고 생각했습니다.
PIX로 디버깅을 해본 결과
여기는 또 이상하게 렌더 타겟에 보이는 모든 객체들이 셰이더에 SRV로 잘 전달이 되었다고 나오고 있습니다.
렌더링이 올바르게 되지 않는 결과를 알고 싶습니다.
또한 투명 파티클 뒤의 픽셀들을 굴절시키는 다른 좋은 방법이 있다면 그것 또한 알고 싶습니다.
답변 1
0
안녕하세요, 인프런 AI 인턴입니다. ohtak6843님 질문에 답변드리겠습니다.
렌더 타겟을 SRV로 사용하는 과정에서 발생한 문제에 대해 설명드리겠습니다. 현재 파티클 외에 배경이나 다른 객체들이 렌더 타겟 텍스처에 포함되지 않는 문제를 겪고 계신 것 같습니다. 이 문제는 주로 렌더링 시에 잘못된 카메라 또는 렌더 패스 설정으로 인해 발생할 수 있습니다.
카메라 설정 확인:
렌더 타겟 Texture 재설정 여부:
렌더 상태 변경:
PIX 디버깅 확인:
굴절 효과:
Transition 질문있읍니다. - 바이패스 및 렌더링 상태 변경에 관한 설명이 도움이 될 것입니다.
Texture 샘플링 관련해서 질문이 있습니다. - 텍스처 샘플링과 셰이더에서의 처리 과정을 이해하는데 유익한 정보가 포함되어 있습니다.
추가로 질문해 주신 방법 등에 대한 직접적인 예시가 없다면 직접 문서화를 통해 문제를 해결해 나가거나, 보다 심화된 셰이더 과정을 학습하셔서 나중에 더욱 복잡한 효과를 구현해보시는 것도 좋겠습니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.