Try
Try
Hi, @lmichaelis ! > OpenGothic now fully runs Gothic II using phoenix! Those are very good news! In terms of testing I have a suggestion: since it's been a while...
> And about Gothic I support: Do you want to support it right now or is the focus more on Gothic II? If we gonna to merge right after next...
Hi, @lmichaelis ! Review in progress, meanwhile just overall comment: `auto* sf = vm.find_symbol_by_index(func);` Since now `find_symbol_by_index` can return `nullptr` this makes old code non-robust and requires null-checking. I'll mark...
One more thing: In code it seems that `std::string` is core class in VM, what is not ideal. Daedalus string are immutable, similar to Java. Currently at ZenLib I'm using...
About `*Definitions` classes, for example `SoundDefinitions`: `std::unordered_map sfx;` Should it be stored by value? There is little value of keeping connection to VM, as it will be tear-down once hash-map...
> The VM does avoid copies internally and basically always passes references `case opcode::movs` -> `set_string` While not 100% repeatable, I've notice performance difference a while ago, due to talking...
Now, since mesh-shading is released for OpenGothic can start thinking about next steps. With `VK_NV_mesh_shader` all fits fine with the engine, just need to emulate them on else platforms. Idea...
Some experiments: 1. Added `libspiv` - internal utility library for spir-v tooling 2. First attempts to convert `.mesh` to `.comp` ``` ; SPIR-V ; Version: 1.0 ; Generator: Khronos Glslang...
Strategy update, for compue-driven workflow: * single execution of `.mesh.comp` - this will simplify code-gen and C++ workflow * index sorting/packing with internal shaders * manual vertex pull in generated...
Current implementation:  1. Each dispatch-mesh call works as pair of compute shader + draw-indirect 2. Compute shader as well as vertex passthru shaders are generated from single mesh shader:...