Nick Fisher
4e64c4976f
refactor!: rename removeAsset to destroyAsset
...
use render thread methods for lights
2025-01-07 08:25:48 +08:00
Nick Fisher
04adbc39e0
remove Scene class
2025-01-07 08:25:48 +08:00
Nick Fisher
744e39e8dd
fix: move removeIbl to render thread
2025-01-07 08:25:48 +08:00
Nick Fisher
baf86d1ade
refactor!: move light methods from FilamentViewer to SceneManager/TLightManager and rename clearLights/clearAssets to destroyLights/destroyAssets
2025-01-07 08:25:48 +08:00
Nick Fisher
3e39aa3630
feat: allow setting material instance directly on ThermionAsset
2025-01-07 08:25:48 +08:00
Nick Fisher
cc1b55b6c9
internal: remove vertexScale from unlit material and multiply by alpha
2025-01-07 08:25:48 +08:00
Nick Fisher
7717387909
internal: remove bounding box asset when parent asset removed
2025-01-07 08:25:48 +08:00
Nick Fisher
31e453a4e6
refactor: dont require GizmoInputHandler to wrap an existing InputHandler (you can do this by creating your own InputHandler that wraps two children
2025-01-07 08:25:48 +08:00
Nick Fisher
9b988537e0
internal: allow InputHandler methods to return null
2025-01-07 08:25:48 +08:00
Nick Fisher
b6397b5f73
fix!: rename removeEntity to removeAsset
2025-01-07 08:25:48 +08:00
Nick Fisher
584ace23b4
refactor: gizmo/input handler improvements
2025-01-07 08:25:48 +08:00
Nick Fisher
024643e3a1
internal: add check for renderable entity when returning bounding box
2025-01-07 08:25:48 +08:00
Nick Fisher
8d8acef481
feat: remove bounding box from SceneAsset and create renderable wireframe bounding box in ThermionAsset
2025-01-07 08:25:48 +08:00
Nick Fisher
51bdca7158
feat!: remove Viewer setRenderTarget method (use the View method instead)
2025-01-07 08:25:48 +08:00
Nick Fisher
658984e784
internal: FFIView getRenderTarget
2025-01-07 08:25:48 +08:00
Nick Fisher
f8ae90b631
internal: add destroyRenderTargetRenderThread
2025-01-07 08:25:48 +08:00
Nick Fisher
b158062ce8
internal: expose View_getRenderTarget and set (Dart) FFIView.renderTarget property on construction
2025-01-07 08:25:48 +08:00
Nick Fisher
342264eba9
chore: remove unnecessary null check
2025-01-07 08:25:48 +08:00
Nick Fisher
453ce9d1ea
fix: fix highlights after first
2025-01-07 08:25:48 +08:00
Nick Fisher
b6bde0c9d9
fix: set overlay layer visibility when adding grid
2025-01-07 08:25:48 +08:00
Nick Fisher
f873f7da66
feat: add setTransparencyMode to Dart Material class
2025-01-07 08:25:48 +08:00
Nick Fisher
9f9b34f662
feat: expose attached entity as Stream on GizmoInputHandler
2025-01-07 08:25:48 +08:00
Nick Fisher
19ffa91164
chore: update stubbed viewer
2025-01-07 08:25:48 +08:00
Nick Fisher
5fb5e42b98
feat: allow custom material for grid overlay, and material creation from Uint8List
2025-01-07 08:25:48 +08:00
Nick Fisher
ba3636a203
fix: use render thread methods for grid overlay creation and create ubershader instance
2025-01-07 08:25:48 +08:00
Nick Fisher
e0b4ebc349
chore: regenerate bindings
2025-01-07 08:25:48 +08:00
Nick Fisher
1d1a3cbfe6
chore: rename to FFIMaterialInstance
2025-01-07 08:25:48 +08:00
Nick Fisher
0817efc33e
internal: add Dart FFIMaterial type
2025-01-07 08:25:48 +08:00
Nick Fisher
852cb58ba9
fix: move material/instance creation to render thread
2025-01-07 08:25:48 +08:00
Nick Fisher
7cf1468f38
feat: more rotation gizmo improvements
2025-01-07 08:25:48 +08:00
Nick Fisher
62cd85c148
feat: rotation gizmo improvements
2025-01-07 08:25:48 +08:00
Nick Fisher
def85614d8
feat: add rotation gizmo
2025-01-07 08:25:48 +08:00
Nick Fisher
b94aeb8b4a
chore: whitespace
2025-01-07 08:25:48 +08:00
Nick Fisher
8b9b299786
chore: update generated bindings
2025-01-07 08:25:48 +08:00
Nick Fisher
6ce743057b
chore: whitespace
2025-01-07 08:25:48 +08:00
Nick Fisher
fbb53f9033
fix: use createGizmoRenderThread
2025-01-07 08:25:48 +08:00
Nick Fisher
1c5b5c890b
reimplement grid as SceneAsset
2025-01-07 08:25:48 +08:00
Nick Fisher
e43e1c9cbd
flip camera wireframe direction
2025-01-07 08:25:48 +08:00
Nick Fisher
c117555b2c
gizmo improvements, use render thread methods for createCamera, allow setParent null to unparent transform
2025-01-07 08:25:48 +08:00
Nick Fisher
abbf2d5391
update bindings
2025-01-07 08:25:48 +08:00
Nick Fisher
a31c800204
add wireframe camera to geometry
2025-01-07 08:25:48 +08:00
Nick Fisher
877e8def80
add dithering to view
2025-01-07 08:25:48 +08:00
Nick Fisher
6d36dc7923
add dithering to view
2025-01-07 08:25:48 +08:00
Nick Fisher
151935913f
allow null parent to setParent
2025-01-07 08:25:48 +08:00
Nick Fisher
aa7350c419
gizmo & picking improvements
2025-01-07 08:25:48 +08:00
Nick Fisher
c2077cb6b1
fix: store reference to material instances in ThermionViewer so they can be cleaned up on dispose
2025-01-07 08:25:48 +08:00
Nick Fisher
c3c6465908
documentation
2025-01-07 08:25:48 +08:00
Nick Fisher
ed444b0615
feature!:
...
This is a breaking change needed to fully implement instancing and stencil highlighting.
Previously, users would work directly with entities (on the Dart side, ThermionEntity), e.g.
final entity = await viewer.loadGlb("some.glb");
However, Filament "entities" are a lower-level abstraction.
Loading a glTF file, for example, inserts multiple entities into the scene.
For example, each mesh, light, and camera within a glTF asset will be assigned an entity. A top-level (non-renderable) entity will also be created for the glTF asset, which can be used to transform the entire hierarchy.
"Asset" is a better representation for loading/inserting objects into the scene; think of this as a bundle of entities.
Unless you need to work directly with transforms, instancing, materials and renderables, you can work directly with ThermionAsset.
2024-11-27 15:02:37 +11:00
Nick Fisher
9ada6aae64
chore: rename to Viewer_destroy
2024-11-21 12:32:52 +08:00
Nick Fisher
0ef0f37bbf
chore: update stubs
2024-11-21 12:32:34 +08:00