Commit Graph

723 Commits

Author SHA1 Message Date
Benjamin Doherty
2c490ec799 Release Filament 1.20.5 2022-03-28 18:44:56 -07:00
Philip Rideout
a82b3bedb2 gltfio: material variants can now be applied to FilamentInstance. 2022-03-25 16:47:59 -07:00
Philip Rideout
ba042db3f4 gltfio Java: add getMorphTargetNames for consistency with other methods.
Tested by hacking ModelViewer.
2022-03-24 19:23:14 -07:00
Philip Rideout
faeba6ad95 gltfio: add support for KHR_materials_variants
Tested the Java API by hacking ModelViewer.
Tested the JavaScript API by adding to filament-viewer-test.
2022-03-24 19:23:14 -07:00
Philip Rideout
043fdf7a51 Remove lite flavor from android-utils.
We noticed that the lite flavor isn't actually smaller, plus we need to
rework our Android library hierarchy anyway, so for now let's remove
this.
2022-03-23 11:18:25 -07:00
Benjamin Doherty
3809259f47 Release Filament 1.20.4 2022-03-21 14:45:00 -07:00
Romain Guy
ebca955682 Clear warnings 2022-03-19 12:58:18 -07:00
daemyung jang
da99fe63be Make public gltfio's math 2022-03-15 09:11:12 -07:00
Benjamin Doherty
47e30c337e Release Filament 1.20.3 2022-03-14 14:17:25 -07:00
Philip Rideout
fb627d8b66 gltfio: decouple MaterialProvider lifetime from AssetLoader.
This is a gltfio API change (!)

Jave clients now need to call destroy on MaterialProvider.

Previously, the Java AssetLoader took over ownership of a native
material provider upon construction, but this was neither documented
nor consistent with the C++ layer. (This is historical; in the past we
did not expose MaterialProvider to Java.)

One motivation for this (aside from API consistency) is that users may
wish to preserve the material cache from one run to another.

Fixes #5132.
2022-03-14 08:56:33 -07:00
Philip Rideout
dc60f57a9a gltfio: simplify API, make animator always available.
In the past there was an API gotcha because users had to "get" the
animator before releasing the glTF source data. This could have been
surprising because it was a getter method, not a factory method.

This was due to overeager optimization on my part, I wanted to avoid
animator overhead for non-animated models, when in fact it has very
little overhead.

Moreover, the animator is conceivably useful even when there are no
pre-supplied animations (e.g. for applying skins), so let's just create
it unconditionally.

