게시글
질문&답변
MeshObject 공용 사용 방법
네. 맞습니다. 실제로는 별도의 매쉬오브젝트를 생성하고 각각 BLAS를 가집니다.일단 주석의 "meshobject를 공용으로 쓰도록 한다."는 의미는 다음과 같습니다.1. CreateBasicMeshObject()로 생성한 CBasicMeshObject는 이름이나 id로 탐색할 수 있도록 자료구조에 넣어둡니다. 예를 들어 최초의 박스 매시를 만들때 생성한 CBasicMeshObject를 "box_mesh_obj"라는 이름으로 해시테이블에 등록할 수도 있겠죠.2. 이제 CreateBoxMeshObject()할 때마다 매번 CreateBasicMeshObject()를 호출하는 대신 자료구조에서 CBasicMeshObject를 찾아서 pMeshObj->CreateBLAS()를 호출합니다.3. 이때 pMeshObj는 이미 내부에 VetexBuffer와 IndexBuffer, 그리고 이미 공유되고 있는 texture를 다 들고 있으므로 이 리소스들을 '읽기전용'으로 하여 BLAS를 생성합니다. 이 시점에서 vertex buffer, index buffer, texture 리소스는 여러개의 BLAS resource간에 공유가 됩니다.4. BLAS resource자체도 공유가 가능한데 제 개인 프로젝트에서 BLAS resource의 공유는 instancing할 때만 사용하고 있습니다. 이 경우 TLAS를 빌드할 때 하나의 BLAS resource를 여러 개의 TLAS Instance로 넣어줍니다. 다만 TLAS Instance마다 행렬만 다르게 넣어줍니다. 이 행렬들로 위치와 스케일 회전을 제어합니다.5. 주석의 "meshobject를 공용으로 쓰도록 한다."라고 하는 것은 1,2,3번에 해당하는 얘기입니다. 당초 예제를 작성할 때는 vertex buffer와 index buffer를 공유시킬 예정이었으나 예제로 사용하기에 코드가 너무 복잡해지는 감이 있어서 공유하지 않도록 최종 작성되었습니다.혼란을 드려 죄송합니다. 지적 감사합니다.참고로 다음의 영상을 참고하시면 매시공유가 어떤 의미인지 이해하기 쉬울겁니다.https://www.youtube.com/live/ALcVb5b68Zw?si=GHNimcScnm0dkd_p&t=3384
- 1
- 2
- 30
질문&답변
BuildBLAS 할당 리소스 사이즈
그렇습니다. info.ResultDataMaxSizeInBytes가 맞습니다. 소스코드 수정해서 올렸습니다. 감사합니다.
- 0
- 2
- 18
질문&답변
ConstnatBufferPool관련 질문
말씀하신대로 sizeof(CONSTANT_BUFFER_TYPE_RAY_TRACING)가 아니라 sizeof(CONSTANT_BUFFER_RAY_TRACING)가 맞습니다.이것이 문제없이 돌아갔던 이유는 constant buffer의 기본 align 사이즈가 256바이트이고, 버퍼를 만들때 256바이트 align하도록 했기 때문입니다. sizeof(CONSTANT_BUFFER_TYPE_RAY_TRACING)는 4지만 256바이트 align 하면 256이 되므로 sizeof(CONSTANT_BUFFER_RAY_TRACING)보다 충분히 큰 사이즈라 돌아가는데는 문제가 없었습니다. 어쨌든 코드는 잘못되었으므로 수정해서 다시 업로드했습니다. 감사합니다.
- 0
- 2
- 17
질문&답변
7강 스레드제어 강의, 26분경 질문입니다.
말씀하신대로 0이 맞습니다.제가 실수했네요.
- 1
- 1
- 36
질문&답변
CommandList의 GraphicsCommandList 변경이유
ID3D12CommandList는 그래픽스 커맨드 레코딩이 불가능합니다. 작동이 아예 불가하기 ID3D12CommandList로 사용했던 적이 없을텐데 이상하네요. 코드 라인을 긁어서 질문해주시면 좀더 자세하게 답변해드릴 수 있을것 같습니다.
- 0
- 2
- 59
질문&답변
[25:13] Virtual Interface 와 COM Interface간의 차이가 궁금합니다.
in-process COM은 virtual 함수로 구현됩니다. 실제로 직접 COM객체를 구현해도 C++의 virtual interface를 사용해서 구현하게 됩니다. 따라서 사전적 의미로는 COM Interface와 virtual interface가 다른 말일지라도 실질적으론 같은 말입니다.
- 0
- 1
- 58
질문&답변
C++ 강의 계획이 있으신지 궁금합니다
c++ 강의는 워낙에 널려있어서 프로그래밍 언어에 대한 집착이 적은 저같은 사람이 진행하기엔 적합하지 않다고 생각합니다. 따라서 c++강의계획은 고려하고 있지 않습니다.
- 0
- 2
- 128
질문&답변
windbg ifeo 관련 질문
store app권한제한을 우회할 수 있는 방법은 없는 것으로 압니다. 구버전을 쓰시는 방법밖에 없을것 같네요.
- 0
- 2
- 85
질문&답변
원격 디버그가 안붙어요
가상환경이 32bits여야 할 필요는 없습니다.vm쪽에서 kdnet을 실행해보시고 Network debugging is supported by this Microsoft Hypervisor Virtual Machine.라는 메시지가 출력되는지 확인해보세요. 그럴 가능성은 낮아보입니다만 NIC에 따라 네트워크 디버깅이 지원되지 않을 수 있습니다.(사진)호스트 장비의 ip가 192.168.0.100이 맞나요? 저 ip는 제 장비의 ip인데 그대로 복붙하신게 아닌가 싶네요. VM측에서 host쪽으로 ping을 해서 실제 네트워크 연결이 가능한지 확인해보세요.
- 0
- 1
- 150
질문&답변
21분 PAE 약자
Physical Address Extension이 맞습니다.다음 링크를 참고해주세요.https://learn.microsoft.com/en-us/windows/win32/memory/physical-address-extension
- 0
- 2
- 120




