Nick Fisher
059926fe98
add generateMipmapsRenderThread
2025-06-02 10:44:45 +08:00
Nick Fisher
70e2933c4b
track geometry assets internally to ensure they are destroyed when destroyAssets is called
2025-06-02 10:09:58 +08:00
Nick Fisher
4fb85eb45a
don't throw exception on failure to remove animation component
2025-05-31 21:58:32 +08:00
Nick Fisher
afecacfcf0
getChildEntity in FFIAsset should invoke FilamentApp method, not direct binding method
2025-05-31 11:25:24 +08:00
Nick Fisher
2f7f363db9
pass shared NameComponentManager to gltfio AssetLoader
2025-05-31 11:21:57 +08:00
Nick Fisher
5f9a7bb959
remove errant comment
2025-05-29 22:30:00 +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
c789e75af5
(web) fix casing for generateMipMaps
2025-05-29 19:27:22 +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
b00f37ddaa
(web) remove asTypedList from generated JS bindings (replaced by equivalent in js_interop.dart
2025-05-28 11:21:48 +08:00
Nick Fisher
a98d7550ae
(web) add asTypedList extension for Pointer<Float>/Float32List
2025-05-28 10:49:44 +08:00
Nick Fisher
f7d6d4786a
remove asset from internal list before destroying
2025-05-28 10:48:10 +08:00
Nick Fisher
d298b0d091
add decodeToTexture static helper method to Texture
2025-05-28 10:47:21 +08:00
Nick Fisher
4a7a366fc6
add setTransform/getWorldTransform to FilamentApp
2025-05-28 10:47:00 +08:00
Nick Fisher
c6ceea4f8b
update generated bindings
2025-05-24 16:38:21 +08:00
Nick Fisher
1e812ebe93
allow directly creating an entity and setting transform
2025-05-24 16:33:58 +08:00
Nick Fisher
75a9950909
update generated bindings
2025-05-24 15:05:29 +08:00
Nick Fisher
81fb0fb583
add setFogOptions
2025-05-24 15:05:03 +08:00
Nick Fisher
4d6c008299
regenerate JS bindings
2025-05-24 10:54:49 +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
96694be017
remove register/unregister swapchain/view in TextureProjection
...
since we are rendering each view separately, this is no longer necessary
2025-05-22 15:22:15 +08:00
Nick Fisher
a31f11151e
check for beginFrame returning false in project() and correctly calculate numChannels/channelSize
2025-05-22 15:19:03 +08:00
Nick Fisher
10136c8cde
use flush() instead of directly calling executeRenderThread (wasm) or flushAndWait (native)
2025-05-22 15:18:19 +08:00
Nick Fisher
c712804bb1
add createLight method to FilamentApp
2025-05-22 15:09:36 +08:00
Nick Fisher
1373ce5a32
use flush() instead of manually invoking different methods for wasm/native
2025-05-22 15:08:29 +08:00
Nick Fisher
1b3d46533c
remove unnecessary import
2025-05-22 15:08:02 +08:00
Nick Fisher
5733bc125b
add addEntity method to Scene
2025-05-22 15:07:43 +08:00
Nick Fisher
943de8f77b
add createCamera method to FilamentApp
2025-05-22 15:07:23 +08:00
Nick Fisher
9a4fd1141e
remove logging
2025-05-22 15:06:27 +08:00
Nick Fisher
3007dec127
TextureProjection now makes a separate render pass for each View.
...
This is needed because changing material properties between beginFrame/endFrame is unsupported
2025-05-22 15:03:06 +08:00
Nick Fisher
9a6bacc73f
pass both logical key & physical key to input handler on keyboard keypress
2025-05-21 12:01:50 +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
1afd5ff257
clean up FixedOrbitCameraDelegate
2025-05-18 15:11:52 +08:00
Nick Fisher
66f3e20489
copy input events before passing to delegate
2025-05-18 15:11:52 +08:00
Nick Fisher
871a327d99
implement js_interop withUint32Callback
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
fc75aab94b
add bindings for View_pickRenderThread
2025-05-18 15:09:05 +08:00
Nick Fisher
760ae8ed8b
add makeInt32List method (to create an Int32List actually backed by heap-allocated memory
2025-05-18 15:09:05 +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
12c8031f2b
update JS bindings
2025-05-18 15:09:04 +08:00
Nick Fisher
8c78e8e629
update JS interop to accept requestId for VoidCallback
2025-05-18 15:09:03 +08:00
Nick Fisher
dc5cdcb7e1
update all void callbacks to accept an integer requestId
2025-05-18 15:08:47 +08:00
Nick Fisher
460000308a
remove custom camera delegate
2025-05-18 15:08:47 +08:00
Nick Fisher
826a22f348
wip
2025-05-18 15:08:45 +08:00
Nick Fisher
b710e0ace3
regenerate JS bindings
2025-05-18 14:46:48 +08:00
Nick Fisher
4b2342979f
update tests + bindings
2025-05-17 21:52:21 +08:00
Nick Fisher
ee306549d8
rename relativeResourcePath to resourceUri
...
move resource loader from viewer to FilamentApp
2025-05-17 21:51:51 +08:00
Nick Fisher
d3ec825688
rename relativeResourcePath to resourceUri
...
move resource loader from viewer to FilamentApp
2025-05-17 21:50:58 +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