Resizable Bar & D3D12 GPU Upload Heaps
이전에 한번 발표했던 D3D12 GPU Upload Heaps 주제에 대해서 자료를 보강해서 최근에 다시 기술방송을 진행했습니다.
이전에 한번 발표했던 D3D12 GPU Upload Heaps 주제에 대해서 자료를 보강해서 최근에 다시 기술방송을 진행했습니다.
인프런에서 유료로 시청하실 수 있습니다.https://inf.run/WYdms
초기(VS2015시절) D3D12와 현재 최신 D3D12 SDK의 D3D12_RESOURCE_STATES 열거형 비교. 요 몇 일 전에 ID3D12Debug5::SetEnableGPUBasedValidation()함수의 존재를 알게 되어 GPU Validation을 켜고 테스트를 돌렸다.이전까지 d3d validation을 다 통과해왔는데 ID3D12Debug5의 GPU validation을 켜니 새로운 에러가 쏟아져 나왔다. 가장 이해가 안됐던게 Texture Layout Barrier가 호환되지 않는다는 에러.구글링 해봐도 전혀 정보가 없다. 어제 하루종일 삽질한 끝에 Resource Barrier문제란걸 알았다.이게 D3D12_RESOURCE_STATE_NON_PIXEL_SHADER_RESOURCE와 … More 추가된 D3D12_RESOURCE_STATES 열거형 – D3D12_RESOURCE_STATE_ALL_SHADER_RESOURCE
최근 기술방송 -D3D12게임프로젝트 로딩성능 개선 ( https://www.youtube.com/live/R_sMY_jjZnE?si=qGerBiAmCkMehLbp )- 에서 언급했다시피 CreateCommittedResource()함수가 엄청 느리기 때문에 할당하는 버퍼 수가 많다면 성능에 상당한 영향을 준다. 이 문제를 해결하기 위해 D3D12Resource를 Heap에 맵핑한 D3DResourceBufferHeap를 만들었고 주요 매시 데이터는 D3DResourceBufferHeap에서 할당하도록 했다. 다만 RayTracing을 위한 BLAS메모리는 아직 처리하지 못했다. DXR렌더러에서 BLAS생성하느라 D3D12Resource를 엄청 많이 할당하는데 이게 성능에 적지 않게 영향을 … More DXR의 BLAS 할당 최적화
2023년 9월 13일 방송분입니다.
D3D12 Mesh Shader소개2023년 8월 16일 방송분입니다.
D3D12 샘플 코드 설명 및 D3D12관련 잡담 part 2 2023년 7월 6일 방송분입니다.
VOXEL HORIZON의 XBOX와 PC와 iPhone간의 네트워크 플레이 테스트. [지원 플랫폼]Windows Desktop(DX11/DX12/DXR)XBOX ONE(UWP on XBOX-DirectX11 feature level 11)XBOX Series S/X(UWP on XBOX-DirectX12 feature level 11)iPhone/iPad Devices(A12 Processor 이상 필요)mac(Apple Silicon) [사용된 기술]iOS/macOS – macOS API + metal API + BSD Socket + C++Windows Desktop – DirectX 11/12/DXR + winsock + IOCP + C++XBOX(UWP on XBOX) – … More VOXEL HORIZON iPhone XBOX PC 네트워크 플레이 테스트
건물 오브젝트에 이어 스키닝된 동적 매쉬들을 실시간으로 Acceleration Structure에 반영시켰다.Acceleration Structure 업데이트에 많은 비용이 들어갈걸로 추측하고 있기 때문에 일단 60FPS제한을 걸었다. 캐릭터 오브젝트의 변환(애니메이션, 위치, 스케일, 회전)을 Compute Shader에서 처리. 변환된 버텍스 데이터는 UAV로 전달된 ID3D12Resource에 저장. ID3D12Resource와 연관된 Bottom Level Acceleration Structure를 갱신. Top Level Acceleration Structure를 갱신. DXR의 가장 중요한 포인트는 ‘렌더링할 장면을 … More DXR – Update Acceleration Structure
이전 포스팅 참고. https://megayuchi.com/2018/03/29/surface-book%ec%97%90%ec%84%9c-%eb%82%98%ed%83%80%eb%82%98%eb%8a%94-60fps-%ec%a0%9c%ed%95%9c-%ed%98%84%ec%83%81/ 이 빌어먹을 현상이 dGPU + 내장 GPU 구성을 가지는 다른 노트북에선 이 현상이 발생하지 않는다. 적어도 내가 테스트한 바로는 오직 서피스북에서만 발생했다. 하여간 엊그제 트위터 타임라인에 DX12개발자 계정이 BLT대신 FLIP방식을 사용하라는 문서를 공유했다. 혹시나 해서 읽어보다가 DXGI_SWAP_CHAIN_FLAG_ALLOW_TEARING옵션을 처음 알게 됐다. 오늘 SwapChain만들때 DXGI_SWAP_CHAIN_FLAG_ALLOW_TEARING값을 넣어보니 서피스북에서 60프레임 락이 드디어 풀리는걸 확인했다. 이 … More Surface Book에서 60프레임 락 해결방법
댓글을 달려면 로그인해야 합니다.