Nick Fisher
655ba89b0f
logging
2025-06-04 11:05:19 +08:00
Nick Fisher
840f3599e7
logging
2025-06-04 11:04:52 +08:00
Nick Fisher
d0da7f49f3
when destroying a SceneAsset, if the object is an instance, call destroyInstance on the owner of instance rather than deleting the object directly
2025-06-04 10:48:07 +08:00
Nick Fisher
e147e59d8d
don't call endFrame() unless beginFrame() was called
...
only use condition_variable on non-emscripten builds
2025-06-03 16:39:04 +08:00
Nick Fisher
b1617004d7
add missing EMSCRIPTEN_KEEPALIVE from Texture_generateMipMapsRenderThread
2025-06-02 14:58:11 +08:00
Nick Fisher
24aaffda9c
lock mutex when setting animations manually via AnimationManager
2025-06-02 11:52:08 +08:00
Nick Fisher
7b80723560
add Texture_generateMipMapsRenderThread, AnimationManager_resetToRestPoseRenderThread
2025-06-02 11:51:19 +08:00
Nick Fisher
2f7f363db9
pass shared NameComponentManager to gltfio AssetLoader
2025-05-31 11:21:57 +08:00
Nick Fisher
7f0ec01937
change RenderThread warning from Log to TRACE
2025-05-30 14:35:48 +08:00
Nick Fisher
86894cf583
add alpha/requireAlpha argument when decoding images
...
remove size checks from setImage (we are assuming the caller knows the correct size)
This also adds some monkey-patch methods to js_interop to convert Float32List to a UInt8List (but use this with care, because it will only work for emscripten-allocated objects)
2025-05-29 22:26:42 +08:00
Nick Fisher
beeb45609c
don't take reference to Builder
2025-05-29 18:57:01 +08:00
Nick Fisher
94eacec27e
Texture improvements: generateMipmaps(), add levels to createTexture, tests to check auto mip level selection
2025-05-29 18:38:57 +08:00
Nick Fisher
ff5921a505
remove unused StreamBufferAdapter
2025-05-28 21:52:53 +08:00
Nick Fisher
45c7831a17
replace libpng with stb_image for Image_decode
2025-05-28 21:51:56 +08:00
Nick Fisher
fcf57e8850
fix missing return value in EntityManager_createEntity
2025-05-28 21:48:24 +08:00
Nick Fisher
a875f370e5
remove logging
2025-05-28 18:41:02 +08:00
Nick Fisher
1e812ebe93
allow directly creating an entity and setting transform
2025-05-24 16:33:58 +08:00
Nick Fisher
81fb0fb583
add setFogOptions
2025-05-24 15:05:03 +08:00
Nick Fisher
4505cbe325
add missing setExposure methods + reinstate camera tests
2025-05-24 10:51:56 +08:00
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
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
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
50c1c871a8
return false from RenderTicker when frame skipped
2025-05-09 11:20:21 +08:00
Nick Fisher
2f16908992
feat! js_interop improvements
2025-05-07 17:06:38 +08:00
Nick Fisher
e9628511fc
remove C++ includes from C headers
2025-05-07 16:53:15 +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
426d6c4ed6
use render thread methods for all async gltf loading
2025-04-16 19:07:55 +08:00
Nick Fisher
ef775b2e2c
add GltfResourceLoader_asyncBeginLoadRenderThread
2025-04-16 18:00:31 +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
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
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