Просмотр исходного кода

Explicitly casting the result of std::size to the right type

Fixes #1856
Jorrit Rouwe 3 недель назад
Родитель
Сommit
383d4dbc84

+ 1 - 1
Jolt/Compute/DX12/ComputeQueueDX12.cpp

@@ -175,7 +175,7 @@ void ComputeQueueDX12::Execute()
 
 	// Execute the command list
 	ID3D12CommandList *command_lists[] = { mCommandList.Get() };
-	mCommandQueue->ExecuteCommandLists(std::size(command_lists), command_lists);
+	mCommandQueue->ExecuteCommandLists((UINT)std::size(command_lists), command_lists);
 
 	// Schedule a Signal command in the queue
 	if (HRFailed(mCommandQueue->Signal(mFence.Get(), mFenceValue)))

+ 2 - 2
Jolt/Compute/DX12/ComputeSystemDX12Impl.cpp

@@ -123,9 +123,9 @@ bool ComputeSystemDX12Impl::Initialize(ComputeSystemResult &outResult)
 			D3D12_MESSAGE_ID_RESOURCE_BARRIER_MISMATCHING_COMMAND_LIST_TYPE,
 		};
 		D3D12_INFO_QUEUE_FILTER filter = { };
-		filter.DenyList.NumIDs = static_cast<UINT>( std::size( hide ) );
+		filter.DenyList.NumIDs = static_cast<UINT>(std::size(hide));
 		filter.DenyList.pIDList = hide;
-		info_queue->AddStorageFilterEntries( &filter );
+		info_queue->AddStorageFilterEntries(&filter);
 	}
 #endif // JPH_DEBUG
 

+ 1 - 1
Jolt/Compute/VK/ComputeQueueVK.cpp

@@ -52,7 +52,7 @@ bool ComputeQueueVK::Initialize(uint32 inComputeQueueIndex, ComputeQueueResult &
 	};
 	VkDescriptorPoolCreateInfo descriptor_info = {};
 	descriptor_info.sType = VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO;
-	descriptor_info.poolSizeCount = std::size(descriptor_pool_sizes);
+	descriptor_info.poolSizeCount = (uint32)std::size(descriptor_pool_sizes);
 	descriptor_info.pPoolSizes = descriptor_pool_sizes;
 	descriptor_info.maxSets = 256;
 	if (VKFailed(vkCreateDescriptorPool(device, &descriptor_info, nullptr, &mDescriptorPool), outResult))

+ 2 - 2
TestFramework/Renderer/DX12/RendererDX12.cpp

@@ -327,7 +327,7 @@ bool RendererDX12::BeginFrame(const CameraState &inCamera, float inWorldScale)
 
 	// Set SRV heap
 	ID3D12DescriptorHeap *heaps[] = { mSRVHeap.Get() };
-	mCommandList->SetDescriptorHeaps(std::size(heaps), heaps);
+	mCommandList->SetDescriptorHeaps((UINT)std::size(heaps), heaps);
 
 	// Indicate that the back buffer will be used as a render target.
 	D3D12_RESOURCE_BARRIER barrier;
@@ -411,7 +411,7 @@ void RendererDX12::EndFrame()
 
 	// Execute the command list
 	ID3D12CommandList* command_lists[] = { mCommandList.Get() };
-	mCommandQueue->ExecuteCommandLists(std::size(command_lists), command_lists);
+	mCommandQueue->ExecuteCommandLists((UINT)std::size(command_lists), command_lists);
 
 	// Present the frame
 	FatalErrorIfFailed(mSwapChain->Present(1, 0));

+ 7 - 7
TestFramework/Renderer/DebugRendererImp.cpp

@@ -29,7 +29,7 @@ DebugRendererImp::DebugRendererImp(Renderer *inRenderer, const Font *inFont) :
 	// Lines
 	Ref<VertexShader> vtx_line = mRenderer->CreateVertexShader("LineVertexShader");
 	Ref<PixelShader> pix_line = mRenderer->CreatePixelShader("LinePixelShader");
