Commit Graph

371 Commits

Author SHA1 Message Date
Nick Fisher
195a625738 when getMaterialInstance/setMaterialInstance are called, if entity is not renderable, return false
if no entity is passed, iterate through all entities and use the first renderable entity
2025-05-23 16:27:38 +08:00
Nick Fisher
5ce2efa638 (web) remove console logging 2025-05-21 13:15:43 +08:00
Nick Fisher
1fb68b20e9 separate Gltf/Morph/BoneAnimationComponentManager definitions
move gltf animation instantiation to GltfAnimationComponentManager (this helps ensure we are creating the component on the correct entity)
2025-05-20 14:57:26 +08:00
Nick Fisher
bdba92c842 set emscripten main thread to nullptr when RenderThread is stopped 2025-05-18 15:11:52 +08:00
Nick Fisher
11ff6c9053 remove TMaterialKey struct and pass directly as function params 2025-05-18 15:11:50 +08:00
Nick Fisher
25ada92574 add View_pickRenderThread method (only used in WASM builds so we can proxy the callback to the main thread 2025-05-18 15:09:05 +08:00
Nick Fisher
826a22f348 wip 2025-05-18 15:08:45 +08:00
Nick Fisher
fe11479b08 remove relativeResourcePath from gltf resource loading;
all external resources should be added on the Dart side, Filament should never attempt to load these directly from the filesystem.
relativeResourcePath (called gltfPath on the Filament side) is only used for desktop loading, so this is now irrelevant.
Note that Filament must be compiled with GLTFIO_USE_FILESYSTEM=0
2025-05-17 21:48:18 +08:00
Nick Fisher
c98e604e76 split animation components into GltfAnimation/MorphAnimation/BoneAnimation 2025-05-17 10:11:55 +08:00
Nick Fisher
f9d09e17ef return false from AnimationManager_ methods if provided sceneAsset is not a glTF asset
rename playAnimation to playGltfAnimation etc where appropriate
2025-05-17 10:06:12 +08:00
Nick Fisher
46e87fb6a4 add sources to native CMakeLists.txt 2025-05-17 10:04:33 +08:00
Nick Fisher
c47cfe9b57 transformToUnitCube returns bool (false when transform instance can't be found) 2025-05-10 09:04:06 +08:00
Nick Fisher
ebab1f528d only set mRendered to true when a frame was actually rendered 2025-05-09 11:23:13 +08:00
Nick Fisher
4a5a1d0157 remove debug printing 2025-05-09 11:22:25 +08:00
Nick Fisher
906f5bf931 remove redundant make_render_callback_fn_pointer definition 2025-05-09 11:22:08 +08:00
Nick Fisher
50c1c871a8 return false from RenderTicker when frame skipped 2025-05-09 11:20:21 +08:00
Nick Fisher
8a6ba637a7 store last render time in RenderTicker 2025-05-09 11:19:13 +08:00
Nick Fisher
2f16908992 feat! js_interop improvements 2025-05-07 17:06:38 +08:00
Nick Fisher
2ab56b86bc remove old CMake script 2025-05-07 16:53:16 +08:00
Nick Fisher
e9628511fc remove C++ includes from C headers 2025-05-07 16:53:15 +08:00
Nick Fisher
eedfbbb934 remove unused material input src files from native CMakeLists 2025-04-19 09:49:59 +08:00
Nick Fisher
4cb725d47e add Engine_destroyCamera 2025-04-19 09:49:19 +08:00
Nick Fisher
e1d5d14ff7 add RenderTarget_destroyRenderThread 2025-04-17 13:35:07 +08:00
Nick Fisher
1be1979c05 rename requestAnimationFrame to requestFrame 2025-04-17 13:34:18 +08:00
Nick Fisher
241c0fe07c recompile materials 2025-04-16 19:08:55 +08:00
Nick Fisher
426d6c4ed6 use render thread methods for all async gltf loading 2025-04-16 19:07:55 +08:00
Nick Fisher
230bb5f9f6 use render thread methods for all async gltf loading 2025-04-16 19:07:31 +08:00
Nick Fisher
3c68731fe0 ensure __FILENAME__ is defined even if ENABLE_TRACING is off 2025-04-16 18:00:50 +08:00
Nick Fisher
ef775b2e2c add GltfResourceLoader_asyncBeginLoadRenderThread 2025-04-16 18:00:31 +08:00
Nick Fisher
f272410803 update ffigen/objective_c dependencies 2025-04-16 17:59:46 +08:00
Nick Fisher
2d4342607d add async gltf resource loading 2025-04-16 17:06:51 +08:00
Nick Fisher
b6e5d2c834 update Windows/Vulkan sample app 2025-04-16 13:58:02 +08:00
Nick Fisher
7349fa2298 rename utils.h etc to vulkan_utils.h to avoid filename clashes 2025-04-16 13:48:00 +08:00
Nick Fisher
143c4a436d return nullptr if D3D device cannot create render target view 2025-04-16 13:46:04 +08:00
Nick Fisher
60e025e78d cleanup 2025-04-16 13:36:39 +08:00
Nick Fisher
de5bc5c02e cleanup 2025-04-16 13:36:26 +08:00
Nick Fisher
a1ab4186b4 logging on error and return NULL if vkTexture cannot be created 2025-04-16 13:36:08 +08:00
Nick Fisher
d3b9ae45cf (Windows) properly destroy swapchain and don't un-set current unless the swapchain being destroyed is the current swapchain 2025-04-16 13:35:40 +08:00
Nick Fisher
7dfb8a4b19 logging/header path changes 2025-04-16 13:34:45 +08:00
Nick Fisher
aaa74f0267 add missing Camera_getFov method 2025-04-16 13:28:02 +08:00
Nick Fisher
cf8e0f6ed2 rename utils.h etc to vulkan_utils.h to avoid filename clashes 2025-04-16 13:27:46 +08:00
Nick Fisher
ddba3c35ab logging 2025-04-02 23:00:44 +08:00
Nick Fisher
87d04fc2c1 properly initialize SwapChainPtr to nullptr 2025-04-02 23:00:27 +08:00
Nick Fisher
f7a7b6bedf add EMSCRIPTEN_KEEPALIVE to swap chain flags 2025-04-02 22:26:03 +08:00
Nick Fisher
7b0550c713 manually define SceneLayer enum 2025-04-02 22:25:42 +08:00
Nick Fisher
ec8248e10c Windows logging compatibility 2025-04-02 22:25:03 +08:00
Nick Fisher
e407e75389 add EMSCRIPTEN_KEEPALIVE to swap chain flags 2025-04-02 22:23:47 +08:00
Nick Fisher
342ff58cbe finish all pending tasks before joining RenderThread on destruction 2025-04-02 22:23:21 +08:00
Nick Fisher
68842fb4ce update Overlay enum references 2025-04-02 22:22:55 +08:00
Nick Fisher
88f229481d remove old includes 2025-04-02 22:22:36 +08:00