Commit Graph
357 Commits
Author SHA1 Message Date
Benjamin Doherty f4087fc81d Bump version to 1.20.5 2022-03-21 14:45:34 -07:00
Benjamin Doherty 375d1f55e3 Release Filament 1.20.4 2022-03-21 14:38:14 -07:00
Benjamin Doherty 47e30c337e Release Filament 1.20.3 2022-03-14 14:17:25 -07:00
Philip Rideout 81fc2c1d23 Always apply bone matrices, even for non-animated models.
This changes the WebGL and desktop glTF viewers so that they always
call `updateBoneMatrices`, even when there are 0 animations. Note
that our Android sample was already doing this correctly.

When combined with #5301, this fixes #5299, although users would need to
use the `recomputeBoundingBoxes` feature in gltfio (`-r` in the desktop
viewer) for this model to be scaled to fill the viewport, since its
embedded bounds are quite large.
2022-03-10 13:41:35 -08:00
Benjamin Doherty e4cb861817 Release Filament 1.20.2 2022-03-07 14:09:43 -08:00
Benjamin Doherty 1797ff5d90 Release Filament 1.20.1 2022-03-02 15:46:41 -08:00
Benjamin Doherty b80d73f3cf Release Filament 1.20.0 2022-02-24 13:55:33 -08:00
Philip Rideout 327576274f Fix web apps that have multiple Filament viewers.
This fixes the emscripten binding errors that we've been seeing
with the <filament-viewer> test page, which prevented us from
including web in the last few Filament releases.

The binding errors were caused by double-initializing the emscripten
module.

I fixed this by allowing clients (e.g. FilamentViewer) to call
Filament.init() more than once. We now accumulate a list of "on ready"
callbacks that get triggered after the emscripten module becomes ready.

As far as I can tell, multiple canvases were actually always broken, and
the viewer test page worked in the past only because we got lucky.
2022-02-22 08:42:36 -08:00
Benjamin Doherty fd69c7ed75 Release Filament 1.19.0 2022-02-14 13:46:06 -08:00
Elie Michel 2c8d296044 Make sure one use the right combination of version
To avoid `Material version mismatch`
2022-02-14 10:55:55 -08:00
Philip Rideout 2e0ace5026 WebGL: another fix for BufferDescriptor bindings.
The previous code would convert each element of the source data
into 8 bit-per-element, but we wnat to preserve the original format
that the user provides.

The new solution is to use `slice()` which is a robust way to clone
all the data in a typed array.

This fixes the new regression with Triangle that Ben caught.
2022-02-09 15:41:15 -08:00
Philip Rideout b8725ffa22 WebGL: remove buffer sharing optimization.
If emscripten grows the heap inside one of our BufferDescriptor binding
functions, then the old heap becomes "detached" and an error can
occur.