-	mLineState = mRenderer->CreatePipelineState(vtx_line, line_vertex_desc, std::size(line_vertex_desc), pix_line, PipelineState::EDrawPass::Normal, PipelineState::EFillMode::Solid, PipelineState::ETopology::Line, PipelineState::EDepthTest::On, PipelineState::EBlendMode::AlphaBlend, PipelineState::ECullMode::Backface);
+	mLineState = mRenderer->CreatePipelineState(vtx_line, line_vertex_desc, (uint)std::size(line_vertex_desc), pix_line, PipelineState::EDrawPass::Normal, PipelineState::EFillMode::Solid, PipelineState::ETopology::Line, PipelineState::EDepthTest::On, PipelineState::EBlendMode::AlphaBlend, PipelineState::ECullMode::Backface);
 
 	// Create input layout for triangles
 	const PipelineState::EInputDescription triangles_vertex_desc[] =
@@ -46,16 +46,16 @@ DebugRendererImp::DebugRendererImp(Renderer *inRenderer, const Font *inFont) :
 	// Triangles
 	Ref<VertexShader> vtx_triangle = mRenderer->CreateVertexShader("TriangleVertexShader");
 	Ref<PixelShader> pix_triangle  = mRenderer->CreatePixelShader("TrianglePixelShader");
-	mTriangleStateBF = mRenderer->CreatePipelineState(vtx_triangle, triangles_vertex_desc, std::size(triangles_vertex_desc), pix_triangle, PipelineState::EDrawPass::Normal, PipelineState::EFillMode::Solid, PipelineState::ETopology::Triangle, PipelineState::EDepthTest::On, PipelineState::EBlendMode::AlphaBlend, PipelineState::ECullMode::Backface);
-	mTriangleStateFF = mRenderer->CreatePipelineState(vtx_triangle, triangles_vertex_desc, std::size(triangles_vertex_desc), pix_triangle, PipelineState::EDrawPass::Normal, PipelineState::EFillMode::Solid, PipelineState::ETopology::Triangle, PipelineState::EDepthTest::On, PipelineState::EBlendMode::AlphaBlend, PipelineState::ECullMode::FrontFace);
-	mTriangleStateWire = mRenderer->CreatePipelineState(vtx_triangle, triangles_vertex_desc, std::size(triangles_vertex_desc), pix_triangle, PipelineState::EDrawPass::Normal, PipelineState::EFillMode::Wireframe, PipelineState::ETopology::Triangle, PipelineState::EDepthTest::On, PipelineState::EBlendMode::AlphaBlend, PipelineState::ECullMode::Backface);
+	mTriangleStateBF = mRenderer->CreatePipelineState(vtx_triangle, triangles_vertex_desc, (uint)std::size(triangles_vertex_desc), pix_triangle, PipelineState::EDrawPass::Normal, PipelineState::EFillMode::Solid, PipelineState::ETopology::Triangle, PipelineState::EDepthTest::On, PipelineState::EBlendMode::AlphaBlend, PipelineState::ECullMode::Backface);
+	mTriangleStateFF = mRenderer->CreatePipelineState(vtx_triangle, triangles_vertex_desc, (uint)std::size(triangles_vertex_desc), pix_triangle, PipelineState::EDrawPass::Normal, PipelineState::EFillMode::Solid, PipelineState::ETopology::Triangle, PipelineState::EDepthTest::On, PipelineState::EBlendMode::AlphaBlend, PipelineState::ECullMode::FrontFace);
+	mTriangleStateWire = mRenderer->CreatePipelineState(vtx_triangle, triangles_vertex_desc, (uint)std::size(triangles_vertex_desc), pix_triangle, PipelineState::EDrawPass::Normal, PipelineState::EFillMode::Wireframe, PipelineState::ETopology::Triangle, PipelineState::EDepthTest::On, PipelineState::EBlendMode::AlphaBlend, PipelineState::ECullMode::Backface);
 
 	// Shadow pass
 	Ref<VertexShader> vtx_shadow = mRenderer->CreateVertexShader("TriangleDepthVertexShader");
 	Ref<PixelShader> pix_shadow = mRenderer->CreatePixelShader("TriangleDepthPixelShader");
