You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
-[How to measure if these flags work?](#how-to-measure-if-these-flags-work?)
34
+
-[State Object Flag](#state-object-flag)
35
+
-[How to measure if these flags work?](#how-to-measure-if-these-flags-work)
35
36
-[History](#history)
36
37
37
-
# Graphics partial states
38
+
# Partial Graphics Programs
38
39
39
40
PSOs exist for two reasons:
40
41
- Providing some "fixed function" pipeline state to the driver during shader compilation so that parts of the pipeline can be implemented in shader code.
@@ -141,7 +142,7 @@ Value | Definition
141
142
142
143
## D3D12_STATE_SUBOBJECT_TYPE
143
144
144
-
The enum struct below only shows the subobject type relevant to this spec. See [DXR](../Raytracing.md) and [WG](../WorkGraphs.md) specs for all the other subobject types available.
145
+
The enum struct below only shows the subobject type relevant to this spec. See [DXR](Raytracing.md) and [WG](WorkGraphs.md) specs for all the other subobject types available.
`D3D12_STATE_SUBOBJECT_TYPE_PRECOMPILED_OBJECT` | Precompiled object definition subobject. See [D3D12_PRECOMPILED_OBJECT_DESC](#d3d12_precompiled_object_desc).
164
-
165
160
## D3D12_PARTIAL_GRAPHICS_PROGRAM_TYPE
166
161
167
162
```cpp
@@ -264,7 +259,7 @@ Members | Description
264
259
`BOOL IsPrimitive` | Set to `True` if this element is a primitive.
265
260
266
261
267
-
**[TODO](Add a helper in d3dx that helps generate the linkage desc from a pair of example shaders. So apps don't have to make these by hand.)**
262
+
**TODO(Add a helper in d3dx that helps generate the linkage desc from a pair of example shaders. So apps don't have to make these by hand.)**
268
263
269
264
270
265
@@ -315,6 +310,7 @@ Members | Description
315
310
`LateLinkDepthStencilFormatSubobject` | Specifies whether the pixel shader partial program depth stencil format subobject will be late linked. When it is set to false that means that when the subobject is not available in the pixel shader partial program then, the driver will use [default values](https://github.com/microsoft/DirectX-Specs/blob/master/d3d/WorkGraphs.md#missing-depth_stencil_format).
316
311
`LateLinkRenderTargetFormatSubobject` | Specifies whether the pixel shader partial program render target format subobject will be late linked. When it is set to false that means that when the subobject is not available in the pixel shader partial program then, the driver will use [default values](https://github.com/microsoft/DirectX-Specs/blob/master/d3d/WorkGraphs.md#missing-render_target_formats).
317
312
`LateLinkDepthStencilSubobject` | Specifies whether the pixel shader partial program depth stencil subobject will be late linked. When it is set to false that means that when the subobject is not available in the pixel shader partial program then, the driver will use [default values](https://github.com/microsoft/DirectX-Specs/blob/master/d3d/WorkGraphs.md#missing-depth_stencil-or-depth_stencil1-or-depth_stencil2).
313
+
318
314
---
319
315
320
316
# DDI
@@ -493,4 +489,4 @@ Prefer minimal link with background specialization | This flag should provide f
493
489
| **10/13/2025** | Fix naming from partial generic program to partial graphics program. Add missing DDI subobject types. Add representative MS requirement for PS partial programs that are going to be used with MS. Add D3D12_PARTIAL_GRAPHICS_PROGRAM_TYPE to be used in the D3D12_PARTIAL_GRAPHICS_PROGRAM_DESC. |
494
490
| **11/05/2025** | Added subobject `D3D12_PRERASTERIZATION_OUTPUT_LINKAGE_SIGNATURE_DESC` to differentiate the output linkage desc used in pixel shader partials from the output linkage used in prerasterization shader partials. Update `D3D12DDI_OUTPUT_LINKAGE_SIGNATURE_DESC` to pass to the driver the same parameters as the API struct for consistency between usage in the case of MS and non-MS prerasterization shader partials. Add partial graphics programs tier API and DDI structs to enable the driver to report the level of support and the app to use CheckFeatureSupport to query the tier. |
495
491
| **03/02/2026** | Added missing subobject in PS partial table, and a late link flag for it. Updated pre-rasterization partial table to include that output linkage is required for MS pre-rasterization partial programs.|
496
-
| **03/03/2026** | Added missing bool in `D3D12DDI_PIXEL_SHADER_PARTIAL_PROGRAM_FIELDS_0121`. |
492
+
| **03/03/2026** | Added missing bool in `D3D12DDI_PIXEL_SHADER_PARTIAL_PROGRAM_FIELDS_0121`. |
0 commit comments