This fixes the issue seen with the Parquet demo that Ben caught.
2022-02-09 12:29:54 -08:00
Benjamin Doherty 5e2c94c31a Release Filament 1.18.0 2022-02-08 09:18:10 -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 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
Benjamin Doherty b657ccd75a Release Filament 1.17.0 2022-01-24 12:48:28 -08:00
Ben Doherty fb76f8ed80 Add Java / WebGL bindings for screen-space reflections (#5054) 2022-01-19 12:50:32 -08:00
Benjamin Doherty a8d72bb226 Release Filament 1.16.1 2022-01-18 13:52:08 -08:00
daemyung jang 6805940bbf Compute morphing on GPU (#4999) 2022-01-12 11:06:47 -08:00
Ankbzpx fb1eb35ba5 Fix aabb misalignment for skinned gltf model (#4973) 2022-01-10 15:06:23 -08:00
Benjamin Doherty a1a3adf8af Release Filament 1.16.0 2022-01-10 10:43:35 -08:00
jeanlemotan 9d7f5f593e Added line/triangle strip support (#5017)
* Added line/triangle strip support

* Added strip support for Java and JS
Changed README to indicate strip support for gltf
2022-01-06 13:07:32 -08:00
Benjamin Doherty eaefaf8e59 Release Filament 1.15.2 2022-01-04 11:52:31 -08:00
Benjamin Doherty 8111c50a5a Release Filament 1.15.1 2021-12-13 11:06:12 -07:00
Benjamin Doherty f3849a1f57 Update web docs for 1.15.0 2021-12-06 12:59:23 -08:00
Benjamin Doherty 3a33220dad Release Filament 1.15.0 2021-12-06 11:12:58 -08:00
Ben Doherty 477a3a8771 Pin web docs Filament version (#4907) 2021-11-30 12:05:40 -08:00
Benjamin Doherty 519ae4d143 Release Filament 1.14.2 2021-11-29 14:05:55 -08:00
Benjamin Doherty 15001524bd Release Filament 1.14.1 2021-11-22 10:10:35 -08:00
Benjamin Doherty f690015a88 Release Filament 1.14.0 2021-11-15 10:06:45 -08:00
Benjamin Doherty 157c0264af Release Filament 1.13.0 2021-11-08 11:49:39 -08:00
Benjamin Doherty 81fa33abeb Release Filament 1.12.11 2021-11-01 14:55:54 -07:00
Benjamin Doherty 5fea428243 Release Filament 1.12.10 2021-10-25 11:06:12 -07:00
Benjamin Doherty 1dcf347b87 Release Filament 1.12.9 2021-10-20 12:11:46 -07:00
BStringhamVRSK c10f7b01f4 Fixes normal map issues in mipgen and exposes a couple of SurfaceOrientation functions for Web
* mipgen: Linearized PNG bitmaps (such as normal maps) no longer perform gamma transform on read.

* mipgen: Using "-k normals" argument now works for all file types, not just KTX

* Web: Exposed SurfaceOrientation functions getQuatsHalf4() and getQuatsFloat()
2021-10-15 14:23:41 -07:00
Benjamin Doherty eabfd08473 Release Filament 1.12.8 2021-10-11 11:02:30 -07:00
BStringhamVRSKandRomain Guy f04864c216 Expose ColorGrading$Builder, View.setPostProcessingEnabled()/View.setAntiAliasing() JS bindings
Co-authored-by: Romain Guy <romainguy@curious-creature.com>
2021-10-06 14:21:18 -07:00
Mathias Agopian 0229077293 added some missing javascript APIs 2021-10-06 08:08:18 -07:00
Benjamin Doherty e203edc12a Release Filament 1.12.7 2021-10-04 10:21:10 -07:00
Benjamin Doherty 510f51d934 Release Filament 1.12.6 2021-09-27 11:12:08 -07:00
Benjamin Doherty 1980107925 Release Filament 1.12.5 2021-09-20 10:14:01 -07:00
Benjamin Doherty cc70b827a8 Release Filament 1.12.4 2021-09-13 10:42:35 -07:00
Benjamin Doherty 807b9882c5 Release Filament 1.12.3 2021-09-08 11:02:45 -07:00
Romain Guy dcfc27857f Update WebGL demos (#4564) 2021-08-30 12:45:02 -07:00
Benjamin Doherty fe8e1d0734 Release Filament 1.12.2 2021-08-30 11:42:07 -07:00
Benjamin Doherty 93ce14659a Release Filament 1.12.1 2021-08-23 12:37:59 -07:00
Benjamin Doherty 5ef234153d Release Filament 1.12.0 2021-08-09 12:02:13 -07:00
Mathias Agopian b5f9c66503 model/view matrices on Camera now use double precision
This PR only changes the API, internal storage and computation are 
still done in float, but this paves the way to double precision 
transforms.
2021-08-03 18:41:48 -07:00
Benjamin Doherty d249f70750 Release Filament 1.11.2 2021-08-03 11:11:24 -07:00
Mathias Agopian 8a81486f5d Implement light channels
Currently there are 8 light channels, both renderables and lights can
be associated to one or several light channel, lighting occurs when
at least one channel is active on both the light and the renderable.

Fixes #4275
2021-07-30 18:54:32 -07:00