-	mShadowStateBF = mRenderer->CreatePipelineState(vtx_shadow, triangles_vertex_desc, std::size(triangles_vertex_desc), pix_shadow, PipelineState::EDrawPass::Shadow, PipelineState::EFillMode::Solid, PipelineState::ETopology::Triangle, PipelineState::EDepthTest::On, PipelineState::EBlendMode::AlphaBlend, PipelineState::ECullMode::Backface);
-	mShadowStateFF = mRenderer->CreatePipelineState(vtx_shadow, triangles_vertex_desc, std::size(triangles_vertex_desc), pix_shadow, PipelineState::EDrawPass::Shadow, PipelineState::EFillMode::Solid, PipelineState::ETopology::Triangle, PipelineState::EDepthTest::On, PipelineState::EBlendMode::AlphaBlend, PipelineState::ECullMode::FrontFace);
-	mShadowStateWire = mRenderer->CreatePipelineState(vtx_shadow, triangles_vertex_desc, std::size(triangles_vertex_desc), pix_shadow, PipelineState::EDrawPass::Shadow, PipelineState::EFillMode::Wireframe, PipelineState::ETopology::Triangle, PipelineState::EDepthTest::On, PipelineState::EBlendMode::AlphaBlend, PipelineState::ECullMode::Backface);
+	mShadowStateBF = mRenderer->CreatePipelineState(vtx_shadow, triangles_vertex_desc, (uint)std::size(triangles_vertex_desc), pix_shadow, PipelineState::EDrawPass::Shadow, PipelineState::EFillMode::Solid, PipelineState::ETopology::Triangle, PipelineState::EDepthTest::On, PipelineState::EBlendMode::AlphaBlend, PipelineState::ECullMode::Backface);
+	mShadowStateFF = mRenderer->CreatePipelineState(vtx_shadow, triangles_vertex_desc, (uint)std::size(triangles_vertex_desc), pix_shadow, PipelineState::EDrawPass::Shadow, PipelineState::EFillMode::Solid, PipelineState::ETopology::Triangle, PipelineState::EDepthTest::On, PipelineState::EBlendMode::AlphaBlend, PipelineState::ECullMode::FrontFace);
+	mShadowStateWire = mRenderer->CreatePipelineState(vtx_shadow, triangles_vertex_desc, (uint)std::size(triangles_vertex_desc), pix_shadow, PipelineState::EDrawPass::Shadow, PipelineState::EFillMode::Wireframe, PipelineState::ETopology::Triangle, PipelineState::EDepthTest::On, PipelineState::EBlendMode::AlphaBlend, PipelineState::ECullMode::Backface);
 
 	// Create instances buffer
 	for (uint n = 0; n < Renderer::cFrameCount; ++n)

+ 1 - 1
TestFramework/Renderer/Font.cpp

@@ -150,7 +150,7 @@ try_again:;
 	// Load pixel shader
 	Ref<PixelShader> pix = mRenderer->CreatePixelShader("FontPixelShader");
 
-	mPipelineState = mRenderer->CreatePipelineState(vtx, vertex_desc, std::size(vertex_desc), pix, PipelineState::EDrawPass::Normal, PipelineState::EFillMode::Solid, PipelineState::ETopology::Triangle, PipelineState::EDepthTest::Off, PipelineState::EBlendMode::AlphaBlend, PipelineState::ECullMode::Backface);
+	mPipelineState = mRenderer->CreatePipelineState(vtx, vertex_desc, (uint)std::size(vertex_desc), pix, PipelineState::EDrawPass::Normal, PipelineState::EFillMode::Solid, PipelineState::ETopology::Triangle, PipelineState::EDepthTest::Off, PipelineState::EBlendMode::AlphaBlend, PipelineState::ECullMode::Backface);
 
 	// Create texture
 	mTexture = mRenderer->CreateTexture(surface);

