shader fix
This commit is contained in:
parent
ae312807fc
commit
01a3211dfb
7 changed files with 10 additions and 13 deletions
|
|
@ -34,19 +34,19 @@ namespace Crafter {
|
||||||
imageInfo.usage = usage;
|
imageInfo.usage = usage;
|
||||||
imageInfo.samples = VK_SAMPLE_COUNT_1_BIT;
|
imageInfo.samples = VK_SAMPLE_COUNT_1_BIT;
|
||||||
imageInfo.sharingMode = VK_SHARING_MODE_EXCLUSIVE;
|
imageInfo.sharingMode = VK_SHARING_MODE_EXCLUSIVE;
|
||||||
VulkanDevice::CHECK_VK_RESULT(vkCreateImage(device, &imageInfo, nullptr, &image));
|
VulkanDevice::CHECK_VK_RESULT(vkCreateImage(VulkanDevice::device, &imageInfo, nullptr, &image));
|
||||||
|
|
||||||
VkMemoryRequirements memRequirements;
|
VkMemoryRequirements memRequirements;
|
||||||
vkGetImageMemoryRequirements(device, image, &memRequirements);
|
vkGetImageMemoryRequirements(VulkanDevice::device, image, &memRequirements);
|
||||||
|
|
||||||
VkMemoryAllocateInfo allocInfo{};
|
VkMemoryAllocateInfo allocInfo{};
|
||||||
allocInfo.sType = VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO;
|
allocInfo.sType = VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO;
|
||||||
allocInfo.allocationSize = memRequirements.size;
|
allocInfo.allocationSize = memRequirements.size;
|
||||||
allocInfo.memoryTypeIndex = findMemoryType(memRequirements.memoryTypeBits, properties);
|
allocInfo.memoryTypeIndex = findMemoryType(memRequirements.memoryTypeBits, properties);
|
||||||
|
|
||||||
VulkanDevice::CHECK_VK_RESULT(vkAllocateMemory(device, &allocInfo, nullptr, &imageMemory));
|
VulkanDevice::CHECK_VK_RESULT(vkAllocateMemory(VulkanDevice::device, &allocInfo, nullptr, &imageMemory));
|
||||||
|
|
||||||
vkBindImageMemory(device, image, imageMemory, 0);
|
vkBindImageMemory(VulkanDevice::device, image, imageMemory, 0);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -10,7 +10,6 @@ module;
|
||||||
export module Crafter.Graphics:WindowWaylandVulkan;
|
export module Crafter.Graphics:WindowWaylandVulkan;
|
||||||
import Crafter.Event;
|
import Crafter.Event;
|
||||||
import :WindowWayland;
|
import :WindowWayland;
|
||||||
import :VulkanElement;
|
|
||||||
import Crafter.Component;
|
import Crafter.Component;
|
||||||
|
|
||||||
namespace Crafter {
|
namespace Crafter {
|
||||||
|
|
|
||||||
|
|
@ -9,9 +9,7 @@ export import :Types;
|
||||||
export import :VulkanDevice;
|
export import :VulkanDevice;
|
||||||
export import :VulkanPipeline;
|
export import :VulkanPipeline;
|
||||||
export import :VulkanShader;
|
export import :VulkanShader;
|
||||||
export import :VulkanElement;
|
|
||||||
export import :Camera;
|
export import :Camera;
|
||||||
export import :VulkanElementFromPipeline;
|
|
||||||
export import :VulkanBuffer;
|
export import :VulkanBuffer;
|
||||||
export import :Mesh;
|
export import :Mesh;
|
||||||
export import :MeshShader;
|
export import :MeshShader;
|
||||||
4
main.cpp
4
main.cpp
|
|
@ -14,8 +14,8 @@ import Crafter.Asset;
|
||||||
import Crafter.Event;
|
import Crafter.Event;
|
||||||
using namespace Crafter;
|
using namespace Crafter;
|
||||||
|
|
||||||
typedef VulkanShader<"test.spirv", "main", VK_SHADER_STAGE_MESH_BIT_EXT, 3, {{{VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER, 0}, {VK_DESCRIPTOR_TYPE_STORAGE_BUFFER, 1}, {VK_DESCRIPTOR_TYPE_STORAGE_BUFFER, 2}}}> MeshVulkanShader;
|
typedef VulkanShader<"MeshShaderXYZ.spirv", "main", VK_SHADER_STAGE_MESH_BIT_EXT, 3, {{{VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER, 0}, {VK_DESCRIPTOR_TYPE_STORAGE_BUFFER, 1}, {VK_DESCRIPTOR_TYPE_STORAGE_BUFFER, 2}}}> MeshVulkanShader;
|
||||||
typedef VulkanShader<"test2.spirv", "main", VK_SHADER_STAGE_FRAGMENT_BIT, 0, {}> FragmentShader;
|
typedef VulkanShader<"FragmentShaderSolidWhite.spirv", "main", VK_SHADER_STAGE_FRAGMENT_BIT, 0, {}> FragmentShader;
|
||||||
typedef VulkanPipeline<MeshVulkanShader, FragmentShader> Pipeline;
|
typedef VulkanPipeline<MeshVulkanShader, FragmentShader> Pipeline;
|
||||||
|
|
||||||
int main() {
|
int main() {
|
||||||
|
|
|
||||||
|
|
@ -7,19 +7,19 @@
|
||||||
"source_files": ["Crafter.Graphics-Window","Crafter.Graphics-WindowWayland","Crafter.Graphics-WindowWaylandWayland", "Crafter.Graphics-UiElement", "Crafter.Graphics-VulkanDevice", "Crafter.Graphics-WindowWaylandVulkan", "VulkanBuffer", "VulkanTools", "Crafter.Graphics-Camera"],
|
"source_files": ["Crafter.Graphics-Window","Crafter.Graphics-WindowWayland","Crafter.Graphics-WindowWaylandWayland", "Crafter.Graphics-UiElement", "Crafter.Graphics-VulkanDevice", "Crafter.Graphics-WindowWaylandVulkan", "VulkanBuffer", "VulkanTools", "Crafter.Graphics-Camera"],
|
||||||
"c_files": ["wayland-xdg-decoration-unstable-v1-client-protocol", "xdg-shell-protocol", "shm"],
|
"c_files": ["wayland-xdg-decoration-unstable-v1-client-protocol", "xdg-shell-protocol", "shm"],
|
||||||
"module_files": ["Crafter.Graphics-Window","Crafter.Graphics-WindowWayland","Crafter.Graphics-WindowWaylandWayland", "Crafter.Graphics", "Crafter.Graphics-UiElement", "Crafter.Graphics-Types", "Crafter.Graphics-VulkanDevice", "Crafter.Graphics-VulkanPipeline", "Crafter.Graphics-VulkanShader", "Crafter.Graphics-WindowWaylandVulkan", "Crafter.Graphics-Camera", "Crafter.Graphics-VulkanBuffer", "Crafter.Graphics-Mesh", "Crafter.Graphics-MeshShader"],
|
"module_files": ["Crafter.Graphics-Window","Crafter.Graphics-WindowWayland","Crafter.Graphics-WindowWaylandWayland", "Crafter.Graphics", "Crafter.Graphics-UiElement", "Crafter.Graphics-Types", "Crafter.Graphics-VulkanDevice", "Crafter.Graphics-VulkanPipeline", "Crafter.Graphics-VulkanShader", "Crafter.Graphics-WindowWaylandVulkan", "Crafter.Graphics-Camera", "Crafter.Graphics-VulkanBuffer", "Crafter.Graphics-Mesh", "Crafter.Graphics-MeshShader"],
|
||||||
"build_dir": "./build",
|
"build_dir": "build",
|
||||||
"output_dir": "./bin",
|
"output_dir": "bin",
|
||||||
"type":"library",
|
"type":"library",
|
||||||
"libs": ["wayland-client", "vulkan"],
|
"libs": ["wayland-client", "vulkan"],
|
||||||
"flags": ["-Wno-uninitialized"],
|
"flags": ["-Wno-uninitialized"],
|
||||||
"shaders": [
|
"shaders": [
|
||||||
{
|
{
|
||||||
"path":"test.mesh",
|
"path":"MeshShaderXYZ.mesh",
|
||||||
"type":13,
|
"type":13,
|
||||||
"entrypoint":"main"
|
"entrypoint":"main"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"path":"test2.frag",
|
"path":"FragmentShaderSolidWhite.frag",
|
||||||
"type":4,
|
"type":4,
|
||||||
"entrypoint":"main"
|
"entrypoint":"main"
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue