Nick Fisher
|
a823718bcd
|
fix incorrect indexing for material instances when creating an instance
|
2025-06-19 10:57:54 +08:00 |
|
Nick Fisher
|
7446b0545a
|
update docs
|
2025-06-18 14:34:03 +08:00 |
|
Nick Fisher
|
3c4bedd43b
|
update headless example README
|
2025-06-18 13:10:49 +08:00 |
|
Nick Fisher
|
21e8cf0d11
|
add Dart/headless example
|
2025-06-18 13:08:51 +08:00 |
|
Nick Fisher
|
86e0f7740f
|
add Fence_waitAndDestroyRenderThread
|
2025-06-18 13:03:34 +08:00 |
|
Nick Fisher
|
a5a3c73708
|
add Fence_waitAndDestroy to TEngine.h
|
2025-06-18 13:02:59 +08:00 |
|
Nick Fisher
|
a44cb9a9cc
|
add Fence_waitAndDestroy to TEngine.h
|
2025-06-18 13:02:48 +08:00 |
|
Nick Fisher
|
6f97bf3993
|
update build.dart to set ENABLE_TRACING based on tracing property from user defines
|
2025-06-18 13:02:24 +08:00 |
|
Nick Fisher
|
42f9538040
|
implement TSkybox and use setColor method to set the background color, rather than the image
|
2025-06-18 13:01:25 +08:00 |
|
Nick Fisher
|
df393b075b
|
update bindings for Fence methods
|
2025-06-18 12:11:36 +08:00 |
|
Nick Fisher
|
13f9a8370b
|
add iOS build instructions
|
2025-06-18 10:59:04 +08:00 |
|
Nick Fisher
|
558978a0f2
|
add makeUint8List helper method for ffi/jsinterop
|
2025-06-17 18:01:18 +08:00 |
|
Nick Fisher
|
a29b194612
|
ensure highlight entities don't cast/receive shadows
|
2025-06-17 17:29:40 +08:00 |
|
Nick Fisher
|
3e04bf427f
|
allow passing reflection texture separately from irradiance when calling loadIblFromTexture
|
2025-06-17 14:13:19 +08:00 |
|
Nick Fisher
|
65ca59ff22
|
merge native setImage with setImageWithDepth
|
2025-06-17 13:25:53 +08:00 |
|
Nick Fisher
|
a91aaae131
|
formatting
|
2025-06-17 11:51:37 +08:00 |
|
Nick Fisher
|
71bae61015
|
add loadIblFromTexture method
|
2025-06-17 11:51:07 +08:00 |
|
Nick Fisher
|
288acb019e
|
add getBackgroundImage to ThermionViewerFFI
|
2025-06-17 11:49:16 +08:00 |
|
Nick Fisher
|
b9354531b2
|
add cubemap methods to BackgroundImage
|
2025-06-17 11:26:27 +08:00 |
|
Nick Fisher
|
388b8556e5
|
fix incorrect index when creating texture from Ktx1Bundle
|
2025-06-12 11:54:10 +08:00 |
|
Nick Fisher
|
59d9d87d2f
|
remove unused headers
|
2025-06-12 11:47:23 +08:00 |
|
Nick Fisher
|
d5824466f7
|
update generated bindings
|
2025-06-12 11:39:09 +08:00 |
|
Nick Fisher
|
3e11f09d63
|
update BUILDING.md
|
2025-06-12 11:38:25 +08:00 |
|
Nick Fisher
|
6bbab332be
|
rename assetId to asset-id in ffigen config
|
2025-06-12 11:38:08 +08:00 |
|
Nick Fisher
|
85b86c5f13
|
formatting
|
2025-06-12 11:37:45 +08:00 |
|
Nick Fisher
|
d8652e8709
|
formatting
|
2025-06-12 11:37:29 +08:00 |
|
Nick Fisher
|
fe5279f942
|
don't free Int32List for childEntities, stackRestore takes care of this
|
2025-06-12 11:37:18 +08:00 |
|
Nick Fisher
|
828354abe5
|
clean up
|
2025-06-12 11:36:23 +08:00 |
|
Nick Fisher
|
48d9d6751b
|
render() method on viewer now requires a SwapChain argument
|
2025-06-12 11:36:08 +08:00 |
|
Nick Fisher
|
4bde3d34cf
|
(test) add test to create indirect light from irradiance texture
|
2025-06-12 11:34:17 +08:00 |
|
Nick Fisher
|
7f2ad7c4e4
|
(test) rename background_tests.dart to image_tests.dart
|
2025-06-12 11:33:57 +08:00 |
|
Nick Fisher
|
47807d560f
|
separate native methods for creating IBL from irradiance texture and harmonics
|
2025-06-12 11:33:38 +08:00 |
|
Nick Fisher
|
ad26fc4563
|
add Dart IndirectLight and Ktx1Bundle classes, and separate KTX decoding from skybox/IBL creation
|
2025-06-12 11:31:44 +08:00 |
|
Nick Fisher
|
f252c86152
|
update image material to support cubemaps
|
2025-06-12 08:40:28 +08:00 |
|
Nick Fisher
|
e5bcde3ade
|
(web) update bindings
|
2025-06-11 11:13:43 +08:00 |
|
Nick Fisher
|
9436666d34
|
(example) update quickstart web to import canvas as widget
|
2025-06-11 11:08:31 +08:00 |
|
Nick Fisher
|
32fe54ac09
|
(web) on Emscripten builds, use static global wrapper function for texture upload complete callbacks (this is needed because all callbacks need to be proxied to the main thread
|
2025-06-11 11:08:13 +08:00 |
|
Nick Fisher
|
0461bb364a
|
use getPrimitiveCount method on FilamentApp, rather than direct FFI method
|
2025-06-11 09:52:57 +08:00 |
|
Nick Fisher
|
f78c6f258f
|
add test for getBoundingBox
|
2025-06-11 09:51:24 +08:00 |
|
Nick Fisher
|
b0796f493f
|
(test) move IBL tests to light_tests
|
2025-06-11 09:51:14 +08:00 |
|
Nick Fisher
|
8998f1f740
|
add RenderableManager_getBoundingBox
|
2025-06-11 09:50:48 +08:00 |
|
Nick Fisher
|
6362efcd61
|
add implementations for getPrimitiveCount/getBoundingBox on FFIFilamentApp
|
2025-06-11 09:50:35 +08:00 |
|
Nick Fisher
|
dc5c1161cc
|
add setMaterialInstanceAt to FilamentApp interface
|
2025-06-11 09:50:02 +08:00 |
|
Nick Fisher
|
3e6f95e0bf
|
add removeEntity method on Scene
|
2025-06-11 09:49:05 +08:00 |
|
Nick Fisher
|
f053c2f852
|
add removeEntity method on Scene
|
2025-06-11 09:48:44 +08:00 |
|
Nick Fisher
|
8f1da5e7bd
|
separate skybox/ibl creation from KTX decoding
|
2025-06-11 09:48:17 +08:00 |
|
Nick Fisher
|
641d92515e
|
move VoidCallback typedef to APIBoundaryTypes (now used outside the render thread header for texture upload callbacks)
|
2025-06-11 09:45:23 +08:00 |
|
Nick Fisher
|
d447fb8e2a
|
add RenderableManager_getBoundingBox
|
2025-06-11 09:44:46 +08:00 |
|
Nick Fisher
|
ac87420a87
|
add setPriority to FilamentApp interface
|
2025-06-10 11:49:17 +08:00 |
|
Nick Fisher
|
5669ac5c55
|
Dart wrappers for View/Scene are now stateful
|
2025-06-10 11:48:31 +08:00 |
|
Nick Fisher
|
ae9ce197c1
|
move setStencilHighlight/removeStencilHighlight to Scene
|
2025-06-10 10:27:03 +08:00 |
|
Nick Fisher
|
37c67c2da8
|
(macos) create render target texture with isStencil:false
|
2025-06-10 10:24:01 +08:00 |
|
Nick Fisher
|
66d3bf65fd
|
add view test for multiple views rendering into the same render target
|
2025-06-10 09:08:30 +08:00 |
|
Nick Fisher
|
dba40fb82b
|
update instancing tests
|
2025-06-09 18:28:58 +08:00 |
|
Nick Fisher
|
95db6d7ebb
|
update generated bindings
|
2025-06-09 18:28:43 +08:00 |
|
Nick Fisher
|
fef48940fc
|
add implementation methods for getPrimitiveCount, setMaterialInstancesFromMap, getMaterialInstancesAsMap and setMaterialInstanceForAll
|
2025-06-09 18:28:33 +08:00 |
|
Nick Fisher
|
4086c9bd01
|
add interface methods for getPrimitiveCount, setMaterialInstancesFromMap, getMaterialInstancesAsMap and setMaterialInstanceForAll
|
2025-06-09 18:26:36 +08:00 |
|
Nick Fisher
|
928517f80f
|
update gitignore with generated Swift dylib
|
2025-06-09 18:25:53 +08:00 |
|
Nick Fisher
|
4a9b91c411
|
(test) update helper to add createStencilBuffer flag
|
2025-06-09 18:25:39 +08:00 |
|
Nick Fisher
|
9054879722
|
update Swift bindings and remove dylib from repository (should be recompiled when running via CI/CD?)
|
2025-06-09 18:25:18 +08:00 |
|
Nick Fisher
|
4c95bc5b70
|
(macos) add isStencil argument for creating depth texture on macOS (if true, creates texture with .depth24Unorm_stencil8
|
2025-06-09 18:24:15 +08:00 |
|
Nick Fisher
|
8866ffe210
|
(test) update helper to add createStencilBuffer flag
|
2025-06-09 18:23:22 +08:00 |
|
Nick Fisher
|
c33eaef713
|
replace direct FFI View_ calls with calls to corresponding (Dart) methods on View
|
2025-06-09 18:18:58 +08:00 |
|
Nick Fisher
|
78e14574ef
|
split stencil/depth tests from unlit material tests
|
2025-06-09 18:15:17 +08:00 |
|
Nick Fisher
|
073976b40e
|
logging
|
2025-06-09 18:13:54 +08:00 |
|
Nick Fisher
|
6d0844f873
|
logging
|
2025-06-09 18:13:44 +08:00 |
|
Nick Fisher
|
983d1373ba
|
logging
|
2025-06-09 18:13:35 +08:00 |
|
Nick Fisher
|
0dd64a07bb
|
add helper method to convert between TStencilFace and MaterialInstance::StencilFace (not strictly necessary, but will help if something upstream changes in future
|
2025-06-09 18:12:17 +08:00 |
|
Nick Fisher
|
6055bd3fa7
|
fix FFIMaterial so it correctly translates between StencilFace (Dart) and TStencilFace (Dart FFI) enums
|
2025-06-09 18:10:07 +08:00 |
|
Nick Fisher
|
f3a576005a
|
expose setShadowsEnabled method on View/FFIView
|
2025-06-09 18:09:27 +08:00 |
|
Nick Fisher
|
ff559997dd
|
(web) regenerate JS bindings
|
2025-06-05 21:52:47 +08:00 |
|
Nick Fisher
|
79fea25d1b
|
manually edit JS bindings to remove internal (Dart) struct members and fix TFogOptions
|
2025-06-05 16:42:28 +08:00 |
|
Nick Fisher
|
9ae7c784df
|
pass TFogOptions by value, not pointer, and rearrange struct fields to minimize alignment issues
|
2025-06-05 16:41:08 +08:00 |
|
Nick Fisher
|
acf03ea0c7
|
pass TFogOptions by value, not pointer, and rearrange struct fields to minimize alignment issues
|
2025-06-05 16:40:53 +08:00 |
|
Nick Fisher
|
a9553da1d4
|
(build) remove libpng
|
2025-06-05 10:12:41 +08:00 |
|
Nick Fisher
|
fc4686b20f
|
add documentation for Scene
|
2025-06-04 17:44:24 +08:00 |
|
Nick Fisher
|
ab4743da90
|
pass keepData flag to instances of FFIAsset when creating geometry
|
2025-06-04 11:14:02 +08:00 |
|
Nick Fisher
|
7406662853
|
add nullptr check when loading gltf assets
|
2025-06-04 11:13:39 +08:00 |
|
Nick Fisher
|
aa2f19442b
|
surround frame request hooks with try/catch, and add a check to avoid concurrency exceptions when adding/removing hooks
|
2025-06-04 11:13:15 +08:00 |
|
Nick Fisher
|
cc99905eb8
|
pass through keepData flag when creating geometry via viewer
|
2025-06-04 11:11:42 +08:00 |
|
Nick Fisher
|
1d697037c0
|
gltf animation names are immutable, so cache these in a local copy in FFIAsset
|
2025-06-04 11:10:45 +08:00 |
|
Nick Fisher
|
c024efb8cd
|
store reference to keepData in each FFIAsset and throw exception if an instance is attempted to be created when keepData is false
|
2025-06-04 11:09:28 +08:00 |
|
Nick Fisher
|
150c0227c8
|
(test) remove group from asset_tests
|
2025-06-04 11:08:13 +08:00 |
|
Nick Fisher
|
e594a42496
|
add test for create/destroy geometry instances
|
2025-06-04 11:07:58 +08:00 |
|
Nick Fisher
|
c484eeb37f
|
when destroying an asset, remove/destroy instances before destroying the parent asset
|
2025-06-04 11:07:21 +08:00 |
|
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
|
886a4a37aa
|
(test) log to stdout by default when using TestHelper
|
2025-06-04 10:46:55 +08:00 |
|
Nick Fisher
|
6db82d00c2
|
don't call removeAnimationComponent in viewer (moved to FilamentApp.destroyAsset)
|
2025-06-03 16:40:50 +08:00 |
|
Nick Fisher
|
0fb4fd0004
|
(web) use mimalloc as default allocator on emscripten builds and set SAFE_HEAP to 1 by default for debug builds
|
2025-06-03 16:40:12 +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
|
28aef7e5cc
|
when destroying assets, remove animation component in FilamentApp, not viewer
|
2025-06-02 14:58:52 +08:00 |
|
Nick Fisher
|
b1617004d7
|
add missing EMSCRIPTEN_KEEPALIVE from Texture_generateMipMapsRenderThread
|
2025-06-02 14:58:11 +08:00 |
|
Nick Fisher
|
32b6b1c227
|
(flutter) add zero size check in TextureWidget
|
2025-06-02 12:58:53 +08:00 |
|
Nick Fisher
|
1c500fe925
|
require dispose() on InputHandlerDelegate and update sample implementations
|
2025-06-02 12:58:26 +08:00 |
|
Nick Fisher
|
3fd15ab91b
|
(flutter) add zero size check for texture descriptors
|
2025-06-02 12:58:11 +08:00 |
|
Nick Fisher
|
2191f9d44b
|
require dispose() on InputHandlerDelegate and update sample implementations
|
2025-06-02 12:57:45 +08:00 |
|
Nick Fisher
|
87b63301f2
|
require dispose() on InputHandlerDelegate and update sample implementations
|
2025-06-02 12:57:22 +08:00 |
|
Nick Fisher
|
0d5b42c908
|
add Char to js_interop malloc
|
2025-06-02 12:15:35 +08:00 |
|