+ 2 - 2
TestFramework/Renderer/VK/PipelineStateVK.cpp

@@ -142,12 +142,12 @@ PipelineStateVK::PipelineStateVK(RendererVK *inRenderer, const VertexShaderVK *i
 	};
 	VkPipelineDynamicStateCreateInfo dynamic_state = {};
 	dynamic_state.sType = VK_STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO;
-	dynamic_state.dynamicStateCount = std::size(dynamic_states);
+	dynamic_state.dynamicStateCount = (uint32)std::size(dynamic_states);
 	dynamic_state.pDynamicStates = dynamic_states;
 
 	VkGraphicsPipelineCreateInfo pipeline_info = {};
 	pipeline_info.sType = VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO;
-	pipeline_info.stageCount = std::size(shader_stages);
+	pipeline_info.stageCount = (uint32)std::size(shader_stages);
 	pipeline_info.pStages = shader_stages;
 	pipeline_info.pVertexInputState = &vertex_input_info;
 	pipeline_info.pInputAssemblyState = &input_assembly;

+ 7 - 7
TestFramework/Renderer/VK/RendererVK.cpp

@@ -180,7 +180,7 @@ void RendererVK::Initialize(ApplicationWindow *inWindow)
 	ubo_layout_binding[1].stageFlags = VK_SHADER_STAGE_FRAGMENT_BIT;
 	VkDescriptorSetLayoutCreateInfo ubo_dsl = {};
 	ubo_dsl.sType = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO;
-	ubo_dsl.bindingCount = std::size(ubo_layout_binding);
+	ubo_dsl.bindingCount = (uint32)std::size(ubo_layout_binding);
 	ubo_dsl.pBindings = ubo_layout_binding;
 	FatalErrorIfFailed(vkCreateDescriptorSetLayout(mDevice, &ubo_dsl, nullptr, &mDescriptorSetLayoutUBO));
 
@@ -200,7 +200,7 @@ void RendererVK::Initialize(ApplicationWindow *inWindow)
 	VkPipelineLayoutCreateInfo pipeline_layout = {};
 	VkDescriptorSetLayout layout_handles[] = { mDescriptorSetLayoutUBO, mDescriptorSetLayoutTexture };
 	pipeline_layout.sType = VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO;
-	pipeline_layout.setLayoutCount = std::size(layout_handles);
+	pipeline_layout.setLayoutCount = (uint32)std::size(layout_handles);
 	pipeline_layout.pSetLayouts = layout_handles;
 	pipeline_layout.pushConstantRangeCount = 0;
 	FatalErrorIfFailed(vkCreatePipelineLayout(mDevice, &pipeline_layout, nullptr, &mPipelineLayout));
@@ -212,7 +212,7 @@ void RendererVK::Initialize(ApplicationWindow *inWindow)
 	};
 	VkDescriptorPoolCreateInfo descriptor_info = {};
 	descriptor_info.sType = VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO;
-	descriptor_info.poolSizeCount = std::size(descriptor_pool_sizes);
+	descriptor_info.poolSizeCount = (uint32)std::size(descriptor_pool_sizes);
 	descriptor_info.pPoolSizes = descriptor_pool_sizes;
 	descriptor_info.maxSets = 256;
 	FatalErrorIfFailed(vkCreateDescriptorPool(mDevice, &descriptor_info, nullptr, &mDescriptorPool));
@@ -333,7 +333,7 @@ void RendererVK::Initialize(ApplicationWindow *inWindow)
 	VkFramebufferCreateInfo frame_buffer_info = {};
 	frame_buffer_info.sType = VK_STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO;
 	frame_buffer_info.renderPass = mRenderPassShadow;
-	frame_buffer_info.attachmentCount = std::size(attachments);
+	frame_buffer_info.attachmentCount = (uint32)std::size(attachments);
 	frame_buffer_info.pAttachments = attachments;
 	frame_buffer_info.width = cShadowMapSize;
 	frame_buffer_info.height = cShadowMapSize;
