Стимлянная Хамоника (1968)
@helvetica did you see this? lol
@mcc in my framework, i just have a templated buffer struct that wraps around a C++ struct that handles all of that, so all you do is just update your CPU data and call update() on it and it does the GPU memory update. if you have multiple frames in flight you also need to keep a separate device memory for each frame, so it has to handle all of that.
@mcc you keep a handle of a VkDeviceMemory which is bound to a descriptor set at a specific location, then you just map it to CPU memory, copy it and unbind when you want to update shader data.
@mcc ah i see, well not sure what the best approach then. fwiw in C, you don't update descriptor sets usually, you just map memory for a buffer in the set, copy it and unmap it.
@mcc Ah I see. I find the binding # approach quite a bit better in that you can just map a CPU struct to shader memory and then just set stuff in the struct directly without ever dealing with strings (though there is some memory alignment stuff to keep in mind).
@mcc you shouldn't be doing it by name, the block approach is so you can map CPU memory to shader memory directly
@nasser that sounds so good
For those that are interested on compiling and running #GlslViewer as a #blender3D custom rendering engine. Here is a little tutorial on how to do it. #b3d
@selfsame that's really beautiful
@kaho oh nooo. hope ure ok!
a humble render farmer