public void Write(string name, DescriptorImageInfo myInfo) { var Value = myIDsToItems[name]; WriteDescriptorSet mySet = new WriteDescriptorSet(); mySet.DescriptorType = DescriptorType.UniformBuffer; mySet.DescriptorCount = Value.DescriptorCount; mySet.DstBinding = Value.Binding; mySet.DstSet = myDSet[Value.Binding]; unsafe { mySet.ImageInfo = new DescriptorImageInfo[] { myInfo }; } VulkanRenderer.SelectedLogicalDevice.UpdateDescriptorSet(mySet, null); mySet.Dispose(); }
internal void Write <T>(string v, T mYBuffer) where T : struct { var Value = myIDsToItems[v]; var MVPBuffer = new UniformBuffer <T>(mYBuffer); WriteDescriptorSet mySet = new WriteDescriptorSet(); mySet.DescriptorType = DescriptorType.UniformBuffer; mySet.DescriptorCount = Value.DescriptorCount; mySet.DstBinding = Value.Binding; mySet.DstSet = myDSet[Value.Binding]; unsafe { mySet.BufferInfo = new DescriptorBufferInfo[] { new DescriptorBufferInfo { Buffer = MVPBuffer, Offset = 0, Range = MVPBuffer.SizeOfBuffer } }; } VulkanRenderer.SelectedLogicalDevice.UpdateDescriptorSet(mySet, null); MVPBuffer.Dispose(); mySet.Dispose(); }