Commit graph

28 commits

Author SHA1 Message Date
Claude Code
09ba229353 Initial procedural 3D engine setup
Some checks failed
Build Project / Build Ubuntu (push) Has been cancelled
Build Project / Build Windows (push) Has been cancelled
Build Project / Build macOS (push) Has been cancelled
- Updated README.md with modern project structure and features
- Cleaned up Android build files (not needed for desktop engine)
- Restructured as procedural 3D engine with ImGui integration
- Based on Sascha Willems Vulkan framework with dynamic rendering
- Added comprehensive build instructions and camera system docs

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-17 18:56:17 +02:00
SRSaunders
9a562a5426
Macos ios fixes (#1192)
* Configure MoltenVK to use a dedicated compute queue for compute[*] examples with sync barriers

* Modify descriptorindexing example for iOS and variable descriptor count limitations on MoltenVK

* Remove obsolete macOS #ifdefs no longer needed for modern MoltenVK versions

* Update iOS project to fix missing vkloader.c reference and revise example list

* Set required features and API version for VVL in debugprintf example

* Remove unnecessary Apple-specific code from descriptorindexing example

* Add Layer Settings capability to VulkanExampleBase::createInstance()

* Replace setenv() in examples with Layer Settings configuration for macOS/iOS

* Update comments in examples.h and fix missing initializer in computeraytracing example

* Update imgui overlay and example to support iOS Simulator

* Update more comments in examples.h and remove redundant initializers in deferred* examples

* Separate variable descriptor count declarations for apple and non-apple platforms

* Consolidate variable descriptor count declarations for apple vs. non-apple platforms

* Configure MoltenVK with a dedicated compute queue in VulkanExampleBase() and remove from samples
2025-03-29 16:21:37 +01:00
Sascha Willems
dc3ed003db Code cleanup 2024-04-17 18:36:06 +02:00
Sascha Willems
5017d380af Code cleanup and fixes
Added color picker for clear color
2023-02-24 16:13:31 +01:00
Stephen Saunders
54d0b27e4a Fix ImGui overlay and add extension dependencies for dynamicrendering example 2022-08-01 19:05:37 -04:00
Stephen Saunders
d9d3e8c1fb ImGui example now shows Vulkan API and driver info, ImGui+TextOverlay+ConditionalRender+gltfSceneRendering examples now support macOS retina displays 2022-07-13 12:24:26 -04:00
Stephen Saunders
8bc8d14cf2 macOS retina scaling fixes, M1 Vulkan vsync workaround, CMakeLists OpenMP path fix for Apple 2022-07-07 09:57:01 -04:00
Sascha Willems
5f1aac61ca Started working on sample showing comparing separate/interleaved vertex attributes 2021-12-26 18:42:03 +01:00
Sascha Willems
91958acad2 Only destroy ImGui context of != null
Fixes #911
2021-12-15 19:32:47 +01:00
Rajnesh Kanwal
774bb42ceb Fixes memory leak due to ImGui context not being destroyed. 2021-12-04 15:35:07 +00:00
Sascha Willems
fcb0a2a46a Load UI overla font from asset path
Refs #627
2020-02-17 21:09:43 +01:00
Sascha Willems
cf83c1b499 Nicer font for ImGui overlay 2019-02-20 20:57:38 +01:00
saschawillems
e9c4cd4a0b Optimized UI overlay strategy 2018-09-01 12:58:28 +02:00
saschawillems
69c3f62b9a Streamlined UI overlay, code cleanup
Refs #496
2018-08-31 21:15:43 +02:00
saschawillems
8a61105ec6 Reworked UI overlay class (no longer using separate render pass + submits)
Updated to support ImGui 1.62
Refs #496
2018-08-29 20:49:13 +02:00
saschawillems
478aae0548 Allow override of target subpass for UI overlay 2018-07-15 21:13:32 +02:00
Jason Ekstrand
af8d280e42 VulkanUIOverlay: Use the correct initial layout
Using an initial layout of VK_IMAGE_LAYOUT_UNDEFINED together with
VK_ATTACHMENT_LOAD_OP_LOAD means that the render pass starts off with
completely undefined contents.  Since we want to draw the overlay on top
of the previously rendered image, we want to use a real layout.  Since
the calling code has already transitioned to VK_IMAGE_LAYOUT_PRESENT_SRC_KHR,
that's the layout we need to use.

This was never caught by validation because VK_IMAGE_LAYOUT_UNDEFINED is
the one layout you're allowed to use as an initial layout at any time
regardless of the image's current layout.
2017-11-21 17:31:35 -08:00
saschawillems
b7d2dbced4 Pass updated frame buffers on resize 2017-11-03 16:35:38 +01:00
saschawillems
4e5d95c098 UI overlay creation via create info structure with additional customization options 2017-11-03 11:17:09 +01:00
saschawillems
5795a77e7b Android UI overlay touch handling 2017-11-02 17:07:07 +01:00
saschawillems
2f9515466a UI overlay resizing 2017-11-01 15:19:28 +01:00
saschawillems
a5e2ad091f Release ui overlay Vulkan resources 2017-11-01 15:18:46 +01:00
saschawillems
570750c16f return value float slider 2017-11-01 14:12:14 +01:00
saschawillems
853b318848 UI scale, combo box dropdown item count 2017-10-31 23:09:42 +01:00
saschawillems
3b11701eb2 Additional UI overlay widget creation functions 2017-10-31 11:52:48 +01:00
saschawillems
287a9b5762 UI overlay float slider 2017-10-30 18:02:51 +01:00
saschawillems
15f85d6e10 Designated UI overlay widget creation functions (wrapping ImGui calls) 2017-10-30 12:37:36 +01:00
saschawillems
f6af0bde03 Replaced text overlay with proper (imgui based) UI overlay class 2017-10-29 11:41:43 +01:00