58 return device_child->lpVtbl->Release(device_child);
62 return root_signature->lpVtbl->Release(root_signature);
67 return root_signature_deserializer->lpVtbl->Release(root_signature_deserializer);
72 return root_signature_deserializer->lpVtbl->GetRootSignatureDesc(root_signature_deserializer);
77 return versioned_root_signature_deserializer->lpVtbl->Release(
78 versioned_root_signature_deserializer);
85 return versioned_root_signature_deserializer->lpVtbl->GetRootSignatureDescAtVersion(
86 versioned_root_signature_deserializer, convert_to_version, desc);
91 return versioned_root_signature_deserializer->lpVtbl->GetUnconvertedRootSignatureDesc(
92 versioned_root_signature_deserializer);
96 return pageable->lpVtbl->Release(pageable);
112 ->lpVtbl->Unmap((
ID3D12Resource*)resource, subresource, written_range);
120 UINT dst_subresource,
124 UINT src_depth_pitch)
127 ->lpVtbl->WriteToSubresource(
128 (
ID3D12Resource*)resource, dst_subresource, dst_box, src_data, src_row_pitch,
135 UINT dst_depth_pitch,
136 UINT src_subresource,
140 ->lpVtbl->ReadFromSubresource(
141 (
ID3D12Resource*)resource, dst_data, dst_row_pitch, dst_depth_pitch, src_subresource,
148 ->lpVtbl->GetHeapProperties((
ID3D12Resource*)resource, heap_properties, heap_flags);
152 return command_allocator->lpVtbl->Release(command_allocator);
156 return command_allocator->lpVtbl->Reset(command_allocator);
161 return fence->lpVtbl->GetCompletedValue(fence);
165 return fence->lpVtbl->SetEventOnCompletion(fence,
value, h_event);
169 return fence->lpVtbl->Signal(fence,
value);
173 return pipeline_state->lpVtbl->Release(pipeline_state);
177 return pipeline_state->lpVtbl->GetCachedBlob(pipeline_state, blob);
181 return descriptor_heap->lpVtbl->Release(descriptor_heap);
185 return query_heap->lpVtbl->Release(query_heap);
189 return command_signature->lpVtbl->Release(command_signature);
193 return command_list->lpVtbl->Release(command_list);
197 return graphics_command_list->lpVtbl->Release(graphics_command_list);
201 return graphics_command_list->lpVtbl->Close(graphics_command_list);
208 return graphics_command_list->lpVtbl->Reset(graphics_command_list, allocator, initial_state);
213 graphics_command_list->lpVtbl->ClearState(graphics_command_list, pipeline_state);
217 UINT vertex_count_per_instance,
219 UINT start_vertex_location,
220 UINT start_instance_location)
222 graphics_command_list->lpVtbl->DrawInstanced(
223 graphics_command_list, vertex_count_per_instance, instance_count, start_vertex_location,
224 start_instance_location);
228 UINT index_count_per_instance,
230 UINT start_index_location,
231 INT base_vertex_location,
232 UINT start_instance_location)
234 graphics_command_list->lpVtbl->DrawIndexedInstanced(
235 graphics_command_list, index_count_per_instance, instance_count, start_index_location,
236 base_vertex_location, start_instance_location);
240 UINT thread_group_count_x,
241 UINT thread_group_count_y,
242 UINT thread_group_count_z)
244 graphics_command_list->lpVtbl->Dispatch(
245 graphics_command_list, thread_group_count_x, thread_group_count_y, thread_group_count_z);
255 graphics_command_list->lpVtbl->CopyBufferRegion(
256 graphics_command_list, dst_buffer, dst_offset, (
ID3D12Resource*)src_buffer, src_offset,
268 graphics_command_list->lpVtbl->CopyTextureRegion(
269 graphics_command_list,
dst, dst_x, dst_y, dst_z,
src, src_box);
274 graphics_command_list->lpVtbl->CopyResource(
279 void* tiled_resource,
283 UINT64 buffer_start_offset_in_bytes,
286 graphics_command_list->lpVtbl->CopyTiles(
287 graphics_command_list, (
ID3D12Resource*)tiled_resource, tile_region_start_coordinate,
293 UINT dst_subresource,
295 UINT src_subresource,
298 graphics_command_list->lpVtbl->ResolveSubresource(
299 graphics_command_list, (
ID3D12Resource*)dst_resource, dst_subresource,
305 graphics_command_list->lpVtbl->IASetPrimitiveTopology(graphics_command_list, primitive_topology);
310 graphics_command_list->lpVtbl->RSSetViewports(graphics_command_list, num_viewports, viewports);
315 graphics_command_list->lpVtbl->RSSetScissorRects(graphics_command_list, num_rects, rects);
320 graphics_command_list->lpVtbl->OMSetStencilRef(graphics_command_list, stencil_ref);
325 graphics_command_list->lpVtbl->SetPipelineState(graphics_command_list, (
D3D12PipelineState)pipeline_state);
332 graphics_command_list->lpVtbl->ResourceBarrier(graphics_command_list, num_barriers, barriers);
337 graphics_command_list->lpVtbl->ExecuteBundle(graphics_command_list, command_list);
342 graphics_command_list->lpVtbl->SetComputeRootSignature(graphics_command_list, root_signature);
347 graphics_command_list->lpVtbl->SetGraphicsRootSignature(graphics_command_list, root_signature);
351 UINT root_parameter_index,
354 graphics_command_list->lpVtbl->SetComputeRootDescriptorTable(
355 graphics_command_list, root_parameter_index, base_descriptor);
359 UINT root_parameter_index,
362 graphics_command_list->lpVtbl->SetGraphicsRootDescriptorTable(
363 graphics_command_list, root_parameter_index, base_descriptor);
367 UINT root_parameter_index,
369 UINT dest_offset_in32_bit_values)
371 graphics_command_list->lpVtbl->SetComputeRoot32BitConstant(
372 graphics_command_list, root_parameter_index, src_data, dest_offset_in32_bit_values);
376 UINT root_parameter_index,
378 UINT dest_offset_in32_bit_values)
380 graphics_command_list->lpVtbl->SetGraphicsRoot32BitConstant(
381 graphics_command_list, root_parameter_index, src_data, dest_offset_in32_bit_values);
385 UINT root_parameter_index,
386 UINT num32_bit_values_to_set,
388 UINT dest_offset_in32_bit_values)
390 graphics_command_list->lpVtbl->SetComputeRoot32BitConstants(
391 graphics_command_list, root_parameter_index, num32_bit_values_to_set, src_data,
392 dest_offset_in32_bit_values);
396 UINT root_parameter_index,
397 UINT num32_bit_values_to_set,
399 UINT dest_offset_in32_bit_values)
401 graphics_command_list->lpVtbl->SetGraphicsRoot32BitConstants(
402 graphics_command_list, root_parameter_index, num32_bit_values_to_set, src_data,
403 dest_offset_in32_bit_values);
407 UINT root_parameter_index,
410 graphics_command_list->lpVtbl->SetComputeRootConstantBufferView(
411 graphics_command_list, root_parameter_index, buffer_location);
415 UINT root_parameter_index,
418 graphics_command_list->lpVtbl->SetGraphicsRootConstantBufferView(
419 graphics_command_list, root_parameter_index, buffer_location);
423 UINT root_parameter_index,
426 graphics_command_list->lpVtbl->SetComputeRootShaderResourceView(
427 graphics_command_list, root_parameter_index, buffer_location);
431 UINT root_parameter_index,
434 graphics_command_list->lpVtbl->SetGraphicsRootShaderResourceView(
435 graphics_command_list, root_parameter_index, buffer_location);
439 UINT root_parameter_index,
442 graphics_command_list->lpVtbl->SetComputeRootUnorderedAccessView(
443 graphics_command_list, root_parameter_index, buffer_location);
447 UINT root_parameter_index,
450 graphics_command_list->lpVtbl->SetGraphicsRootUnorderedAccessView(
451 graphics_command_list, root_parameter_index, buffer_location);
456 graphics_command_list->lpVtbl->IASetIndexBuffer(graphics_command_list, view);
464 graphics_command_list->lpVtbl->IASetVertexBuffers(
465 graphics_command_list, start_slot, num_views, views);
473 graphics_command_list->lpVtbl->SOSetTargets(graphics_command_list, start_slot, num_views, views);
477 UINT num_render_target_descriptors,
479 BOOL r_ts_single_handle_to_descriptor_range,
482 graphics_command_list->lpVtbl->OMSetRenderTargets(
483 graphics_command_list, num_render_target_descriptors, render_target_descriptors,
484 r_ts_single_handle_to_descriptor_range, depth_stencil_descriptor);
495 graphics_command_list->lpVtbl->ClearDepthStencilView(
496 graphics_command_list, depth_stencil_view, clear_flags,
depth,
stencil, num_rects, rects);
501 graphics_command_list->lpVtbl->DiscardResource(
510 graphics_command_list->lpVtbl->BeginQuery(graphics_command_list, query_heap,
type,
index);
518 graphics_command_list->lpVtbl->EndQuery(graphics_command_list, query_heap,
type,
index);
526 void* destination_buffer,
527 UINT64 aligned_destination_buffer_offset)
529 graphics_command_list->lpVtbl->ResolveQueryData(
530 graphics_command_list, query_heap,
type, start_index, num_queries,
531 (
ID3D12Resource*)destination_buffer, aligned_destination_buffer_offset);
536 UINT64 aligned_buffer_offset,
539 graphics_command_list->lpVtbl->SetPredication(
545 graphics_command_list->lpVtbl->SetMarker(graphics_command_list,
metadata,
data,
size);
550 graphics_command_list->lpVtbl->BeginEvent(graphics_command_list,
metadata,
data,
size);
554 graphics_command_list->lpVtbl->EndEvent(graphics_command_list);
559 UINT max_command_count,
560 void* argument_buffer,
561 UINT64 argument_buffer_offset,
563 UINT64 count_buffer_offset)
565 graphics_command_list->lpVtbl->ExecuteIndirect(
566 graphics_command_list, command_signature, max_command_count,
568 count_buffer_offset);
572 return command_queue->lpVtbl->Release(command_queue);
577 UINT num_resource_regions,
583 UINT* heap_range_start_offsets,
584 UINT* range_tile_counts,
587 command_queue->lpVtbl->UpdateTileMappings(
589 resource_region_start_coordinates, resource_region_sizes, heap, num_ranges, range_flags,
590 heap_range_start_offsets, range_tile_counts,
flags);
601 command_queue->lpVtbl->CopyTileMappings(
602 command_queue, (
ID3D12Resource*)dst_resource, dst_region_start_coordinate,
617 command_queue->lpVtbl->EndEvent(command_queue);
622 return command_queue->lpVtbl->Signal(command_queue, fence,
value);
626 return command_queue->lpVtbl->Wait(command_queue, fence,
value);
630 return command_queue->lpVtbl->GetTimestampFrequency(command_queue, frequency);
635 return command_queue->lpVtbl->GetClockCalibration(command_queue, gpu_timestamp, cpu_timestamp);
653 return device->lpVtbl->CreateCommandAllocator(
659 return device->lpVtbl->CreateGraphicsPipelineState(
665 return device->lpVtbl->CreateComputePipelineState(
676 return device->lpVtbl->CreateCommandList(
683 void* feature_support_data,
684 UINT feature_support_data_size)
686 return device->lpVtbl->CheckFeatureSupport(
687 device, feature, feature_support_data, feature_support_data_size);
694 return device->lpVtbl->CreateDescriptorHeap(
700 return device->lpVtbl->GetDescriptorHandleIncrementSize(
device, descriptor_heap_type);
705 void* blob_with_root_signature,
706 SIZE_T blob_length_in_bytes,
709 return device->lpVtbl->CreateRootSignature(
710 device, node_mask, blob_with_root_signature, blob_length_in_bytes,
718 device->lpVtbl->CreateConstantBufferView(
device, desc, dest_descriptor);
726 device->lpVtbl->CreateShaderResourceView(
device, resource, desc, dest_descriptor);
731 void* counter_resource,
735 device->lpVtbl->CreateUnorderedAccessView(
758 device->lpVtbl->CreateSampler(
device, desc, dest_descriptor);
762 UINT num_dest_descriptor_ranges,
764 UINT* dest_descriptor_range_sizes,
765 UINT num_src_descriptor_ranges,
767 UINT* src_descriptor_range_sizes,
770 device->lpVtbl->CopyDescriptors(
771 device, num_dest_descriptor_ranges, dest_descriptor_range_starts,
772 dest_descriptor_range_sizes, num_src_descriptor_ranges, src_descriptor_range_starts,
773 src_descriptor_range_sizes, descriptor_heaps_type);
777 UINT num_descriptors,
782 device->lpVtbl->CopyDescriptorsSimple(
783 device, num_descriptors, dest_descriptor_range_start, src_descriptor_range_start,
784 descriptor_heaps_type);
789 UINT num_resource_descs,
792 return device->lpVtbl->GetResourceAllocationInfo(
793 device, visible_mask, num_resource_descs, resource_descs);
798 return device->lpVtbl->GetCustomHeapProperties(
device, node_mask, heap_type);
809 return device->lpVtbl->CreateCommittedResource(
810 device, heap_properties, heap_flags, desc, initial_resource_state, optimized_clear_value,
826 return device->lpVtbl->CreatePlacedResource(
827 device, heap, heap_offset, desc, initial_state, optimized_clear_value,
837 return device->lpVtbl->CreateReservedResource(
843 return device->lpVtbl->CreateFence(
853 UINT first_subresource,
854 UINT num_subresources,
858 UINT64* row_size_in_bytes,
861 device->lpVtbl->GetCopyableFootprints(
862 device, resource_desc, first_subresource, num_subresources, base_offset, layouts, num_rows,
863 row_size_in_bytes, total_bytes);
880 return device->lpVtbl->CreateCommandSignature(
885 void* tiled_resource,
886 UINT* num_tiles_for_entire_resource,
889 UINT* num_subresource_tilings,
890 UINT first_subresource_tiling_to_get,
893 device->lpVtbl->GetResourceTiling(
895 standard_tile_shape_for_non_packed_mips, num_subresource_tilings,
896 first_subresource_tiling_to_get, subresource_tilings_for_non_packed_mips);
904 return pipeline_library->lpVtbl->Release(pipeline_library);
909 return pipeline_library->lpVtbl->StorePipeline(pipeline_library,
name, pipeline);
917 return pipeline_library->lpVtbl->LoadGraphicsPipeline(
926 return pipeline_library->lpVtbl->LoadComputePipeline(
931 return pipeline_library->lpVtbl->GetSerializedSize(pipeline_library);
936 return pipeline_library->lpVtbl->Serialize(pipeline_library,
data, data_size_in_bytes);
941 debug->lpVtbl->EnableDebugLayer(debug);
945 return debug_device->lpVtbl->Release(debug_device);
950 return debug_device->lpVtbl->SetFeatureMask(debug_device,
mask);
954 return debug_device->lpVtbl->GetFeatureMask(debug_device);
959 return debug_device->lpVtbl->ReportLiveDeviceObjects(debug_device,
flags);
963 return debug_command_queue->lpVtbl->Release(debug_command_queue);
968 return debug_command_queue->lpVtbl->AssertResourceState(
973 return debug_command_list->lpVtbl->Release(debug_command_list);
978 return debug_command_list->lpVtbl->AssertResourceState(
984 return debug_command_list->lpVtbl->SetFeatureMask(debug_command_list,
mask);
989 return debug_command_list->lpVtbl->GetFeatureMask(debug_command_list);
993 return info_queue->lpVtbl->Release(info_queue);
998 return info_queue->lpVtbl->SetMessageCountLimit(info_queue, message_count_limit);
1002 info_queue->lpVtbl->ClearStoredMessages(info_queue);
1009 SIZE_T* message_byte_length)
1011 return info_queue->lpVtbl->GetMessageA(info_queue, message_index,
message, message_byte_length);
1016 return info_queue->lpVtbl->GetNumMessagesAllowedByStorageFilter(info_queue);
1020 return info_queue->lpVtbl->GetNumMessagesDeniedByStorageFilter(info_queue);
1024 return info_queue->lpVtbl->GetNumStoredMessages(info_queue);
1028 return info_queue->lpVtbl->GetNumStoredMessagesAllowedByRetrievalFilter(info_queue);
1032 return info_queue->lpVtbl->GetNumMessagesDiscardedByMessageCountLimit(info_queue);
1036 return info_queue->lpVtbl->GetMessageCountLimit(info_queue);
1041 return info_queue->lpVtbl->AddStorageFilterEntries(info_queue,
filter);
1046 return info_queue->lpVtbl->GetStorageFilter(info_queue,
filter, filter_byte_length);
1050 info_queue->lpVtbl->ClearStorageFilter(info_queue);
1054 return info_queue->lpVtbl->PushEmptyStorageFilter(info_queue);
1058 return info_queue->lpVtbl->PushCopyOfStorageFilter(info_queue);
1063 return info_queue->lpVtbl->PushStorageFilter(info_queue,
filter);
1067 info_queue->lpVtbl->PopStorageFilter(info_queue);
1071 return info_queue->lpVtbl->GetStorageFilterStackSize(info_queue);
1076 return info_queue->lpVtbl->AddRetrievalFilterEntries(info_queue,
filter);
1081 return info_queue->lpVtbl->GetRetrievalFilter(info_queue,
filter, filter_byte_length);
1085 info_queue->lpVtbl->ClearRetrievalFilter(info_queue);
1089 return info_queue->lpVtbl->PushEmptyRetrievalFilter(info_queue);
1093 return info_queue->lpVtbl->PushCopyOfRetrievalFilter(info_queue);
1098 return info_queue->lpVtbl->PushRetrievalFilter(info_queue,
filter);
1102 info_queue->lpVtbl->PopRetrievalFilter(info_queue);
1106 return info_queue->lpVtbl->GetRetrievalFilterStackSize(info_queue);
1125 return info_queue->lpVtbl->SetBreakOnCategory(info_queue, category, b_enable);
1130 return info_queue->lpVtbl->SetBreakOnSeverity(info_queue,
severity, b_enable);
1135 return info_queue->lpVtbl->SetBreakOnID(info_queue, i_d, b_enable);
1140 return info_queue->lpVtbl->GetBreakOnCategory(info_queue, category);
1145 return info_queue->lpVtbl->GetBreakOnSeverity(info_queue,
severity);
1149 return info_queue->lpVtbl->GetBreakOnID(info_queue, i_d);
1153 info_queue->lpVtbl->SetMuteDebugOutput(info_queue, b_mute);
1157 return info_queue->lpVtbl->GetMuteDebugOutput(info_queue);
1182 return device->lpVtbl->CreateCommandList(
1183 device, node_mask,
type, command_allocator, initial_state,
1190 const FLOAT colorRGBA[4],
1194 command_list->lpVtbl->ClearRenderTargetView(
1195 command_list, render_target_view, colorRGBA, num_rects, rects);
1200 UINT num_command_lists,
1203 command_queue->lpVtbl->ExecuteCommandLists(command_queue, num_command_lists, command_lists);
1207 UINT num_command_lists,
1210 command_queue->lpVtbl->ExecuteCommandLists(
1221 UINT num_descriptor_heaps,
1224 command_list->lpVtbl->SetDescriptorHeaps(command_list, num_descriptor_heaps, descriptor_heaps);
1230 return descriptor_heap->lpVtbl->GetCPUDescriptorHandleForHeapStart(descriptor_heap);
1235 return descriptor_heap->lpVtbl->GetGPUDescriptorHandleForHeapStart(descriptor_heap);
1243 descriptor_heap->lpVtbl->GetCPUDescriptorHandleForHeapStart)(descriptor_heap, &
out);
1251 descriptor_heap->lpVtbl->GetGPUDescriptorHandleForHeapStart)(descriptor_heap, &
out);
1262 #include "../common/d3dcompiler_common.h" 1263 #include "../video_driver.h" 1264 #include "../drivers_shader/slang_process.h" 1323 #define ALIGN(x) __declspec(align(x)) 1325 #define ALIGN(x) __attribute__((aligned(x))) 1341 (!(
sizeof(
d3d12_uniform_t) & 0xF)),
"sizeof(d3d12_uniform_t) must be a multiple of 16");
1347 DXGIFactory2 factory;
1381 float clearcolor[4];
1534 #if !defined(__cplusplus) || defined(CINTERFACE) 1544 barrier.Transition.pResource = resource;
1545 barrier.Transition.StateBefore = state_before;
1546 barrier.Transition.StateAfter = state_after;
#define GFX_MAX_FRAME_HISTORY
Definition: video_shader_parse.h:46
DXGISwapChain handle
Definition: d3d12_common.h:1376
static INLINE ULONG D3D12ReleaseDebugCommandQueue(D3D12DebugCommandQueue debug_command_queue)
Definition: d3d12_common.h:961
const GLuint * buffers
Definition: glext.h:6556
Definition: d3d12_common.h:1485
static INLINE void D3D12CopyTiles(D3D12GraphicsCommandList graphics_command_list, void *tiled_resource, D3D12_TILED_RESOURCE_COORDINATE *tile_region_start_coordinate, D3D12_TILE_REGION_SIZE *tile_region_size, void *buffer, UINT64 buffer_start_offset_in_bytes, D3D12_TILE_COPY_FLAGS flags)
Definition: d3d12_common.h:277
static INLINE D3D12_HEAP_PROPERTIES D3D12GetCustomHeapProperties(D3D12Device device, UINT node_mask, D3D12_HEAP_TYPE heap_type)
Definition: d3d12_common.h:796
static INLINE SIZE_T D3D12GetSerializedSize(D3D12PipelineLibrary pipeline_library)
Definition: d3d12_common.h:929
GLuint const GLchar * name
Definition: glext.h:6671
D3D12PipelineStateRef pipe
Definition: d3d12_common.h:1412
d3d12_descriptor_heap_t rtv_heap
Definition: d3d12_common.h:1370
float texcoord[2]
Definition: d3d12_common.h:1269
D3D12_GPU_VIRTUAL_ADDRESS d3d12_create_buffer(D3D12Device device, UINT size_in_bytes, D3D12Resource *buffer)
Definition: d3d12_common.c:605
ID3D12Device * D3D12Device
Definition: d3d12_common.h:44
const ID3D12PipelineState * D3D12PipelineStateRef
Definition: d3d12_common.h:23
D3D12_FENCE_FLAGS
Definition: d3d12.h:2967
D3D12_VERTEX_BUFFER_VIEW vbo_view
Definition: d3d12_common.h:1392
Definition: matrix_4x4.h:40
static INLINE void D3D12CreateShaderResourceView(D3D12Device device, D3D12Resource resource, D3D12_SHADER_RESOURCE_VIEW_DESC *desc, D3D12_CPU_DESCRIPTOR_HANDLE dest_descriptor)
Definition: d3d12_common.h:720
D3D12_RESOURCE_DESC desc
Definition: d3d12_common.h:1306
interface ID3D12PipelineLibrary ID3D12PipelineLibrary
Definition: d3d12.h:195
static INLINE HRESULT D3D12AddRetrievalFilterEntries(D3D12InfoQueue info_queue, D3D12_INFO_QUEUE_FILTER *filter)
Definition: d3d12_common.h:1074
ID3D12DeviceChild * D3D12DeviceChild
Definition: d3d12_common.h:28
void d3d12_init_samplers(d3d12_video_t *d3d12)
Definition: d3d12_common.c:496
static INLINE void D3D12ClearState(D3D12GraphicsCommandList graphics_command_list, D3D12PipelineState pipeline_state)
Definition: d3d12_common.h:211
static INLINE HRESULT D3D12ReportLiveDeviceObjects(D3D12DebugDevice debug_device, D3D12_RLDO_FLAGS flags)
Definition: d3d12_common.h:957
struct d3d12_vertex_t d3d12_vertex_t
static INLINE HRESULT D3D12Wait(D3D12CommandQueue command_queue, D3D12Fence fence, UINT64 value)
Definition: d3d12_common.h:624
interface ID3D12Resource ID3D12Resource
Definition: d3d12.h:97
#define INLINE
Definition: retro_inline.h:35
root_signature_parameter_index_t
Definition: d3d12_common.h:1476
ID3DBlob * D3DBlob
Definition: d3dcompiler_common.h:27
D3D_FEATURE_LEVEL
Definition: d3dcommon.h:79
static INLINE void D3D12ResourceBarrier(D3D12GraphicsCommandList graphics_command_list, UINT num_barriers, D3D12_RESOURCE_BARRIER *barriers)
Definition: d3d12_common.h:327
D3D12_DESCRIPTOR_HEAP_TYPE
Definition: d3d12.h:2977
D3D12_MESSAGE_CATEGORY
Definition: d3d12sdklayers.h:1099
static INLINE HRESULT D3D12SetBreakOnID(D3D12InfoQueue info_queue, D3D12_MESSAGE_ID i_d, BOOL b_enable)
Definition: d3d12_common.h:1133
static INLINE HRESULT D3D12SetEventOnCompletion(D3D12Fence fence, UINT64 value, HANDLE h_event)
Definition: d3d12_common.h:163
D3D12Resource upload_buffer
Definition: d3d12_common.h:1305
Definition: d3d12_common.h:1479
#define RETRO_BEGIN_DECLS
Definition: retro_common_api.h:41
static INLINE void D3D12CopyTextureRegion(D3D12GraphicsCommandList graphics_command_list, D3D12_TEXTURE_COPY_LOCATION *dst, UINT dst_x, UINT dst_y, UINT dst_z, D3D12_TEXTURE_COPY_LOCATION *src, D3D12_BOX *src_box)
Definition: d3d12_common.h:259
static INLINE void D3D12SetComputeRootUnorderedAccessView(D3D12GraphicsCommandList graphics_command_list, UINT root_parameter_index, D3D12_GPU_VIRTUAL_ADDRESS buffer_location)
Definition: d3d12_common.h:437
Definition: glslang_tab.cpp:129
interface ID3D12VersionedRootSignatureDeserializer ID3D12VersionedRootSignatureDeserializer
Definition: d3d12.h:76
static INLINE HRESULT D3D12PushEmptyRetrievalFilter(D3D12InfoQueue info_queue)
Definition: d3d12_common.h:1087
static INLINE UINT64 D3D12GetMessageCountLimit(D3D12InfoQueue info_queue)
Definition: d3d12_common.h:1034
D3D12Fence fence
Definition: d3d12_common.h:1359
static INLINE D3D12_DEBUG_FEATURE D3D12GetDebugCommandListFeatureMask(D3D12DebugCommandList debug_command_list)
Definition: d3d12_common.h:987
static INLINE void D3D12BeginQuery(D3D12GraphicsCommandList graphics_command_list, D3D12QueryHeap query_heap, D3D12_QUERY_TYPE type, UINT index)
Definition: d3d12_common.h:504
static INLINE BOOL D3D12GetBreakOnCategory(D3D12InfoQueue info_queue, D3D12_MESSAGE_CATEGORY category)
Definition: d3d12_common.h:1138
Definition: d3d12_common.h:1488
static INLINE ULONG D3D12ReleaseGraphicsCommandList(D3D12GraphicsCommandList graphics_command_list)
Definition: d3d12_common.h:195
D3D12PipelineState pipe
Definition: d3d12_common.h:1437
GLenum const GLfloat * params
Definition: glext.h:6297
static INLINE void D3D12SetComputeRootDescriptorTable(D3D12GraphicsCommandList graphics_command_list, UINT root_parameter_index, D3D12_GPU_DESCRIPTOR_HANDLE base_descriptor)
Definition: d3d12_common.h:349
Definition: dxgi_common.h:798
Definition: d3d12_common.h:1273
static INLINE void D3D12CreateRenderTargetView(D3D12Device device, void *resource, D3D12_RENDER_TARGET_VIEW_DESC *desc, D3D12_CPU_DESCRIPTOR_HANDLE dest_descriptor)
Definition: d3d12_common.h:739
bool keep_aspect
Definition: d3d12_common.h:1464
int start
Definition: d3d12_common.h:1299
static INLINE const D3D12_ROOT_SIGNATURE_DESC * D3D12GetRootSignatureDesc(D3D12RootSignatureDeserializer root_signature_deserializer)
Definition: d3d12_common.h:70
Definition: d3d12sdklayers.h:2261
static INLINE void D3D12IASetVertexBuffers(D3D12GraphicsCommandList graphics_command_list, UINT start_slot, UINT num_views, D3D12_VERTEX_BUFFER_VIEW *views)
Definition: d3d12_common.h:458
Definition: ffmpeg_core.c:151
bool d3d12_init_base(d3d12_video_t *d3d12)
Definition: d3d12_common.c:154
bool d3d12_init_queue(d3d12_video_t *d3d12)
Definition: d3d12_common.c:191
bool resize_render_targets
Definition: d3d12_common.h:1466
static INLINE void D3D12CopyTileMappings(D3D12CommandQueue command_queue, void *dst_resource, D3D12_TILED_RESOURCE_COORDINATE *dst_region_start_coordinate, void *src_resource, D3D12_TILED_RESOURCE_COORDINATE *src_region_start_coordinate, D3D12_TILE_REGION_SIZE *region_size, D3D12_TILE_MAPPING_FLAGS flags)
Definition: d3d12_common.h:592
static INLINE ULONG D3D12ReleasePipelineState(D3D12PipelineState pipeline_state)
Definition: d3d12_common.h:171
interface ID3D12Heap ID3D12Heap
Definition: d3d12.h:90
static INLINE void d3d12_resource_transition(D3D12GraphicsCommandList cmd, D3D12Resource resource, D3D12_RESOURCE_STATES state_before, D3D12_RESOURCE_STATES state_after)
Definition: d3d12_common.h:1535
static INLINE void D3D12SOSetTargets(D3D12GraphicsCommandList graphics_command_list, UINT start_slot, UINT num_views, D3D12_STREAM_OUTPUT_BUFFER_VIEW *views)
Definition: d3d12_common.h:467
D3D12_MESSAGE_ID
Definition: d3d12sdklayers.h:1125
static INLINE void D3D12ResolveQueryData(D3D12GraphicsCommandList graphics_command_list, D3D12QueryHeap query_heap, D3D12_QUERY_TYPE type, UINT start_index, UINT num_queries, void *destination_buffer, UINT64 aligned_destination_buffer_offset)
Definition: d3d12_common.h:520
void d3d12_upload_texture(D3D12GraphicsCommandList cmd, d3d12_texture_t *texture, void *userdata)
Definition: d3d12_common.c:781
static INLINE void D3D12CopyDescriptorsSimple(D3D12Device device, UINT num_descriptors, D3D12_CPU_DESCRIPTOR_HANDLE dest_descriptor_range_start, D3D12_CPU_DESCRIPTOR_HANDLE src_descriptor_range_start, D3D12_DESCRIPTOR_HEAP_TYPE descriptor_heaps_type)
Definition: d3d12_common.h:775
bool resize_chain
Definition: d3d12_common.h:1463
d3d12_descriptor_heap_t * srv_heap
Definition: d3d12_common.h:1316
D3D12_GPU_DESCRIPTOR_HANDLE gpu
Definition: d3d12_common.h:1296
#define uuidof(type)
Definition: dxgi_common.h:246
static INLINE void D3D12ClearRetrievalFilter(D3D12InfoQueue info_queue)
Definition: d3d12_common.h:1083
static INLINE void D3D12CopyResource(D3D12GraphicsCommandList graphics_command_list, void *dst_resource, void *src_resource)
Definition: d3d12_common.h:271
interface ID3D12DebugCommandList ID3D12DebugCommandList
Definition: d3d12sdklayers.h:97
static INLINE HRESULT D3D12CreateRootSignature(D3D12Device device, UINT node_mask, void *blob_with_root_signature, SIZE_T blob_length_in_bytes, ID3D12RootSignature **out)
Definition: d3d12_common.h:702
D3D12_HEAP_FLAGS
Definition: d3d12.h:2127
bool * map
Definition: d3d12_common.h:1298
d3d12_uniform_t ubo_values
Definition: d3d12_common.h:1456
static INLINE void D3D12SetPredication(D3D12GraphicsCommandList graphics_command_list, void *buffer, UINT64 aligned_buffer_offset, D3D12_PREDICATION_OP operation)
Definition: d3d12_common.h:533
uint64_t UINT64
Definition: coretypes.h:8
static INLINE void D3D12SetComputeRoot32BitConstant(D3D12GraphicsCommandList graphics_command_list, UINT root_parameter_index, UINT src_data, UINT dest_offset_in32_bit_values)
Definition: d3d12_common.h:365
float4_t output_size
Definition: d3d12_common.h:1395
D3D12Resource handle
Definition: d3d12_common.h:1304
static INLINE void D3D12DiscardResource(D3D12GraphicsCommandList graphics_command_list, void *resource, D3D12_DISCARD_REGION *region)
Definition: d3d12_common.h:498
static INLINE void d3d12_set_texture(D3D12GraphicsCommandList cmd, const d3d12_texture_t *texture)
Definition: d3d12_common.h:1551
interface ID3D12Device ID3D12Device
Definition: d3d12.h:188
GLsizeiptr size
Definition: glext.h:6559
static INLINE void D3D12RSSetScissorRects(D3D12GraphicsCommandList graphics_command_list, UINT num_rects, D3D12_RECT *rects)
Definition: d3d12_common.h:312
static INLINE void D3D12ExecuteBundle(D3D12GraphicsCommandList graphics_command_list, D3D12GraphicsCommandList command_list)
Definition: d3d12_common.h:334
interface ID3D12DebugCommandQueue ID3D12DebugCommandQueue
Definition: d3d12sdklayers.h:83
#define GFX_MAX_TEXTURES
Definition: video_shader_parse.h:34
static INLINE void D3D12IASetIndexBuffer(D3D12GraphicsCommandList graphics_command_list, D3D12_INDEX_BUFFER_VIEW *view)
Definition: d3d12_common.h:454
static INLINE UINT D3D12GetDescriptorHandleIncrementSize(D3D12Device device, D3D12_DESCRIPTOR_HEAP_TYPE descriptor_heap_type)
Definition: d3d12_common.h:697
static INLINE HRESULT D3D12GetMessageA(D3D12InfoQueue info_queue, UINT64 message_index, D3D12_MESSAGE *message, SIZE_T *message_byte_length)
Definition: d3d12_common.h:1005
GLboolean enable
Definition: glext.h:12027
static INLINE void D3D12SetGraphicsRootUnorderedAccessView(D3D12GraphicsCommandList graphics_command_list, UINT root_parameter_index, D3D12_GPU_VIRTUAL_ADDRESS buffer_location)
Definition: d3d12_common.h:445
ID3D12Pageable * D3D12Pageable
Definition: d3d12_common.h:32
Definition: video_shader_parse.h:72
float position[2]
Definition: d3d12_common.h:1268
D3D12DescriptorHeap handle
Definition: d3d12_common.h:1293
uint32_t frame_count
Definition: d3d12_common.h:1446
ID3D12PipelineLibrary * D3D12PipelineLibrary
Definition: d3d12_common.h:45
static INLINE HRESULT D3D12SetStablePowerState(D3D12Device device, BOOL enable)
Definition: d3d12_common.h:870
bool init_history
Definition: d3d12_common.h:1467
int rotation
Definition: d3d12_common.h:1396
struct passwd out
Definition: missing_libc_functions.c:51
static INLINE ULONG D3D12ReleaseDebugDevice(D3D12DebugDevice debug_device)
Definition: d3d12_common.h:943
static INLINE void D3D12RSSetViewports(D3D12GraphicsCommandList graphics_command_list, UINT num_viewports, D3D12_VIEWPORT *viewports)
Definition: d3d12_common.h:307
static INLINE void D3D12SetComputeRootConstantBufferView(D3D12GraphicsCommandList graphics_command_list, UINT root_parameter_index, D3D12_GPU_VIRTUAL_ADDRESS buffer_location)
Definition: d3d12_common.h:405
ID3D12VersionedRootSignatureDeserializer * D3D12VersionedRootSignatureDeserializer
Definition: d3d12_common.h:31
static const bool fullscreen
Definition: config.def.h:108
static INLINE void D3D12PopRetrievalFilter(D3D12InfoQueue info_queue)
Definition: d3d12_common.h:1100
typedef HRESULT(WINAPI *PFN_D3D12_SERIALIZE_ROOT_SIGNATURE)(_In_ const D3D12_ROOT_SIGNATURE_DESC *pRootSignature
static INLINE void D3D12PopStorageFilter(D3D12InfoQueue info_queue)
Definition: d3d12_common.h:1065
D3D12_COMMAND_LIST_TYPE
Definition: d3d12.h:1014
static INLINE void D3D12OMSetStencilRef(D3D12GraphicsCommandList graphics_command_list, UINT stencil_ref)
Definition: d3d12_common.h:318
typedef void(__stdcall *PFN_DESTRUCTION_CALLBACK)(void *pData)
static INLINE ULONG D3D12ReleaseDebug(D3D12Debug debug)
Definition: d3d12_common.h:938
static INLINE void D3D12ExecuteGraphicsCommandLists(D3D12CommandQueue command_queue, UINT num_command_lists, const D3D12GraphicsCommandList *command_lists)
Definition: d3d12_common.h:1205
Definition: d3d12_common.h:1266
static INLINE HRESULT D3D12GetRootSignatureDescAtVersion(D3D12VersionedRootSignatureDeserializer versioned_root_signature_deserializer, D3D_ROOT_SIGNATURE_VERSION convert_to_version, const D3D12_VERSIONED_ROOT_SIGNATURE_DESC **desc)
Definition: d3d12_common.h:80
float4_t size_data
Definition: d3d12_common.h:1318
bool fullscreen
Definition: d3d12_common.h:1407
static INLINE void D3D12SetGraphicsRootShaderResourceView(D3D12GraphicsCommandList graphics_command_list, UINT root_parameter_index, D3D12_GPU_VIRTUAL_ADDRESS buffer_location)
Definition: d3d12_common.h:429
static INLINE ULONG D3D12ReleaseRootSignature(D3D12RootSignature root_signature)
Definition: d3d12_common.h:60
static INLINE void D3D12SetComputeRootShaderResourceView(D3D12GraphicsCommandList graphics_command_list, UINT root_parameter_index, D3D12_GPU_VIRTUAL_ADDRESS buffer_location)
Definition: d3d12_common.h:421
static INLINE UINT D3D12GetNodeCount(D3D12Device device)
Definition: d3d12_common.h:641
static INLINE void D3D12ClearStoredMessages(D3D12InfoQueue info_queue)
Definition: d3d12_common.h:1000
static INLINE void D3D12DrawIndexedInstanced(D3D12GraphicsCommandList graphics_command_list, UINT index_count_per_instance, UINT instance_count, UINT start_index_location, INT base_vertex_location, UINT start_instance_location)
Definition: d3d12_common.h:226
float alpha
Definition: d3d12_common.h:1405
static INLINE ULONG D3D12ReleaseQueryHeap(D3D12QueryHeap query_heap)
Definition: d3d12_common.h:183
interface ID3D12CommandQueue ID3D12CommandQueue
Definition: d3d12.h:181
static INLINE D3D12_GPU_DESCRIPTOR_HANDLE D3D12GetGPUDescriptorHandleForHeapStart(D3D12DescriptorHeap descriptor_heap)
Definition: d3d12_common.h:1247
D3D12_CLEAR_FLAGS
Definition: d3d12.h:2959
D3D12Device device
Definition: d3d12_common.h:1352
GLuint GLuint GLsizei count
Definition: glext.h:6292
Definition: d3d12_common.h:1478
d3d12_uniform_t
Definition: d3d12_common.h:1338
Definition: video_shader_parse.h:143
interface ID3D12Pageable ID3D12Pageable
Definition: d3d12.h:83
ID3D12CommandList * D3D12CommandList
Definition: d3d12_common.h:41
interface ID3D12DeviceChild ID3D12DeviceChild
Definition: d3d12.h:55
ID3D12DebugDevice * D3D12DebugDevice
Definition: d3d12_common.h:47
static INLINE UINT64 D3D12GetNumMessagesDeniedByStorageFilter(D3D12InfoQueue info_queue)
Definition: d3d12_common.h:1018
interface ID3D12QueryHeap ID3D12QueryHeap
Definition: d3d12.h:139
static INLINE UINT D3D12GetStorageFilterStackSize(D3D12InfoQueue info_queue)
Definition: d3d12_common.h:1069
interface ID3D12CommandList ID3D12CommandList
Definition: d3d12.h:153
interface ID3D12InfoQueue ID3D12InfoQueue
Definition: d3d12sdklayers.h:111
D3D12GraphicsCommandList cmd
Definition: d3d12_common.h:1358
static INLINE ULONG D3D12ReleaseInfoQueue(D3D12InfoQueue info_queue)
Definition: d3d12_common.h:991
static INLINE ULONG D3D12Release(void *object)
Definition: d3d12_common.h:52
static INLINE HRESULT D3D12CreateCommittedResource(D3D12Device device, D3D12_HEAP_PROPERTIES *heap_properties, D3D12_HEAP_FLAGS heap_flags, D3D12_RESOURCE_DESC *desc, D3D12_RESOURCE_STATES initial_resource_state, D3D12_CLEAR_VALUE *optimized_clear_value, ID3D12Resource **out)
Definition: d3d12_common.h:800
static INLINE void D3D12UpdateTileMappings(D3D12CommandQueue command_queue, void *resource, UINT num_resource_regions, D3D12_TILED_RESOURCE_COORDINATE *resource_region_start_coordinates, D3D12_TILE_REGION_SIZE *resource_region_sizes, D3D12Heap heap, UINT num_ranges, D3D12_TILE_RANGE_FLAGS *range_flags, UINT *heap_range_start_offsets, UINT *range_tile_counts, D3D12_TILE_MAPPING_FLAGS flags)
Definition: d3d12_common.h:574
ID3D12InfoQueue * D3D12InfoQueue
Definition: d3d12_common.h:50
GLenum GLuint GLenum severity
Definition: glext.h:6233
static INLINE void D3D12CreateDepthStencilView(D3D12Device device, void *resource, D3D12_DEPTH_STENCIL_VIEW_DESC *desc, D3D12_CPU_DESCRIPTOR_HANDLE dest_descriptor)
Definition: d3d12_common.h:747
interface ID3D12Fence ID3D12Fence
Definition: d3d12.h:111
ID3D12CommandAllocator * D3D12CommandAllocator
Definition: d3d12_common.h:35
GLuint coords
Definition: glext.h:8035
ID3D12QueryHeap * D3D12QueryHeap
Definition: d3d12_common.h:39
static INLINE HRESULT D3D12Map(void *resource, UINT subresource, D3D12_RANGE *read_range, void **data)
Definition: d3d12_common.h:104
static INLINE HRESULT D3D12SetMessageCountLimit(D3D12InfoQueue info_queue, UINT64 message_count_limit)
Definition: d3d12_common.h:996
GLenum GLuint texture
Definition: glext.h:6935
ID3D12CommandQueue * D3D12CommandQueue
Definition: d3d12_common.h:43
bool resize_viewport
Definition: d3d12_common.h:1465
ID3D12RootSignature * D3D12RootSignature
Definition: d3d12_common.h:29
GLenum type
Definition: glext.h:6233
static INLINE HRESULT D3D12ResetCommandAllocator(D3D12CommandAllocator command_allocator)
Definition: d3d12_common.h:154
static INLINE ULONG D3D12ReleaseCommandSignature(D3D12CommandSignature command_signature)
Definition: d3d12_common.h:187
ID3D12DebugCommandQueue * D3D12DebugCommandQueue
Definition: d3d12_common.h:48
static INLINE HRESULT D3D12CreateCommandList(D3D12Device device, UINT node_mask, D3D12_COMMAND_LIST_TYPE type, D3D12CommandAllocator command_allocator, D3D12PipelineState initial_state, ID3D12CommandList **out)
Definition: d3d12_common.h:668
DXGI_FORMAT
Definition: dxgiformat.h:10
static INLINE BOOL D3D12GetMuteDebugOutput(D3D12InfoQueue info_queue)
Definition: d3d12_common.h:1155
static INLINE HRESULT D3D12CreateCommandSignature(D3D12Device device, D3D12_COMMAND_SIGNATURE_DESC *desc, D3D12RootSignature root_signature, ID3D12CommandSignature **out)
Definition: d3d12_common.h:874
D3D12_VIEWPORT viewport
Definition: d3d12_common.h:1379
ID3D12Heap * D3D12Heap
Definition: d3d12_common.h:33
ubyte cmd
Definition: wiiuse_internal.h:319
static INLINE void D3D12EndQuery(D3D12GraphicsCommandList graphics_command_list, D3D12QueryHeap query_heap, D3D12_QUERY_TYPE type, UINT index)
Definition: d3d12_common.h:512
static INLINE HRESULT D3D12CreateQueryHeap(D3D12Device device, D3D12_QUERY_HEAP_DESC *desc, ID3D12Heap **out)
Definition: d3d12_common.h:866
Definition: video_shader_parse.h:83
D3D12_VERTEX_BUFFER_VIEW menu_pipeline_vbo_view
Definition: d3d12_common.h:1469
GLuint * samplers
Definition: glext.h:7947
Definition: d3d12_common.h:1480
d3d12_descriptor_heap_t sampler_heap
Definition: d3d12_common.h:1371
static INLINE HRESULT D3D12PushCopyOfStorageFilter(D3D12InfoQueue info_queue)
Definition: d3d12_common.h:1056
static INLINE ULONG D3D12ReleaseCommandList(D3D12CommandList command_list)
Definition: d3d12_common.h:191
D3D12_QUERY_TYPE
Definition: d3d12.h:3454
Definition: d3d12_common.h:1343
static INLINE ULONG D3D12ReleaseDescriptorHeap(D3D12DescriptorHeap descriptor_heap)
Definition: d3d12_common.h:179
GLenum GLenum GLsizei const GLuint GLboolean enabled
Definition: glext.h:8417
static INLINE void D3D12SetGraphicsRootConstantBufferView(D3D12GraphicsCommandList graphics_command_list, UINT root_parameter_index, D3D12_GPU_VIRTUAL_ADDRESS buffer_location)
Definition: d3d12_common.h:413
d3d12_descriptor_heap_t srv_heap
Definition: d3d12_common.h:1369
static INLINE HRESULT D3D12CreateDescriptorHeap(D3D12Device device, D3D12_DESCRIPTOR_HEAP_DESC *descriptor_heap_desc, D3D12DescriptorHeap *out)
Definition: d3d12_common.h:689
IDXGIFactory1 * DXGIFactory
Definition: dxgi_common.h:272
static INLINE void D3D12GetResourceTiling(D3D12Device device, void *tiled_resource, UINT *num_tiles_for_entire_resource, D3D12_PACKED_MIP_INFO *packed_mip_desc, D3D12_TILE_SHAPE *standard_tile_shape_for_non_packed_mips, UINT *num_subresource_tilings, UINT first_subresource_tiling_to_get, D3D12_SUBRESOURCE_TILING *subresource_tilings_for_non_packed_mips)
Definition: d3d12_common.h:883
d3d12_texture_t rt
Definition: d3d12_common.h:1441
static INLINE ULONG D3D12ReleaseDebugCommandList(D3D12DebugCommandList debug_command_list)
Definition: d3d12_common.h:971
compute_root_index_t
Definition: d3d12_common.h:1484
static INLINE BOOL D3D12AssertDebugCommandQueueResourceState(D3D12DebugCommandQueue debug_command_queue, void *resource, UINT subresource, UINT state)
Definition: d3d12_common.h:965
static INLINE HRESULT DXGIGetSwapChainBuffer(DXGISwapChain swapchain, UINT buffer, D3D12Resource *surface)
Definition: d3d12_common.h:1215
static INLINE HRESULT D3D12CreateFence(D3D12Device device, UINT64 initial_value, D3D12_FENCE_FLAGS flags, ID3D12Fence **out)
Definition: d3d12_common.h:840
static INLINE void D3D12Dispatch(D3D12GraphicsCommandList graphics_command_list, UINT thread_group_count_x, UINT thread_group_count_y, UINT thread_group_count_z)
Definition: d3d12_common.h:238
float scaling
Definition: d3d12_common.h:1286
static INLINE void D3D12IASetPrimitiveTopology(D3D12GraphicsCommandList graphics_command_list, D3D12_PRIMITIVE_TOPOLOGY primitive_topology)
Definition: d3d12_common.h:302
static INLINE D3D12_DEBUG_FEATURE D3D12GetDebugDeviceFeatureMask(D3D12DebugDevice debug_device)
Definition: d3d12_common.h:952
static INLINE void D3D12ClearRenderTargetView(D3D12GraphicsCommandList command_list, D3D12_CPU_DESCRIPTOR_HANDLE render_target_view, const FLOAT colorRGBA[4], UINT num_rects, const D3D12_RECT *rects)
Definition: d3d12_common.h:1187
D3D12_RESOURCE_STATES
Definition: d3d12.h:2309
Definition: d3d12_common.h:1487
ID3D12Fence * D3D12Fence
Definition: d3d12_common.h:36
static INLINE void D3D12ExecuteCommandLists(D3D12CommandQueue command_queue, UINT num_command_lists, const D3D12CommandList *command_lists)
Definition: d3d12_common.h:1198
D3D12RootSignature rootSignature
Definition: d3d12_common.h:1368
static INLINE void D3D12OMSetRenderTargets(D3D12GraphicsCommandList graphics_command_list, UINT num_render_target_descriptors, D3D12_CPU_DESCRIPTOR_HANDLE *render_target_descriptors, BOOL r_ts_single_handle_to_descriptor_range, D3D12_CPU_DESCRIPTOR_HANDLE *depth_stencil_descriptor)
Definition: d3d12_common.h:475
DXGIAdapter adapter
Definition: d3d12_common.h:1351
ID3D12CommandSignature * D3D12CommandSignature
Definition: d3d12_common.h:40
math_matrix_4x4 mvp_no_rot
Definition: d3d12_common.h:1461
static INLINE void D3D12SetCommandQueueMarker(D3D12CommandQueue command_queue, UINT metadata, void *data, UINT size)
Definition: d3d12_common.h:606
DXGI_FORMAT d3d12_get_closest_match(D3D12Device device, D3D12_FEATURE_DATA_FORMAT_SUPPORT *desired)
Definition: d3d12_common.c:882
static INLINE HRESULT D3D12CreateDevice_(DXGIAdapter adapter, D3D_FEATURE_LEVEL MinimumFeatureLevel, D3D12Device *out)
Definition: d3d12_common.h:1168
static INLINE HRESULT D3D12LoadGraphicsPipeline(D3D12PipelineLibrary pipeline_library, LPCWSTR name, D3D12_GRAPHICS_PIPELINE_STATE_DESC *desc, ID3D12PipelineState **out)
Definition: d3d12_common.h:911
static INLINE ULONG D3D12ReleaseFence(D3D12Fence fence)
Definition: d3d12_common.h:158
static INLINE void D3D12CreateConstantBufferView(D3D12Device device, D3D12_CONSTANT_BUFFER_VIEW_DESC *desc, D3D12_CPU_DESCRIPTOR_HANDLE dest_descriptor)
Definition: d3d12_common.h:713
ID3D12Debug * D3D12Debug
Definition: d3d12_common.h:46
static INLINE HRESULT D3D12PushRetrievalFilter(D3D12InfoQueue info_queue, D3D12_INFO_QUEUE_FILTER *filter)
Definition: d3d12_common.h:1096
D3D12RootSignature sl_rootSignature
Definition: d3d12_common.h:1367
interface ID3D12GraphicsCommandList ID3D12GraphicsCommandList
Definition: d3d12.h:160
D3D12_RECT scissorRect
Definition: d3d12_common.h:1380
D3D12RootSignature cs_rootSignature
Definition: d3d12_common.h:1366
static uint64_t state[MAX_PADS]
Definition: xenon360_input.c:33
D3D12_DEBUG_FEATURE
Definition: d3d12sdklayers.h:427
GLenum GLuint GLenum GLsizei const GLchar * message
Definition: glext.h:6233
D3D_ROOT_SIGNATURE_VERSION
Definition: d3d12.h:1959
GLint GLfloat GLint stencil
Definition: glext.h:6900
time_t time(time_t *timer)
static INLINE void D3D12EndCommandQueueEvent(D3D12CommandQueue command_queue)
Definition: d3d12_common.h:615
Definition: chd_stream.c:62
interface ID3D12Object ID3D12Object
Definition: d3d12.h:48
D3D12CommandQueue handle
Definition: d3d12_common.h:1356
static INLINE HRESULT D3D12CreateComputePipelineState(D3D12Device device, D3D12_COMPUTE_PIPELINE_STATE_DESC *desc, ID3D12PipelineState **out)
Definition: d3d12_common.h:662
#define D3D12_RESOURCE_BARRIER_ALL_SUBRESOURCES
Definition: d3d12.h:868
static INLINE void D3D12EnableDebugLayer(D3D12Debug debug)
Definition: d3d12_common.h:939
GLenum src
Definition: glext.h:6980
static INLINE void D3D12SetGraphicsCommandListMarker(D3D12GraphicsCommandList graphics_command_list, UINT metadata, void *data, UINT size)
Definition: d3d12_common.h:542
GLenum GLint GLuint mask
Definition: glext.h:6668
GLint GLint GLint GLint GLint x
Definition: glext.h:6295
interface ID3D12CommandSignature ID3D12CommandSignature
Definition: d3d12.h:146
Definition: d3d12_common.h:1481
static INLINE const D3D12_VERSIONED_ROOT_SIGNATURE_DESC * D3D12GetUnconvertedRootSignatureDesc(D3D12VersionedRootSignatureDeserializer versioned_root_signature_deserializer)
Definition: d3d12_common.h:88
Definition: d3d12sdklayers.h:2242
D3D12PipelineState pipe_font
Definition: d3d12_common.h:1415
GLint GLint GLsizei GLsizei GLsizei depth
Definition: glext.h:6293
UINT64 total_bytes
Definition: d3d12_common.h:1315
description
Definition: setup.py:7
HRESULT WINAPI D3D12GetDebugInterface(_In_ REFIID riid, _COM_Outptr_opt_ void **ppvDebug)
static INLINE void D3D12DrawInstanced(D3D12GraphicsCommandList graphics_command_list, UINT vertex_count_per_instance, UINT instance_count, UINT start_vertex_location, UINT start_instance_location)
Definition: d3d12_common.h:215
static INLINE UINT64 D3D12GetNumStoredMessagesAllowedByRetrievalFilter(D3D12InfoQueue info_queue)
Definition: d3d12_common.h:1026
interface ID3D12CommandAllocator ID3D12CommandAllocator
Definition: d3d12.h:104
static INLINE HRESULT D3D12PushCopyOfRetrievalFilter(D3D12InfoQueue info_queue)
Definition: d3d12_common.h:1091
D3D12_GPU_DESCRIPTOR_HANDLE textures
Definition: d3d12_common.h:1447
void d3d12_init_texture(D3D12Device device, d3d12_texture_t *tex)
Definition: d3d12_common.c:643
static INLINE BOOL D3D12AssertDebugCommandListResourceState(D3D12DebugCommandList debug_command_list, void *resource, UINT subresource, UINT state)
Definition: d3d12_common.h:975
static INLINE void D3D12Unmap(void *resource, UINT subresource, D3D12_RANGE *written_range)
Definition: d3d12_common.h:109
struct video_shader * shader_preset
Definition: d3d12_common.h:1451
static INLINE HRESULT D3D12GetCachedBlob(D3D12PipelineState pipeline_state, ID3DBlob **blob)
Definition: d3d12_common.h:175
#define RETRO_END_DECLS
Definition: retro_common_api.h:42
bool vsync
Definition: d3d12_common.h:1383
D3D12_PLACED_SUBRESOURCE_FOOTPRINT layout
Definition: d3d12_common.h:1312
D3D12_CONSTANT_BUFFER_VIEW_DESC ubo_view
Definition: d3d12_common.h:1390
static INLINE void D3D12SetPipelineState(D3D12GraphicsCommandList graphics_command_list, D3D12PipelineStateRef pipeline_state)
Definition: d3d12_common.h:322
static INLINE HRESULT D3D12StorePipeline(D3D12PipelineLibrary pipeline_library, LPCWSTR name, D3D12PipelineState pipeline)
Definition: d3d12_common.h:907
Definition: slang_reflection.h:85
float rotation
Definition: d3d12_common.h:1287
UINT stride
Definition: d3d12_common.h:1297
bool enabled
Definition: d3d12_common.h:1406
ID3D10Blob ID3DBlob
Definition: d3dcommon.h:448
static INLINE HRESULT D3D12ReadFromSubresource(void *resource, void *dst_data, UINT dst_row_pitch, UINT dst_depth_pitch, UINT src_subresource, D3D12_BOX *src_box)
Definition: d3d12_common.h:131
static INLINE void D3D12EndGraphicsCommandListEvent(D3D12GraphicsCommandList graphics_command_list)
Definition: d3d12_common.h:552
static INLINE D3D12_RESOURCE_ALLOCATION_INFO D3D12GetResourceAllocationInfo(D3D12Device device, UINT visible_mask, UINT num_resource_descs, D3D12_RESOURCE_DESC *resource_descs)
Definition: d3d12_common.h:786
GLuint index
Definition: glext.h:6671
ID3D12Object * D3D12Object
Definition: d3d12_common.h:27
unsigned luts
Definition: video_shader_parse.h:156
static INLINE LUID D3D12GetAdapterLuid(D3D12Device device)
Definition: d3d12_common.h:898
ID3D12RootSignatureDeserializer * D3D12RootSignatureDeserializer
Definition: d3d12_common.h:30
static INLINE UINT64 D3D12GetNumMessagesAllowedByStorageFilter(D3D12InfoQueue info_queue)
Definition: d3d12_common.h:1014
static INLINE HRESULT D3D12CloseGraphicsCommandList(D3D12GraphicsCommandList graphics_command_list)
Definition: d3d12_common.h:199
D3D12PipelineState pipe_blend
Definition: d3d12_common.h:1413
static INLINE HRESULT D3D12CreateHeap(D3D12Device device, D3D12_HEAP_DESC *desc, ID3D12Heap **out)
Definition: d3d12_common.h:813
static INLINE D3D12_GPU_VIRTUAL_ADDRESS D3D12GetGPUVirtualAddress(void *resource)
Definition: d3d12_common.h:114
static INLINE void D3D12GetCopyableFootprints(D3D12Device device, D3D12_RESOURCE_DESC *resource_desc, UINT first_subresource, UINT num_subresources, UINT64 base_offset, D3D12_PLACED_SUBRESOURCE_FOOTPRINT *layouts, UINT *num_rows, UINT64 *row_size_in_bytes, UINT64 *total_bytes)
Definition: d3d12_common.h:850
static INLINE ULONG D3D12ReleaseCommandAllocator(D3D12CommandAllocator command_allocator)
Definition: d3d12_common.h:150
static INLINE HRESULT D3D12WriteToSubresource(void *resource, UINT dst_subresource, D3D12_BOX *dst_box, void *src_data, UINT src_row_pitch, UINT src_depth_pitch)
Definition: d3d12_common.h:118
static INLINE ULONG D3D12ReleasePageable(D3D12Pageable pageable)
Definition: d3d12_common.h:94
static INLINE void D3D12SetGraphicsRoot32BitConstant(D3D12GraphicsCommandList graphics_command_list, UINT root_parameter_index, UINT src_data, UINT dest_offset_in32_bit_values)
Definition: d3d12_common.h:374
ID3D12DescriptorHeap * D3D12DescriptorHeap
Definition: d3d12_common.h:38
unsigned int BOOL
Definition: gctypes.h:51
static INLINE HRESULT D3D12SetDebugDeviceFeatureMask(D3D12DebugDevice debug_device, D3D12_DEBUG_FEATURE mask)
Definition: d3d12_common.h:948
D3D12Resource ubo
Definition: d3d12_common.h:1389
static INLINE HRESULT D3D12SignalFence(D3D12Fence fence, UINT64 value)
Definition: d3d12_common.h:167
interface ID3D12RootSignatureDeserializer ID3D12RootSignatureDeserializer
Definition: d3d12.h:69
static INLINE HRESULT D3D12PushStorageFilter(D3D12InfoQueue info_queue, D3D12_INFO_QUEUE_FILTER *filter)
Definition: d3d12_common.h:1061
static INLINE UINT64 D3D12GetCompletedValue(D3D12Fence fence)
Definition: d3d12_common.h:159
static INLINE void D3D12SetGraphicsRoot32BitConstants(D3D12GraphicsCommandList graphics_command_list, UINT root_parameter_index, UINT num32_bit_values_to_set, void *src_data, UINT dest_offset_in32_bit_values)
Definition: d3d12_common.h:394
D3D12_TILE_MAPPING_FLAGS
Definition: d3d12.h:2291
uint32_t UINT32
Definition: coretypes.h:10
interface ID3D12RootSignature ID3D12RootSignature
Definition: d3d12.h:62
D3D12_GPU_DESCRIPTOR_HANDLE sampler
Definition: d3d12_common.h:1310
static INLINE HRESULT D3D12AddApplicationMessage(D3D12InfoQueue info_queue, D3D12_MESSAGE_SEVERITY severity, LPCSTR description)
Definition: d3d12_common.h:1117
static INLINE HRESULT D3D12GetDebugInterface_(D3D12Debug *out)
Definition: d3d12_common.h:1162
D3D12_DESCRIPTOR_HEAP_DESC desc
Definition: d3d12_common.h:1294
static INLINE HRESULT D3D12ResetGraphicsCommandList(D3D12GraphicsCommandList graphics_command_list, D3D12CommandAllocator allocator, D3D12PipelineState initial_state)
Definition: d3d12_common.h:203
Definition: video_driver.h:686
static INLINE HRESULT D3D12Serialize(D3D12PipelineLibrary pipeline_library, void *data, SIZE_T data_size_in_bytes)
Definition: d3d12_common.h:934
int frame_index
Definition: d3d12_common.h:1382
DXGI_FORMAT format
Definition: d3d12_common.h:1459
GLuint color
Definition: glext.h:6883
RETRO_BEGIN_DECLS D3D12_RENDER_TARGET_BLEND_DESC d3d12_blend_enable_desc
Definition: d3d12_common.c:539
bool dirty
Definition: d3d12_common.h:1317
float v
Definition: d3d12_common.h:1281
static INLINE HRESULT D3D12SignalCommandQueue(D3D12CommandQueue command_queue, D3D12Fence fence, UINT64 value)
Definition: d3d12_common.h:620
GLint GLint GLsizei GLsizei GLsizei GLint GLenum format
Definition: glext.h:6293
D3D_PRIMITIVE_TOPOLOGY
Definition: d3dcommon.h:108
static INLINE void D3D12SetComputeRootSignature(D3D12GraphicsCommandList graphics_command_list, D3D12RootSignature root_signature)
Definition: d3d12_common.h:339
static INLINE ULONG D3D12ReleaseRootSignatureDeserializer(D3D12RootSignatureDeserializer root_signature_deserializer)
Definition: d3d12_common.h:65
const GLuint * textures
Definition: glext.h:9001
GLint GLint GLint GLint GLint GLint GLint GLbitfield GLenum filter
Definition: glext.h:7672
static INLINE void D3D12ClearDepthStencilView(D3D12GraphicsCommandList graphics_command_list, D3D12_CPU_DESCRIPTOR_HANDLE depth_stencil_view, D3D12_CLEAR_FLAGS clear_flags, FLOAT depth, UINT8 stencil, UINT num_rects, D3D12_RECT *rects)
Definition: d3d12_common.h:486
Definition: d3d12_common.h:1302
interface ID3D12Debug ID3D12Debug
Definition: d3d12sdklayers.h:48
void d3d12_release_texture(d3d12_texture_t *texture)
Definition: d3d12_common.c:625
GLint GLint GLsizei width
Definition: glext.h:6293
static INLINE void D3D12SetMuteDebugOutput(D3D12InfoQueue info_queue, BOOL b_mute)
Definition: d3d12_common.h:1151
static INLINE ULONG D3D12ReleaseDeviceChild(D3D12DeviceChild device_child)
Definition: d3d12_common.h:56
static INLINE void D3D12ClearStorageFilter(D3D12InfoQueue info_queue)
Definition: d3d12_common.h:1048
static INLINE HRESULT D3D12AddMessage(D3D12InfoQueue info_queue, D3D12_MESSAGE_CATEGORY category, D3D12_MESSAGE_SEVERITY severity, D3D12_MESSAGE_ID i_d, LPCSTR description)
Definition: d3d12_common.h:1108
static INLINE HRESULT D3D12CheckFeatureSupport(D3D12Device device, D3D12_FEATURE feature, void *feature_support_data, UINT feature_support_data_size)
Definition: d3d12_common.h:680
static INLINE HRESULT D3D12GetClockCalibration(D3D12CommandQueue command_queue, UINT64 *gpu_timestamp, UINT64 *cpu_timestamp)
Definition: d3d12_common.h:632
static INLINE void d3d12_set_sampler(D3D12GraphicsCommandList cmd, D3D12_GPU_DESCRIPTOR_HANDLE sampler)
Definition: d3d12_common.h:1557
static INLINE void D3D12BeginCommandQueueEvent(D3D12CommandQueue command_queue, UINT metadata, void *data, UINT size)
Definition: d3d12_common.h:611
Definition: glslang_tab.cpp:135
Definition: slang_process.h:74
#define D3D12_MAX_TEXTURE_DIMENSION_2_TO_EXP
Definition: d3d12.h:740
d3d12_texture_t feedback
Definition: d3d12_common.h:1442
bool d3d12_init_descriptors(d3d12_video_t *d3d12)
Definition: d3d12_common.c:361
static INLINE HRESULT D3D12PushEmptyStorageFilter(D3D12InfoQueue info_queue)
Definition: d3d12_common.h:1052
bool d3d12_init_swapchain(d3d12_video_t *d3d12, int width, int height, void *corewindow)
Definition: d3d12_common.c:218
Definition: glslang_tab.cpp:136
static INLINE ULONG D3D12ReleasePipelineLibrary(D3D12PipelineLibrary pipeline_library)
Definition: d3d12_common.h:902
D3D12_FEATURE
Definition: d3d12.h:1773
void d3d12_create_fullscreen_quad_vbo(D3D12Device device, D3D12_VERTEX_BUFFER_VIEW *view, D3D12Resource *vbo)
Definition: d3d12_common.c:858
D3D12_PREDICATION_OP
Definition: d3d12.h:3468
static INLINE HRESULT D3D12SetBreakOnCategory(D3D12InfoQueue info_queue, D3D12_MESSAGE_CATEGORY category, BOOL b_enable)
Definition: d3d12_common.h:1123
D3D12_GPU_DESCRIPTOR_HANDLE sampler
Definition: d3d12_common.h:1438
static INLINE HRESULT D3D12CreatePlacedResource(D3D12Device device, D3D12Heap heap, UINT64 heap_offset, D3D12_RESOURCE_DESC *desc, D3D12_RESOURCE_STATES initial_state, D3D12_CLEAR_VALUE *optimized_clear_value, ID3D12Resource **out)
Definition: d3d12_common.h:817
static INLINE void D3D12CopyBufferRegion(D3D12GraphicsCommandList graphics_command_list, D3D12Resource dst_buffer, UINT64 dst_offset, D3D12Resource src_buffer, UINT64 src_offset, UINT64 num_bytes)
Definition: d3d12_common.h:247
UINT64 row_size_in_bytes
Definition: d3d12_common.h:1314
IDXGIAdapter1 * DXGIAdapter
Definition: dxgi_common.h:276
static INLINE HRESULT D3D12CreateCommandQueue(D3D12Device device, D3D12_COMMAND_QUEUE_DESC *desc, ID3D12CommandQueue **out)
Definition: d3d12_common.h:645
static INLINE void D3D12ExecuteIndirect(D3D12GraphicsCommandList graphics_command_list, D3D12CommandSignature command_signature, UINT max_command_count, void *argument_buffer, UINT64 argument_buffer_offset, void *count_buffer, UINT64 count_buffer_offset)
Definition: d3d12_common.h:556
#define GFX_MAX_SHADERS
Definition: video_shader_parse.h:30
GLsizei const GLfloat * value
Definition: glext.h:6709
Definition: metal_common.m:516
static INLINE void D3D12SetGraphicsRootSignature(D3D12GraphicsCommandList graphics_command_list, D3D12RootSignature root_signature)
Definition: d3d12_common.h:344
static INLINE HRESULT D3D12CreateGraphicsPipelineState(D3D12Device device, D3D12_GRAPHICS_PIPELINE_STATE_DESC *desc, ID3D12PipelineState **out)
Definition: d3d12_common.h:656
static INLINE HRESULT D3D12GetTimestampFrequency(D3D12CommandQueue command_queue, UINT64 *frequency)
Definition: d3d12_common.h:628
static INLINE UINT64 D3D12GetNumStoredMessages(D3D12InfoQueue info_queue)
Definition: d3d12_common.h:1022
D3D12_GPU_DESCRIPTOR_HANDLE samplers
Definition: d3d12_common.h:1448
static INLINE HRESULT D3D12SetBreakOnSeverity(D3D12InfoQueue info_queue, D3D12_MESSAGE_SEVERITY severity, BOOL b_enable)
Definition: d3d12_common.h:1128
static INLINE HRESULT D3D12CreateGraphicsCommandList(D3D12Device device, UINT node_mask, D3D12_COMMAND_LIST_TYPE type, D3D12CommandAllocator command_allocator, D3D12PipelineState initial_state, D3D12GraphicsCommandList *out)
Definition: d3d12_common.h:1174
D3D12_RLDO_FLAGS
Definition: d3d12sdklayers.h:409
static INLINE ULONG D3D12ReleaseResource(void *resource)
Definition: d3d12_common.h:99
static INLINE void D3D12BeginGraphicsCommandListEvent(D3D12GraphicsCommandList graphics_command_list, UINT metadata, void *data, UINT size)
Definition: d3d12_common.h:547
HRESULT WINAPI D3D12CreateDevice(_In_opt_ IUnknown *pAdapter, D3D_FEATURE_LEVEL MinimumFeatureLevel, _In_ REFIID riid, _COM_Outptr_opt_ void **ppDevice)
UINT64 fenceValue
Definition: d3d12_common.h:1361
static INLINE void D3D12CreateSampler(D3D12Device device, D3D12_SAMPLER_DESC *desc, D3D12_CPU_DESCRIPTOR_HANDLE dest_descriptor)
Definition: d3d12_common.h:755
HANDLE fenceEvent
Definition: d3d12_common.h:1360
GLenum GLenum dst
Definition: glext.h:6980
bool d3d12_init_pipeline(D3D12Device device, D3DBlob vs_code, D3DBlob ps_code, D3DBlob gs_code, D3D12_GRAPHICS_PIPELINE_STATE_DESC *desc, D3D12PipelineState *out)
Definition: d3d12_common.c:552
static INLINE void D3D12ResolveSubresource(D3D12GraphicsCommandList graphics_command_list, void *dst_resource, UINT dst_subresource, void *src_resource, UINT src_subresource, DXGI_FORMAT format)
Definition: d3d12_common.h:290
static INLINE HRESULT D3D12CreateReservedResource(D3D12Device device, D3D12_RESOURCE_DESC *desc, D3D12_RESOURCE_STATES initial_state, D3D12_CLEAR_VALUE *optimized_clear_value, ID3D12Resource **out)
Definition: d3d12_common.h:830
static INLINE UINT D3D12GetRetrievalFilterStackSize(D3D12InfoQueue info_queue)
Definition: d3d12_common.h:1104
static INLINE ULONG D3D12ReleaseHeap(D3D12Heap heap)
Definition: d3d12_common.h:98
D3D12_TILE_RANGE_FLAGS
Definition: d3d12.h:2259
GLubyte GLubyte GLubyte GLubyte w
Definition: glext.h:6742
ID3D12Resource * D3D12Resource
Definition: d3d12_common.h:34
static INLINE HRESULT D3D12GetDeviceRemovedReason(D3D12Device device)
Definition: d3d12_common.h:846
#define ALIGN(x)
Definition: d3d12_common.h:1325
#define barrier()
Definition: internal_interface.hpp:494
interface ID3D12DebugDevice ID3D12DebugDevice
Definition: d3d12sdklayers.h:76
D3D12Resource vbo
Definition: d3d12_common.h:1391
static INLINE HRESULT D3D12GetRetrievalFilter(D3D12InfoQueue info_queue, D3D12_INFO_QUEUE_FILTER *filter, SIZE_T *filter_byte_length)
Definition: d3d12_common.h:1078
ID3D12PipelineState * D3D12PipelineState
Definition: d3d12_common.h:37
static INLINE BOOL D3D12GetBreakOnID(D3D12InfoQueue info_queue, D3D12_MESSAGE_ID i_d)
Definition: d3d12_common.h:1147
static INLINE D3D12_CPU_DESCRIPTOR_HANDLE D3D12GetCPUDescriptorHandleForHeapStart(D3D12DescriptorHeap descriptor_heap)
Definition: d3d12_common.h:1239
static INLINE ULONG D3D12ReleaseDevice(D3D12Device device)
Definition: d3d12_common.h:637
int capacity
Definition: d3d12_common.h:1419
GLfloat GLfloat GLfloat GLfloat h
Definition: glext.h:8390
Definition: d3d12_common.h:1291
static INLINE void D3D12SetDescriptorHeaps(D3D12GraphicsCommandList command_list, UINT num_descriptor_heaps, const D3D12DescriptorHeap *descriptor_heaps)
Definition: d3d12_common.h:1219
GLuint sampler
Definition: glext.h:7950
static INLINE UINT64 D3D12GetNumMessagesDiscardedByMessageCountLimit(D3D12InfoQueue info_queue)
Definition: d3d12_common.h:1030
Definition: video4linux2.c:51
D3D12_MESSAGE_SEVERITY
Definition: d3d12sdklayers.h:1115
interface ID3D12PipelineState ID3D12PipelineState
Definition: d3d12.h:125
D3D12PipelineState pipe_noblend
Definition: d3d12_common.h:1414
GLbitfield flags
Definition: glext.h:7828
D3D12_HEAP_TYPE
Definition: d3d12.h:2092
void d3d12_update_texture(int width, int height, int pitch, DXGI_FORMAT format, const void *data, d3d12_texture_t *texture)
Definition: d3d12_common.c:757
static INLINE void D3D12CreateUnorderedAccessView(D3D12Device device, void *resource, void *counter_resource, D3D12_UNORDERED_ACCESS_VIEW_DESC *desc, D3D12_CPU_DESCRIPTOR_HANDLE dest_descriptor)
Definition: d3d12_common.h:728
static INLINE HRESULT D3D12LoadComputePipeline(D3D12PipelineLibrary pipeline_library, LPCWSTR name, D3D12_COMPUTE_PIPELINE_STATE_DESC *desc, ID3D12PipelineState **out)
Definition: d3d12_common.h:920
D3D12_CPU_DESCRIPTOR_HANDLE rt_view
Definition: d3d12_common.h:1311
UINT64 D3D12_GPU_VIRTUAL_ADDRESS
Definition: d3d12.h:1012
static INLINE void D3D12CopyDescriptors(D3D12Device device, UINT num_dest_descriptor_ranges, D3D12_CPU_DESCRIPTOR_HANDLE *dest_descriptor_range_starts, UINT *dest_descriptor_range_sizes, UINT num_src_descriptor_ranges, D3D12_CPU_DESCRIPTOR_HANDLE *src_descriptor_range_starts, UINT *src_descriptor_range_sizes, D3D12_DESCRIPTOR_HEAP_TYPE descriptor_heaps_type)
Definition: d3d12_common.h:760
static INLINE void d3d12_set_texture_and_sampler(D3D12GraphicsCommandList cmd, const d3d12_texture_t *texture)
Definition: d3d12_common.h:1563
static INLINE ULONG D3D12ReleaseVersionedRootSignatureDeserializer(D3D12VersionedRootSignatureDeserializer versioned_root_signature_deserializer)
Definition: d3d12_common.h:74
DXGIFactory factory
Definition: d3d12_common.h:1349
ID3D12DebugCommandList * D3D12DebugCommandList
Definition: d3d12_common.h:49
unsigned cur_mon_id
Definition: d3d12_common.h:1345
RECT D3D12_RECT
Definition: d3d12.h:1116
UINT num_rows
Definition: d3d12_common.h:1313
static INLINE void D3D12SetComputeRoot32BitConstants(D3D12GraphicsCommandList graphics_command_list, UINT root_parameter_index, UINT num32_bit_values_to_set, void *src_data, UINT dest_offset_in32_bit_values)
Definition: d3d12_common.h:383
struct nk_device device
Definition: nk_common.c:44
IDXGISwapChain3 * DXGISwapChain
Definition: dxgi_common.h:282
pass_semantics_t semantics
Definition: d3d12_common.h:1445
Definition: d3d12_common.h:1477
unsigned int uint32_t
Definition: stdint.h:126
static INLINE BOOL D3D12GetBreakOnSeverity(D3D12InfoQueue info_queue, D3D12_MESSAGE_SEVERITY severity)
Definition: d3d12_common.h:1143
ID3D12GraphicsCommandList * D3D12GraphicsCommandList
Definition: d3d12_common.h:42
D3D12Resource menu_pipeline_vbo
Definition: d3d12_common.h:1468
static INLINE HRESULT D3D12GetHeapProperties(void *resource, D3D12_HEAP_PROPERTIES *heap_properties, D3D12_HEAP_FLAGS *heap_flags)
Definition: d3d12_common.h:144
static INLINE HRESULT D3D12CreateCommandAllocator(D3D12Device device, D3D12_COMMAND_LIST_TYPE type, ID3D12CommandAllocator **out)
Definition: d3d12_common.h:650
interface ID3D12DescriptorHeap ID3D12DescriptorHeap
Definition: d3d12.h:132
float y
Definition: d3d12_common.h:1277
static INLINE HRESULT D3D12SetDebugCommandListFeatureMask(D3D12DebugCommandList debug_command_list, D3D12_DEBUG_FEATURE mask)
Definition: d3d12_common.h:981
int offset
Definition: d3d12_common.h:1418
GLint GLint GLsizei GLsizei height
Definition: glext.h:6293
D3D12_TILE_COPY_FLAGS
Definition: d3d12.h:2299
D3D12_CPU_DESCRIPTOR_HANDLE cpu
Definition: d3d12_common.h:1295
static INLINE void D3D12SetGraphicsRootDescriptorTable(D3D12GraphicsCommandList graphics_command_list, UINT root_parameter_index, D3D12_GPU_DESCRIPTOR_HANDLE base_descriptor)
Definition: d3d12_common.h:357
Definition: d3d12_common.h:1486
D3D12CommandAllocator allocator
Definition: d3d12_common.h:1357
D3D12PipelineState mipmapgen_pipe
Definition: d3d12_common.h:1455
static INLINE HRESULT D3D12GetStorageFilter(D3D12InfoQueue info_queue, D3D12_INFO_QUEUE_FILTER *filter, SIZE_T *filter_byte_length)
Definition: d3d12_common.h:1043
static INLINE ULONG D3D12ReleaseCommandQueue(D3D12CommandQueue command_queue)
Definition: d3d12_common.h:570
static INLINE HRESULT D3D12AddStorageFilterEntries(D3D12InfoQueue info_queue, D3D12_INFO_QUEUE_FILTER *filter)
Definition: d3d12_common.h:1039
uint8_t UINT8
Definition: coretypes.h:12