Motivated by #5299.
2022-03-10 11:36:46 -08:00
Benjamin Doherty
e4cb861817 Release Filament 1.20.2 2022-03-07 14:09:43 -08:00
Philip Rideout
daff8fea9f Android Viewer: fix URI bug when dropping some zips.
Dragging a zip file into the Remote Viewer page would fail if it
contained a glTF with `./` prefixes in the `images` section. The best
fix is to use Java's proper URI object rather than trying to parse the
string.
2022-03-04 09:15:37 -08:00
Benjamin Doherty
1797ff5d90 Release Filament 1.20.1 2022-03-02 15:46:41 -08:00
chubei-oppen
37353cca55 android-utils: Copy bug fixes from upstream (#5279) 2022-03-01 17:32:40 -10:00
chubei-oppen
c72817fc25 Bugfix: Mat4 from Quaternion was transposed (#5277) 2022-03-01 10:08:27 -08:00
Benjamin Doherty
b80d73f3cf Release Filament 1.20.0 2022-02-24 13:55:33 -08:00
chubei-oppen
4ac3454dc6 Bugfix: The first image passed to Stream::SetAcquiredImage is ignored and leaked 2022-02-24 09:25:14 -08:00
chubei-oppen
23b578ef89 Bugfix: lookAt z axis negated 2022-02-24 09:24:57 -08:00
Mathias Agopian
991360da97 Missing public modifier in Texture.java
Fixes #5210
2022-02-16 10:24:20 -08:00
daemyung jang
001a3e3dc8 Set the morph target buffer by builder (#5179) 2022-02-16 09:20:38 -08:00
Romain Guy
b6eca61786 Update Gradle (#5208)
* Update Gradle

* Add comment
2022-02-15 17:01:17 -08:00
Romain Guy
08e809bf75 Update Android tooling (#5204)
* Update Android tooling

* Don't update AGP
2022-02-15 13:22:30 -08:00
Mathias Agopian
1d6aeb5de1 Add basic support for instanced renderables
We can now specify an "instance count" per renderable during creation. 
This instance count applies to all render primitives in the 
Renderable.

This will simply draw the renderable "instance count" times. A new
method available to vertex shaders, getInstanceIndex(), allows the
material to discriminate the instances and adjust the position/transform
accordingly.

Typically this is used for particle systems.
2022-02-15 13:11:23 -08:00
Romain Guy
9491b36a25 It's ok compiler, it's ok 2022-02-15 08:17:10 -08:00
daemyung jang
5c41b332ad Add Java binding to get morph target names 2022-02-14 16:40:32 -08:00
Benjamin Doherty
fd69c7ed75 Release Filament 1.19.0 2022-02-14 13:46:06 -08:00
Mathias Agopian
3f6188edff Enable rough reflections
This works by first generating a reflection buffer which gets blurred,
then the color pass samples from this buffer according to the roughness
of the surface being rendered.

A lot of the changes here involve utilizing "reserved" variants for
the new "SSR" pass and all the fallout from that.
2022-02-13 22:53:47 -08:00
daemyung jang
9844803b26 Add function overloading for setMorphTargetBufferAt (#5169) 2022-02-10 15:55:41 -08:00
daemyung jang
1924810c17 Deprecate MorphHelper
These changes bring the loading performance optimization by removing
flush and wait.
2022-02-08 10:31:17 -08:00
daemyung jang
6ab45a4cf0 Fix an annotation for the morph target count
Filament now supports the number of morph target up to 256.
2022-02-08 10:23:49 -08:00
Benjamin Doherty
5e2c94c31a Release Filament 1.18.0 2022-02-08 09:18:10 -08:00
Mathias Agopian
19729db982 turns out GLES3.x forbids depth texture filtering
warn about this condition on debug builds
2022-02-03 14:28:28 -08:00
Romain Guy
04337fdb68 Update Kotlin math API to latest (#5152)
Changes incorporated from github.com/romainguy/kotlin-math
2022-02-03 12:17:21 -08:00
Ben Doherty
4c4a93d9b5 Support legacy morphing (#5129)
Support legacy morphing (morphing with targets supplied via VertexAttributes) for older clients. This gives clients more time to transition over to the new MorphTargetBuffer API.
2022-01-27 16:16:53 -08:00
daemyung jang
354c39be6b Get the morph target count from the renderable (#5077)
* Get the morph target count from the renderable
* Set the morph target count by Builder
* Update morph target weights partially
* Remove noexcept at functions could throw exceptions
* Update Java bindings at RenderableManager
* Add missing comments
* Update morph target weights from offset

Co-authored-by: Mathias Agopian <mathias@google.com>
2022-01-26 10:27:25 -08:00
daemyung jang
1952f0a1f7 Change morphing APIs to support LOD (#5080)
* Change morphing APIs to support LOD
* Add Java and Web bindings for morphing
* Omit and fix JS bindings
* Fix styles in MorphTargetBuffer.java
2022-01-25 21:57:11 -08:00
daemyung jang
61fdc0d375 Fix styles in SkinningBuffer.java (#5117) 2022-01-25 21:46:55 -08:00
Alexey Pelykh
45054eece9 gltfio: support material extras 2022-01-25 10:04:10 -08:00
Benjamin Doherty
b657ccd75a Release Filament 1.17.0 2022-01-24 12:48:28 -08:00
Mathias Agopian
1678d02c87 Allow more flexible quality settings for the ColorGrading LUT 2022-01-20 09:55:16 -08:00
Ben Doherty
fb76f8ed80 Add Java / WebGL bindings for screen-space reflections (#5054) 2022-01-19 12:50:32 -08:00
daemyung jang
4b572cf065 Remove duplicated APIs 2022-01-19 09:55:59 -08:00
daemyung jang
3e3fc76688 Add FilamentAsset Java bindings 2022-01-19 09:55:59 -08:00
Benjamin Doherty
a8d72bb226 Release Filament 1.16.1 2022-01-18 13:52:08 -08:00
Mathias Agopian
352acff396 improve documentation regarding post-processing and render targets
Fixes #5015
2022-01-13 09:59:58 -08:00
daemyung jang
6805940bbf Compute morphing on GPU (#4999) 2022-01-12 11:06:47 -08:00
Romain Guy
954f9112e4 Replace generic tonemap curve with a simpler one (#5041)
* Replace generic tonemap curve with a simpler one

This change removes the shoulder parameter which had inconsistent
behaviors. The new curve is simpler and designed to still match
by default the gray point and the contrast of ACES in a bright
surround.

* Fix build
2022-01-12 09:55:35 -08:00
Jared Fowler
b67963176b Moving UiHelper to the constructor which allows for more composable control of the underlying views & surface 2022-01-11 08:56:42 -08:00
Ankbzpx
fb1eb35ba5 Fix aabb misalignment for skinned gltf model (#4973) 2022-01-10 15:06:23 -08:00