Nick Fisher
4e64c4976f
refactor!: rename removeAsset to destroyAsset
...
use render thread methods for lights
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
3e181b6aff
fix: allow destroying instances independently of owner
2025-01-07 08:25:48 +08:00
Nick Fisher
8e0ba8ac4e
fix: glTF instancing when loaded via buffer
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
96fe2c89ea
internal: add FFI method to check for valid renderable
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
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
e9c14139c2
chore: disable grid center sphere and fix priority
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
fc4842ed6d
chore: remove colors from Gizmo
2025-01-07 08:25:48 +08:00
Nick Fisher
eb4e70a7cf
chore: remove colors from Gizmo
2025-01-07 08:25:48 +08:00
Nick Fisher
0facb3f906
internal: add TMaterial type
2025-01-07 08:25:48 +08:00
Nick Fisher
355c28477b
internal: add Material_createInstance
2025-01-07 08:25:48 +08:00
Nick Fisher
c1a294315a
internal: expose Engine getters (TransformManager, RenderableManager), and build/desotry material methods
2025-01-07 08:25:48 +08:00
Nick Fisher
f27628e719
internal: add createGrid/destroyMaterial render thread methods
2025-01-07 08:25:48 +08:00
Nick Fisher
fd1faa6023
feat: allow passing custom material for grid overlay
2025-01-07 08:25:48 +08:00
Nick Fisher
1b979252db
feat: re-implement grid overlay
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
0ad73d06e0
internal: pass NameComponentManager to GltfSceneAsset, used for finding child entities by name
2025-01-07 08:25:48 +08:00
Nick Fisher
6b883f3352
chore: update hit test entities used for gizmo
2025-01-07 08:25:48 +08:00
Nick Fisher
ffa0f77a42
chore: ignore TRACE when ENABLE_TRACING not set
2025-01-07 08:25:48 +08:00
Nick Fisher
26ae21910f
feat: add rotation gizmo asset + resource file
2025-01-07 08:25:48 +08:00
Nick Fisher
29c35f9037
refactor: Gizmo internals
2025-01-07 08:25:48 +08:00
Nick Fisher
1e1d6fdcc9
chore: add dummy bounding box to GridOverlay
2025-01-07 08:25:48 +08:00
Nick Fisher
113f769160
chore: regenerate materials
2025-01-07 08:25:48 +08:00
Nick Fisher
278575c3e2
internal: add bounding box to SceneAsset & subclasses
2025-01-07 08:25:48 +08:00
Nick Fisher
fe0f63c4cb
chore: update gizmo materials
2025-01-07 08:25:48 +08:00
Nick Fisher
8a894f7e88
refactor: add createGizmoRenderThread
2025-01-07 08:25:48 +08:00
Nick Fisher
6b36d67ed7
feat: add gizmo.glb to assets/resources
2025-01-07 08:25:48 +08:00
Nick Fisher
5564be9ce9
feat: add TRACE macro
2025-01-07 08:25:48 +08:00
Nick Fisher
6d5bc305dc
fix SceneManager_createCameraRenderThread
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
80ca4b97a9
add create/set camera render thread functions
2025-01-07 08:25:48 +08:00
Nick Fisher
fe37d45e1a
return null entity for grid overlay
2025-01-07 08:25:48 +08:00
Nick Fisher
bf3d4f7c0e
add dithering to view
2025-01-07 08:25:48 +08:00
Nick Fisher
d53a8b20b8
move Geometry asset builder from header to own implementation
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
b7bc46b94a
feat: re-add uvScale, vertexScale to unlit material
2024-11-21 12:30:20 +08:00
Nick Fisher
bc8edb7eb4
fix: remove MaterialInstance from SceneManager storage when destroyed
2024-11-21 12:29:54 +08:00
Nick Fisher
5deb2ad7cf
chore: factor out SceneManager_ methods
2024-11-21 11:16:54 +08:00
Nick Fisher
26eba7ae09
fix!: update Makefile & rebuild materials for Vulkan
2024-11-21 10:07:08 +08:00
Nick Fisher
0b9f3160d9
feat: add MaterialInstance.setDepthFunc
2024-11-15 22:56:40 +08:00
Nick Fisher
52f041afba
chore: move TMaterialInstance FFI methods to own file/header
2024-11-15 22:24:07 +08:00
Nick Fisher
05cb4325da
chore: rebuild materials
2024-11-15 22:23:07 +08:00