DirectX 12 introduces the next version of Direct3D, the 3D graphics API at the heart of DirectX. This version of Direct3D is faster and more efficient than any previous version. Direct3D 12 enables richer scenes, more objects, more complex effects, and full utilization of modern GPU hardware. It is supported on Windows 10 and Xbox One.
Questions tagged [directx-12]
347 questions
1
vote
0 answers
Failed to choose DirectX12 adapter
I'm using the Intellij IDE for Kotlin. I was trying the compose UI tutorial and when I ran a basic program I get this message 'Failed to choose DirectX12 Adapter. The window opens and appears to be working. What do I need to do to choose the…

JD74
- 257
- 1
- 8
1
vote
1 answer
ID3D12Device2: No such interface supported
I'm trying to call "m_pDevice->CreatePipelineState" for a MeshShader pipeline. But failed in "m_pDevice->QueryInterface" for obtaining a ID3D12Device2 handle.
ID3D12Device2* pDevice2; HRESULT hr = m_pDevice->QueryInterface(IID_PPV_ARGS(&pDevice2));…

Seize
- 11
- 2
1
vote
1 answer
How do I create and initialise a DXGI_FORMAT_NV12 resource in DX12 (source is AVFrame)
I'm trying to create an NV12 resource as source for a video encoder in DX12. While I intend to eventually populate a resource from GPU, what I'm trying to do now is take an ffmpeg AVFrame I already have (in AV_PIX_FMT_YUV420P format) and create a…

mike
- 1,192
- 9
- 32
1
vote
1 answer
Do two consecutive DirectX 12 Dispatch() calls run sequentially or concurrently on the GPU?
When running two Dispatch() calls consecutively, like:
m_computeCommandList->Dispatch(111, 1, 1);
m_computeCommandList->Dispatch(555, 1, 1);
Is it guaranteed that the second Dispatch() will run after the first Dispatch() on the GPU? Or, could they…

porente
- 371
- 2
- 14
1
vote
0 answers
Implementing Multi-GPU using the Unity Engine
I am currently working on a quite large, graphicaly demanding Unity project. So I decided that I want to implement a Multi-GPU approach in order to get enough performance to run my build. While researching I found out that implementing Multi-GPU…

Hale Jan
- 75
- 7
1
vote
1 answer
(DX12 Shadow Mapping) Depth buffer is always filled with 1
I'm really new to graphics programming in general, so please bear with me. I am trying to add shadow mapping from a distant light (orthogonal projection) into my scene, but when I follow the (very incomplete) steps from Frank Luna's DX12 book I find…

user722227
- 113
- 5
1
vote
1 answer
Creation of ID3D12Device10
How does one obtain a ID3D12Device10 handle from D3D12CreateDevice()? For me it fails with the error "No such interface supported". It works fine with ID3D12Device6. I'm on Windows 11 21H2 22000.856, and the SDK version is 10.0.22000.0.…

Luke Zhou
- 125
- 2
- 10
1
vote
2 answers
DX12) Even though they are ComPtr, Live Objects apears When Process Terminated
I'm making a ray tracing DX12 renderer, but ComPtr doesn't seem to release properly when I exit the process.(Press the x button to exit the window, or exit via WM_CLOSE or WM_DESTROY)
They are ComPtr and I think I didn't do anything about copying or…

Shark_Bladder
- 67
- 7
1
vote
1 answer
Create CommandQueue and Command Allocator using IID_PPV_ARGS
I am learning how to create CommandQueue, Command Allocator, and CommandList in DirectX 12.
However, a question arose in the process of creating each with the Create function.
The following is the code from the major.
ComPtr…

우현우
- 45
- 4
1
vote
2 answers
DirectX 12 do not update the pixel color after some frames
When I try to implement TAA, I update the pixel color like this:
float4 PS(VertexOut pin) : SV_Target
{
float2 currPos = pin.PosH.xy * gInvRenderTargetSize;
float2 histPos = currPos + gVelocityBuffer.Sample(gsamPointClamp, currPos).xy;
…

CarolGolang
- 11
- 3
1
vote
0 answers
How can I prevent Direct-X 12 from multi-adaptering?
I asked this question before here, but I want to ask something else on the topic. In Direct-X 12, does it default to multi-adapter and if so, where does it happen and how can I prevent it?

Sammy
- 41
- 8
1
vote
1 answer
DirectX 12 Ultimate graphics sample generates a D3D12 "CBV Invalid Resource" error
Presently I'm working on updating a Windows 11 DX12 desktop app to take advantage of the technologies introduced by DX12 Ultimate (i.e. mesh shaders, VRS & DXR).
All the official samples for Ultimate compile and run on my machine (Core i9/RTX3070…

Maico De Blasio
- 97
- 1
- 2
- 8
1
vote
0 answers
Is every buffer in GPU memory always a minimal alignment of 64 KB in DirectX12 for all different allocation methods?
So I am trying to save some bytes in my VRAM usage and one thing I have seen is that every PlacedResource for a buffer (vertex or index or any other kind of resource buffer) must be 64 KB aligned (correct me if I am wrong, also I know textures can…

yosmo78
- 489
- 4
- 13
1
vote
1 answer
Alt Tab in Fullscreen with SetFullscreenState DirectX12 does not minimize window
So I am trying to handle Alt+Tab in DirectX12 while in fullscreen correctly. The way I want it to behave is upon alt tab in fullscreen it is supposed to minimize the screen and then when you unminimize it is supposed to go back into fullscreen. (As…

yosmo78
- 489
- 4
- 13
1
vote
1 answer
DirectX 12 doesn't draw triangle
I'm learning DirectX 12. I would like to draw a triangle, but DirectX 12 doesn't draw it. I wonder if there's something I forgot.
This is Init() part.
void Engine::Init() {
mDevice = new Device();
mCommandQueue = new CommandQueue();
…

Beomseo Choi
- 23
- 7