vulkan

    0热度

    2回答

    我们通常使用常量在C++中暗示值没有改变(只读),在他们选择的着色器或资源定义为什么在GLSL/VK字制服? Wodn`t更加一致,并使用从C/C++ 借来的关键字旁边,可能在着色器定义了统一的关键字提供线索编译器对这些资源的附加为接近硬件越好,大概共享内存或寄存器?不确定。 这也可能是为什么他们在VkSpec中提到。我们需要少量的这些资源类型的数据。就像例如:宇宙常数的值..等 是我遗失的东西,

    0热度

    2回答

    我可以从R32G32B32A32图像中转储内容以获取屏幕截图。我想从R32G32_SFLOAT图像中读出一个像素。但结果看起来很奇怪。下面 是我的工作形象转储代码(没有验证错误) void DumpImageToFile(VkTool::VulkanDevice &device, VkQueue graphics_queue, VkTool::Wrapper::CommandBuffers &co

    0热度

    1回答

    我有一个算法,我试图在GLSL中为Vulkan实现。该算法使用FLT_MAX。 现在我可以将其定义为任意高浮点值,但我真的很想知道如何实际在GLSL中处理该运行时的值。

    2热度

    2回答

    关于Vulkan API,'attachment'是什么意思?我看到这个词用于渲染通过(即:彩色附件)。我对自己的想法有着模糊的想法,但希望听到专家的定义。 我做图形编程,第一次,决定用福尔康开始直接跳进深水区。

    0热度

    1回答

    我想编写一个也支持图像绘制的vulkan引擎。但是,当我尝试将图像渲染到全屏四合一时,它不起作用。我试图调试一个多星期的代码,但我无法得到它的工作。我正在用stb_image加载图片。下面是该代码: errno = 0; m_imageData = stbi_load(filename.c_str(), &m_width, &m_height, &m_channels, STBI_rgb_al

    1热度

    2回答

    我是图形编程和Vulkan的新手。 我知道我们需要将缓冲区绑定到描述符集,但是我想知道是否需要为每个缓冲区设置一个新的描述符集,或者我可以将descriptorSet集绑定2个或更多个缓冲区? 如果是的话,这是什么经验法则?

    1热度

    1回答

    我想在我的Vulkan渲染器中使用HLSL片段着色器。着色器读取缓冲区: layout(set=0, binding=3) Buffer<float4> pointLightBufferCenterAndRadius : register(t1); 我不知道我应该使用哪种描述符来描述符槽。我试图用VK_DESCRIPTOR_TYPE_STORAGE_BUFFER但验证层给了我以下错误: Typ

    1热度

    2回答

    我使用包含多个子通道的Vulkan进行了渲染通道。我们可以假设它有2个子通道,子通道A和B.在子通道A中,我渲染到一个图像,我想在子通道B中用作组合图像采样器(即,不作为输入附件)。我的问题是,我应该如何进行从VK_IMAGE_LAYOUT_COLOR_ATTACHMENT到VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL的图像转换? 我认为subpass依赖机制本

    1热度

    1回答

    我知道在Vulkan中创建着色器模块时,您可以使用pName指定VkPipelineShaderStageCreateInfo中的入口点。 但是,我还没有能够在我的glsl/spv文件中使用另一个入口点,但'main'。 typedef struct VkPipelineShaderStageCreateInfo { VkStructureType sType; co

    3热度

    3回答

    在学习Vulkan时,我在VulkanCookbook中遇到了一些代码。在VulkanCookbook中,作者编写代码来手动导入Vulkan函数和类。好吧,我一直在慢慢地将它转换为Vulkan的LunarG SDK,并且我在64位VkFence中遇到了一个问题,它将VkFence_T *键入到VkFence_T *中,这很好,除了32位外,它的typedef是dint64_t,对于VkDestro