From 6883d103ffe816f14ef36bfd0fa863d7f97637ac Mon Sep 17 00:00:00 2001 From: Vicente Ferrari Smith Date: Tue, 28 Apr 2026 19:46:41 +0200 Subject: [PATCH] . --- .DS_Store | Bin 8196 -> 18436 bytes .idea/misc.xml | 1 + CMakeLists.txt | 209 ++++-- main.cpp | 151 +++-- metal/CMakeLists.txt | 0 metal/definition.cpp | 3 - misc.cpp | 20 +- misc.h | 2 +- renderer/graphics.cpp | 11 + renderer/graphics.h | 46 +- renderer/graphics_private.h | 10 +- renderer/metal/AAPLMathUtilities.cpp | 640 ++++++++++++++++++- renderer/metal/AAPLMathUtilities.h | 270 +++++++- renderer/metal/metal.cpp | 216 +++---- renderer/metal/metal.h | 20 +- renderer/metal/renderer.cpp | 919 +++++++-------------------- renderer/metal/renderer.h | 401 +++--------- renderer/metal/vertex_data.h | 55 +- renderer/sprite.cpp | 2 +- renderer/sprite.h | 9 +- renderer/texture.cpp | 34 + renderer/texture.h | 16 +- renderer/texture_sheet.cpp | 2 +- renderer/texture_sheet.h | 3 +- renderer/vulkan/renderer.cpp | 92 +-- renderer/vulkan/renderer.h | 22 +- renderer/vulkan/vulkan.cpp | 87 ++- renderer/vulkan/vulkan.h | 6 +- renderer/webgpu/renderer.cpp | 275 ++++++++ renderer/webgpu/renderer.h | 94 ++- renderer/webgpu/utils_emscripten.h | 41 +- renderer/webgpu/webgpu.cpp | 422 ++++++++++++ renderer/webgpu/webgpu.h | 30 +- shaders/compute.slang | 9 + shaders/shader.metal | 52 ++ shaders/shader.slang | 26 +- 36 files changed, 2752 insertions(+), 1444 deletions(-) delete mode 100644 metal/CMakeLists.txt delete mode 100644 metal/definition.cpp diff --git a/.DS_Store b/.DS_Store index 37a822e71d9580ea88aeac0ce717755f9ea7940d..707a91fe7c777b2438139875ce6c76e0fa970a16 100644 GIT binary patch literal 18436 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 b|JWcsRf$ZU6aPD_6Zs&W?W+^h#Q*;R_JZxW delta 190 zcmZpfz}Vs-!N9=4=v10w$iM(%asV-i7T}&(C^k_~arYcW}8^DQIHv;OM)9nyMk;5>i*6=ncu~8vOf<82hdQEgBT{q^GuzbC?Ypm PL`7-y7IjIci6!d*=r1Nz diff --git a/.idea/misc.xml b/.idea/misc.xml index 0b76fe5..e479d63 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -4,4 +4,5 @@