Commit Graph

7528 Commits

Author SHA1 Message Date
Mathias Agopian
39bf0f0a71 move FScene::updateUBO() back to FView
it really didn't belong to FScene
2025-08-29 14:45:36 -07:00
Filament Bot
a7894b5876 [automated] Updating /docs due to commit 44ed67b
Full commit hash is 44ed67bfb6

DOCS_ALLOW_DIRECT_EDITS
2025-08-29 21:22:42 +00:00
Powei Feng
44ed67bfb6 docs add performance analysis page 2025-08-29 14:19:28 -07:00
Andy Hovingh
1765f1421d additional performance analysis documentation, namely on locking GPU frequency 2025-08-29 14:26:44 -05:00
Juan Caldas
4a4c4b276f Remove temp gltf sample (#9166) 2025-08-29 18:50:26 +00:00
FireBanana
8c985607b8 Remove extra tab in PassNode 2025-08-29 11:04:13 -07:00
Juan Caldas
090941c35a webgpu: Remove temporary file (#9165) 2025-08-29 18:00:41 +00:00
Andy Hovingh
7e6d6f6635 webgpu: fix linux build with added unit tests 2025-08-29 12:39:35 -05:00
Juan Caldas
a695170193 Add missing attributes to sample (#9160) 2025-08-29 12:52:12 +00:00
rafadevai
eed71107c9 GL: Fix memory leak for external texture with non external sampler (#9159)
In EGLAndroid, external textures imported from an AHB
that dont use a SAMPLER_EXTERNAL are not properly destroyed,
causing a memory leak that eventually leads to an OOM.
2025-08-29 01:30:27 +00:00
Juan Caldas
74ba3eb00c webgpu: Support skinning on WebGPU (#9137)
BUGS = [436886048]
2025-08-29 00:24:14 +00:00
Powei Feng
088900e6e0 Fix bones indices and weights sampler + descriptor set (#9154)
In some places, this sampler was incorrectly assumed to be
sampler2darray, but it should be just a sampler2d.  Additionally,
sampling from it should produce unfiltered values - this has been
changed accordingly.
2025-08-28 14:05:16 -07:00
Syed Idris Shah
60ab596e39 wgpu: fix the deadlock in finish call for gltf_viewer
gltf_viewer on android calls finish before creating any resources.
This causes a hang on OnSubmittedWorkDone for the work that was never
there. Put a check in Driver::finish call to avoid the deadlock.
2025-08-28 14:42:44 -04:00
Sungun Park
e03b077e9b fix: Make ZstdHelper compatible with UBSan (#9152)
In ZstdHelper::isCompressed call, `src` may not be aligned to 4 bytes,
which is violating the alignment requirement of
`UndefinedBehaviorSanitizer: misaligned-pointer-use`, thereby resuling
in a runtime failure with UBSan enabled. So reconstruct the 32-bit
integer as a workaround.
2025-08-28 18:10:09 +00:00
Juan Caldas
f5418cb866 webgpu: Handle stacked swizzles (#9149)
BUGS = [433944896]

---------

Co-authored-by: Andy Hovingh <6198728+AndyHovingh@users.noreply.github.com>
2025-08-28 17:12:44 +00:00
Syed Idris Shah
9b75b18426 wgpu: Fix linux build
webgpu build on linux was broken because of 45fcea101f.
Resolve the symbols conflict between webgpu and X11.
2025-08-28 12:06:08 -04:00
Powei Feng
8f5f007e83 vk: fix rendertarget uninitialized fields (#9153) 2025-08-27 13:38:47 -07:00
Sungun Park
1aab0585da Disable amortized shader compile by default (#9151)
This is a temporary resolution until we fix an underlying issue.
2025-08-27 12:46:58 -07:00
Andy Hovingh
1d1e15d915 webgpu: profiling and system tracing support 2025-08-27 10:41:14 -05:00
Doris Wu
ff394f7c1b feat: Add Visibility Bitmask method for GTAO (#9101)
* Quick test

* Fix incorrect logic and add some comments

* Set thickness parameter

* refactoring

* Update

* Generated files

* Some comments

* Update

* Update generated files

* Update

* Update

* Add comments
2025-08-26 23:27:02 +00:00
Syed Idris Shah
161b75b9b7 wgpu: Fix samples on linux
Window size should be calculated from windows not screen on XLIB.
XCB window is not implemented in Dawn. Remove the stale/wrong implementation in filament
2025-08-25 16:51:04 -04:00
Powei Feng
bc12a56920 vk: check rebind flow if bindDescriptorSet called between draw2 (#9139)
In the case with external samplers, if another descriptor set gets
bound between draw2(), then we need to check to see if a rebinding
of the pipeline is necessary.

Co-authored-by: Serge Metral <sergemetral@google.com>
2025-08-25 09:04:11 -07:00
Mathias Agopian
15bb295ec6 A new froxel grid vizualization for FilamentApp
FilamentApp now has debugging options to enable or disable the
camera and directional shadow frustums, as well as the new
"froxel grid" visualization.

"froxel grid" is automatically enabled when "froxel debugging" is
enabled in the debug gui in gltf_viewer.


New corresponding debugging APIs were added to View.
2025-08-22 15:55:46 -07:00
Mathias Agopian
cea178a40c froxel vizualization can now be turned on/off per view
Before this change once the froxel vizualizaition was enabled via
the Engine debug framework, it applied to all views. This adds a
debug API on View to control whether the view will display this
vizualization.
2025-08-22 15:55:46 -07:00
Mathias Agopian
f34bb3d775 ViewerGui: hide stereo options when stereo is not enabled 2025-08-22 15:37:06 -07:00
Mathias Agopian
30112b5b5b gltf_Viewer: the -y (--eyes) options wasn't working 2025-08-22 15:37:06 -07:00
Mathias Agopian
9aaa1bf413 FilamentApp: fix projection matrix
For some reason we were not setting the aspect-ratio to 1 and scaling 
the clip-space instead. This could lead to lighting and clipping
issues.
2025-08-22 15:37:06 -07:00
Powei Feng
0471c5de2f vk: use firstBitSet API (#9128)
This is more efficient than the prevoius way
2025-08-22 22:31:48 +00:00
Juan Caldas
65cca71abf webGPU Run Load Image Tests (#9140) 2025-08-22 18:11:16 -04:00
Doris Wu
e3384feee0 Clamp before assign to uint (#9132) (b/440220363) 2025-08-22 03:51:11 +00:00
Mathias Agopian
3650556de4 make sure PixelParams::thickness is initialized
If screen-space refraction was used enabled but the thickness
parameter wasn't explicitly set in the material, it would end-up
being uninitialized. Now it's initialized to 0.5 by default,
which is the value used for subsurface.

Also removed some calculations dependent on thickness being set, as
they assumed a thickness of 0.
2025-08-21 20:25:01 -07:00
Powei Feng
679b08b5db github: add script and action for getting gltf assets (#9085)
- Script for getting models from glTF-Sample-Assets
- Add support for reading gltf models from a file.
2025-08-21 22:16:12 +00:00
Juan Caldas
5fd5cd270c webgpu: Skip failing tests for WebGPU (#9133)
BUGS = [424157731]
2025-08-21 20:37:32 +00:00
Andy Hovingh
275ffb409f wgpu: add texture swizzle support (#9129)
BUGS = [433944896]
2025-08-21 20:03:37 +00:00
Powei Feng
0261af22b0 Feature flag guard GEN_MIPMAPPABLE precondition (#9134) 2025-08-21 18:50:06 +00:00
Powei Feng
60bdbb3d1f matdbg: fix matinfo no variants bug (#9127)
matinfo -w doesn't show the variants for any backend other than
metal.  The reason is that the code for updating the variant
list wasn't being triggered on currentBackend changes.
2025-08-21 11:04:59 -07:00
Juan Caldas
84c68f7080 webgpu: Remove texture logs (#9126) 2025-08-20 19:02:43 +00:00
Juan Caldas
d9b3535be9 webgpu: Implement blitDEPRECATED (#9121)
BUGS = [436887647]
2025-08-20 18:20:34 +00:00
Juan Caldas
fe3c804c73 webgpu: Add missing constexpr (#9125) 2025-08-20 15:56:08 +00:00
Juan Caldas
d76ba8fb19 webgpu: refactor texture usage (#9044) 2025-08-20 10:49:25 -04:00
Filament Bot
5daa0cfe4b [automated] Updating /docs due to commit a7653cf
Full commit hash is a7653cf773

DOCS_ALLOW_DIRECT_EDITS
2025-08-20 06:27:19 +00:00
Powei Feng
a7653cf773 docs: override index.html to redirect to intro.md 2025-08-19 23:24:38 -07:00
Filament Bot
1b3a22876c [automated] Updating /docs due to commit 663a451
Full commit hash is 663a451031

DOCS_ALLOW_DIRECT_EDITS
2025-08-20 06:13:36 +00:00
Powei Feng
663a451031 renderdiff: enable vulkan (#9108)
RDIFF_BRANCH=pf/renderdiff-enable-vulkan
2025-08-20 06:10:01 +00:00
Mathias Agopian
96b26b85cc add a --workarounds option to matc
Currently the only values possible are 'none' and 'all'. 'all' is the
default. This option will be used to control code generation
workarounds individually. Currently 'all' disable the
MergeReturn and Simplification passes, which have causes issues in
the past on some older Android devices.
2025-08-19 22:10:46 -07:00
Mathias Agopian
69fe317052 matc: add -O0 and -Os aliases for -g and -S 2025-08-19 22:10:46 -07:00
Mathias Agopian
9e16263876 matc: source cleanup 2025-08-19 22:10:46 -07:00
Mathias Agopian
cb43e53b71 a small micro optimization when executing commands 2025-08-19 22:10:24 -07:00
Powei Feng
45fcea101f webgpu: enable choosing vulkan backend on MacOS (#9106)
- Add a Configuration struct to the WebGPUPlatform class.  This
   allows for client-side setting of WebGPU backend configurations.
 - Add a configuration for forcing the wgpu backend to pick a
   certain backend.
 - Add Vulkan as a potential backend for WebGPU + MacOS.
 - Locally modify Dawn so that it does not assume only switfshader
   is available for Vulkan on MacOS.
 - Enable vulkan support for Dawn (third_party/dawn/tnt/CMakeLists.txt)
 - Plumb option to pick different WebGPU backend through
   FilamentApp and gltf_viewer.
2025-08-20 04:50:17 +00:00
Powei Feng
a150fabace docs: fix broken links (#9118)
- Fix broken links in https://google.github.io/filament/main/
 - Make /README.md links consistent
 - Add additional replacement recipes for /README.md
 - Make /index.html redirect to /dup/intro.html because
   /index.html has the wrong relative links. This is essentially
   adding a redirect-only index.html to src_raw.
2025-08-19 22:37:07 +00:00