Commit Graph
602 Commits
Author SHA1 Message Date
Benjamin Doherty c84d04254e Release Filament 1.61.2 2025-06-25 12:29:24 -07:00
Sungun Park 880cd66166 Release Filament 1.61.1 2025-06-12 00:31:33 +00:00
Powei Feng 1d2e165d99 Release Filament 1.61.0 2025-06-03 12:02:10 -07:00
Benjamin Doherty 315b53c339 Release Filament 1.60.1 2025-05-20 12:42:33 -07:00
Doris Wu fe474a9d7e Add GTAO shader support (#8688)
* Add GTAO options into the struct

* Add gtao mat and shader

* Set type specific parameters in ppm

* Fix inconsistent name

* Fix incorrect param type

* Add bent normal calculation

* Fix the gui

* Adjust precision

* Use mix

* Add some comments

* Refactoring

* Update comments

* Add comments for aoOptions

* Update

* Update

* Address the comments

* Split .mat into bent and non-bent

* Update

* Update

* Use sqrt on mobile

* Omit default case

* Commit beamsplitter generated changes

* Use built-in acosFast

* Remove unused function

* Fix the mismatched parameter type

* Some optimizations

* Commit beamsplitter results

* Update the comment

* Update default value

* Commit beamsplitter changes

* Extract common parameters out
2025-05-16 00:13:12 +00:00
Sungun Park cc7361dba5 Release Filament 1.60.0 2025-05-13 21:27:27 +00:00
Powei Feng 7ccbdb4633 Release Filament 1.59.5 2025-05-08 09:06:44 -07:00
Benjamin Doherty 9b356926b8 Release Filament 1.59.4 2025-05-01 17:33:19 -07:00
Mathias Agopian 29919e64cd update remote ui, web samples and documentation 2025-05-01 10:21:27 -07:00
Sungun Park 6dac384bd9 Release Filament 1.59.3 2025-04-21 22:05:28 +00:00
Powei Feng 21dd1319df Release Filament 1.59.2 2025-04-16 15:47:19 -07:00
Benjamin Doherty 757640e850 Release Filament 1.59.1 2025-04-09 10:20:51 -07:00
Sungun Park 87dbd59275 Release Filament 1.59.0 2025-03-31 22:23:12 +00:00
Powei Feng 06c0667636 Release Filament 1.58.2 2025-03-28 15:34:06 -07:00
Benjamin Doherty 6066e3a461 Release Filament 1.58.1 2025-03-19 16:17:13 -07:00
Sungun Park 0bcb45613e Release Filament 1.58.0 2025-03-10 22:11:59 +00:00
Powei Feng bd3a0d5377 Release Filament 1.57.2 2025-03-05 14:37:22 -08:00
Benjamin Doherty d35d466367 Release Filament 1.57.1 2025-02-27 10:08:55 -08:00
Konstantin Sakhin 62b8a60527 Implement a query to check if combination of texture format, pixel data format and type is valid. (#8452)
This will help Filament users to perform this check beforehand.
2025-02-18 16:05:03 -08:00
Konstantin Sakhin 2b54e7dd97 Implement query to check if texture format is mipmappable (#8442)
* Implement query to check if texture format is mipmappable

This will allow Filament's users to perform check beforehand.

* add java bindings

* add javascript binding
2025-02-13 15:30:09 -08:00
Sungun Park 83d71d0f57 Release Filament 1.57.0 2025-02-10 23:33:15 +00:00
Benjamin Doherty d8af04f08f Add missing setDithering to jsbindings 2025-02-10 09:37:13 -08:00
Mathias Agopian 69822a91cf the shadow passes get their own face culling mode
the new MaterialInstance::setCullingMode(color, shadow) API allows to
set a separate face culling mode for the color pass and the shadow 
passes.

FIXES[391679058]
2025-02-07 11:36:48 -08:00
Powei Feng 538aa39127 Release Filament 1.56.8 2025-02-06 11:13:56 -08:00
Benjamin Doherty f1c1aa155b Release Filament 1.56.7 2025-01-29 16:41:11 -08:00
Mathias AgopianandPowei Feng 1747ae8f5a validate MaterialInstance references when destroyed (#8366)
* validate MaterialInstance references when destroyed

With this change we now enforce two things:
- All MaterialInstance of a Material must be destroyed when
  destroying said Material. This has always been a documented 
  requirement of the public API, but wasn't enforced (only
  a warning was printed).
  This new assertion is unconditional.

- A MaterialInstance, when destroyed is no longer in use by any
  Renderable.

So before destroying a MaterialInstance, the user of API needs to 
ensure that either all Renderable using that MaterialInstance in one
of their Render Primitives are  destroyed, or, that these Renderable
using that MaterialInstance are reset to another one or to null.

There is a new RenderableManager::clearMaterialInstanceAt() that can
be used to clear a MaterialInstance on a Render Primitive.
  
Additionally, a Render Primitive with a null MaterialInstance is now
silently skipped during rendering, instead of a null-dereference.

Finally, that second assert is protected by a new feature flag: 
"features.engine.debug.assert_material_instance_in_use". This flag is
enabled on DEBUG builds and disabled on RELEASE builds by default.
The flag can be changed at any time using `Engine::setFeatureFlag()`.

BUGS=[333907416]

* Update filament/src/components/RenderableManager.cpp

Co-authored-by: Powei Feng <powei@google.com>

---------

Co-authored-by: Powei Feng <powei@google.com>
2025-01-17 14:15:15 -08:00
Benjamin Doherty e1024123c1 Release Filament 1.56.6 2025-01-16 12:59:55 -08:00
Ben Doherty ac0aea98c9 Fix Web build, update Emscripten SDK to 3.1.60 (#8350) 2025-01-15 11:42:39 -08:00
Sungun Park 29d2d819e3 Release Filament 1.56.5 2025-01-08 21:59:14 +00:00
Mathias Agopian ef6ef784c9 external textures are no longer restricted to SAMPLER_EXTERNAL
OpenGLES allows this when GL_OES_EGL_image is present.
2025-01-07 09:50:57 -08:00
Powei Feng 45b0164c84 Release Filament 1.56.4 2024-12-17 16:39:29 -08:00
Sungun Park 94c1657ca0 Release Filament 1.56.3 2024-12-11 02:17:39 +00:00
Powei Feng 2381551ab9 Release Filament 1.56.2 2024-11-25 15:45:52 -08:00
Sungun Park ffd32e9309 Release Filament 1.56.1 2024-11-19 17:20:09 +00:00
Benjamin Doherty 483ef2f125 Release Filament 1.56.0 2024-11-06 10:48:24 -08:00
Benjamin Doherty 7f92dfd06c Release Filament 1.55.1 2024-11-04 09:34:01 -08:00
show50726 17e4d2b92e Add public API in View for transparent picking (#8206) 2024-10-22 10:46:24 -07:00
Powei Feng 4ee33cd591 Release Filament 1.55.0 2024-10-14 06:07:34 +00:00
Powei Feng b1b2d7072d Revert "Release Filament 1.55.0" (#8191)
This reverts commit 4f5369cefa.

Reason: Initial attempt to release 1.55.0 failed due to a few
   small bugs.
2024-10-10 12:16:00 -07:00
Powei Feng 4f5369cefa Release Filament 1.55.0 2024-10-01 17:09:03 +00:00
Benjamin Doherty 3f37efe4c9 Release Filament 1.54.5 2024-09-24 12:34:25 -07:00
Powei Feng dd7106bfcf Release Filament 1.54.4 2024-09-17 15:24:57 -07:00
Powei Feng 72ba2eee6d Release Filament 1.54.3 2024-09-10 12:26:44 -07:00
Sungun Park 1b4afbab51 Release Filament 1.54.2 2024-09-04 18:55:52 +00:00
Sungun Park 0e0f3a5518 Release Filament 1.54.1 2024-08-27 23:30:26 +00:00
Powei Feng 28ef805e5d Release Filament 1.54.0 2024-08-20 08:55:10 -07:00
Powei Feng cdd0147a17 Release Filament 1.53.5 2024-08-13 15:59:08 -07:00
Benjamin Doherty 56f714633d Release Filament 1.53.4 2024-08-08 12:12:27 -07:00
Sungun Park 4125802644 Release Filament 1.53.3 2024-07-31 16:22:54 +00:00
Mathias Agopian e7c96cd124 better handle skipped frames and cache eviction
Add Renderer::skipFrame() which should be called when intentionally 
skipping frames, for instance because the screen content hasn't changed,
allowing Filament to performance needed periodic tasks, such as
cache garbage collection and callback dispatches.

We also improve the ResourceAllocator cache eviction policy:
- the cache is aggressively purged when skipping a frame
- we aggressively evict entries older than 3 frames

The default Config is now set to a more agressive setting.
2024-07-25 17:23:04 -07:00