@@ -381,7 +381,7 @@ void RendererVK::Initialize(ApplicationWindow *inWindow)
 		dependencies_normal.dstAccessMask = VK_ACCESS_COLOR_ATTACHMENT_WRITE_BIT | VK_ACCESS_SHADER_READ_BIT;
 		VkRenderPassCreateInfo render_pass_normal = {};
 		render_pass_normal.sType = VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO;
-		render_pass_normal.attachmentCount = std::size(attachments_normal);
+		render_pass_normal.attachmentCount = (uint32)std::size(attachments_normal);
 		render_pass_normal.pAttachments = attachments_normal;
 		render_pass_normal.subpassCount = 1;
 		render_pass_normal.pSubpasses = &subpass_normal;
@@ -548,7 +548,7 @@ void RendererVK::CreateSwapChain(VkPhysicalDevice inDevice)
 		VkFramebufferCreateInfo frame_buffer_info = {};
 		frame_buffer_info.sType = VK_STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO;
 		frame_buffer_info.renderPass = mRenderPass;
-		frame_buffer_info.attachmentCount = std::size(attachments);
+		frame_buffer_info.attachmentCount = (uint32)std::size(attachments);
 		frame_buffer_info.pAttachments = attachments;
 		frame_buffer_info.width = mSwapChainExtent.width;
 		frame_buffer_info.height = mSwapChainExtent.height;
@@ -755,7 +755,7 @@ void RendererVK::EndShadowPass()
 	JPH_ASSERT(mImageIndex < mSwapChainFramebuffers.size());
 	render_pass_begin_info.framebuffer = mSwapChainFramebuffers[mImageIndex];
 	render_pass_begin_info.renderArea.extent = mSwapChainExtent;
-	render_pass_begin_info.clearValueCount = std::size(clear_values);
+	render_pass_begin_info.clearValueCount = (uint32)std::size(clear_values);
 	render_pass_begin_info.pClearValues = clear_values;
 	vkCmdBeginRenderPass(command_buffer, &render_pass_begin_info, VK_SUBPASS_CONTENTS_INLINE);
 

+ 2 - 2
TestFramework/UI/UIManager.cpp

@@ -44,8 +44,8 @@ UIManager::UIManager(Renderer *inRenderer) :
 	Ref<PixelShader> pix_textured = mRenderer->CreatePixelShader("UIPixelShader");
 	Ref<PixelShader> pix_untextured = mRenderer->CreatePixelShader("UIPixelShaderUntextured");
 
-	mTextured = mRenderer->CreatePipelineState(vtx, vertex_desc, std::size(vertex_desc), pix_textured, PipelineState::EDrawPass::Normal, PipelineState::EFillMode::Solid, PipelineState::ETopology::Triangle, PipelineState::EDepthTest::Off, PipelineState::EBlendMode::AlphaBlend, PipelineState::ECullMode::Backface);
-	mUntextured = mRenderer->CreatePipelineState(vtx, vertex_desc, std::size(vertex_desc), pix_untextured, PipelineState::EDrawPass::Normal, PipelineState::EFillMode::Solid, PipelineState::ETopology::Triangle, PipelineState::EDepthTest::Off, PipelineState::EBlendMode::AlphaBlend, PipelineState::ECullMode::Backface);
+	mTextured = mRenderer->CreatePipelineState(vtx, vertex_desc, (uint)std::size(vertex_desc), pix_textured, PipelineState::EDrawPass::Normal, PipelineState::EFillMode::Solid, PipelineState::ETopology::Triangle, PipelineState::EDepthTest::Off, PipelineState::EBlendMode::AlphaBlend, PipelineState::ECullMode::Backface);
+	mUntextured = mRenderer->CreatePipelineState(vtx, vertex_desc, (uint)std::size(vertex_desc), pix_untextured, PipelineState::EDrawPass::Normal, PipelineState::EFillMode::Solid, PipelineState::ETopology::Triangle, PipelineState::EDepthTest::Off, PipelineState::EBlendMode::AlphaBlend, PipelineState::ECullMode::Backface);
 }
 
 UIManager::~UIManager()