A place where every action with the project is tracked.
🔨 Remove direct vulkan dependency and support OpenGL render
🔨 Support WebGL render for web browser platform
🔨 Prepare simple manual app logic abstraction
🔨 Support WASM platform in app logic
🔨 Implement OpenXR support as alternative to Winit platform
🔨 Support WASM platform in render
🔨 Make render and app work in browser (require webgl and WASM support)
🔨 Take care of synchronization between commands
⚙️ Implement dynamic objects semantics
⚙️ Implement static scene optimization for same pipeline objects (instanced rendering)
⚙️ Improve vulkan updates (do not wait_for_idle)
⚙️ support different rendering modes (frame updates perspective)
✅ Modify update commands abstraction
✅ Implement OrderedObjectPool
✅ Implement object destroy command
✅ Make it run on MacOS (portability enumeration extension support)
✅ define_layout! and #[derive(CollectDrawStateUpdates)]
✅ Separate to core, derive and render and app crates
✅ Introduced resource update abstraction: new/update/delete
✅ Uniform abstraction (image sampler)
✅ Attribute fields diff support
✅ Uniform abstraction (only buffer)
✅ Pipeline abstraction
✅ Render state abstraction
✅ Beging generalizing render
✅ Separate application and render
✅ Basic use of image samplers
✅ Remove manual destroy/free calls, use wrappers with RAII.
✅ Implement basic vertex buffer interaction
✅ Implement basic uniform buffer interaction
✅ Implement swapchain recreation on resize
✅ Draw a triangle
✅ Draw solid color
✅ Basic vulkan initialization