Ben Doherty
677cdc1239
Add backend test for viewport and scissor ( #5767 )
2022-07-07 17:22:41 -07:00
MasTraER
a4d3ffe7d4
Metal: add support for scissor ( #5644 )
...
This patch enables user scissor in Metal backend; There was no implementation for it.
While the absence of the feature in Metal does not incur serious problem, many rendering glitches were found in apps using ImGui due to it.
Co-authored-by: Benjamin Doherty <bendoherty@google.com >
2022-07-07 13:37:43 -07:00
Philip Rideout
3ada971d8a
matdbg: prep for removing bespoke chunk serializer
...
matdbg should use Flattener / Unflattener rather than imitating them,
this is phase 1.
2022-07-07 11:09:23 -07:00
Philip Rideout
6588cc30ea
Use string_view for map lookups.
...
We can avoid construction of std::string by using std::map with a
special comparator. For some reason, this is not supported with
unordered_map.
2022-07-07 10:07:17 -07:00
Mathias Agopian
09f188659a
fix typos in Camera documentation
2022-07-07 09:37:34 -07:00
Benjamin Doherty
ea3553ceb7
Release Filament 1.25.0
2022-07-06 19:07:22 -07:00
Mathias Agopian
a64b1eccdf
add API to enable/disable auto-instancing globally.
...
auto-instancing can have some overhead, so when it is known that the
scene doesn't have identical primitives, it is better to disable it.
(disabled by default).
Also add some missing bindings for `enableAccurateTranslations`.
2022-07-06 15:51:41 -07:00
Mathias Agopian
eda2b7955d
Basic automatic instancing.
2022-07-06 15:51:41 -07:00
Mathias Agopian
6bc0e032fc
Access the object uniforms relative to gl_InstanceIndex
2022-07-06 15:51:41 -07:00
Ben Doherty
9ce797eee8
Fix destroyEntity documentation ( #5760 )
2022-07-06 13:17:19 -07:00
Benjamin Doherty
ab2a90374b
Release Filament 1.24.0
2022-07-01 12:08:17 -07:00
Ben Doherty
10cf45dd6b
Metal: Allow Filament to disregard MTLTexture pixelFormat when importing ( #5753 )
2022-06-30 16:04:01 -07:00
Philip Rideout
0ac9ecb823
"ShaderBuilder" does not need to exist, remove it.
...
We were mostly using this as a byte buffer, not a builder.
This PR removes ~200 LoC and 3 files.
2022-06-30 15:37:35 -07:00
Ben Doherty
4096a46547
CocoaPods: include uberz library ( #5752 )
2022-06-30 14:08:46 -07:00
Philip Rideout
a4ac9bf088
matc: add --template option.
...
This makes it easier to generate ubershaders without the fancy CMake
machinery available in its `configure_file` command.
2022-06-30 14:08:04 -07:00
Philip Rideout
ecede1e947
matdbg: fix 4x overallocation for SMOLV blobs
2022-06-30 12:06:53 -07:00
Philip Rideout
130053dfad
ImGuiHelper: add support for Y flip. ( #5748 )
...
Reflects a change from Betty and should be cherry picked to v1.23.3
Users could customize the ImGuiHelper camera, but they had no control
over the scissor coordinates. This allows them to use vertically flipped
coordinates, which, unfortunately, is required for MediaPipe
integration.
2022-06-30 12:04:39 -07:00
Philip Rideout
e3932f6e65
uberz tool: add --append and --template arguments. ( #5730 )
2022-06-23 13:01:48 -07:00
Philip Rideout
05792fa5f4
Speed up debug builds. ( #5735 )
2022-06-23 11:22:48 -07:00
daemyung jang
3469e9f4a8
Check the font path is the file ( #5734 )
...
If the font path is the directory then it's undefined behavior.
2022-06-23 09:29:50 -07:00
LaiJF
c839a66958
Fix typo ( #5728 )
2022-06-22 14:48:05 -07:00
Philip Rideout
31757203eb
Vulkan: fix VMA-related warning in GitHub builds. ( #5729 )
2022-06-22 14:41:48 -07:00
Philip Rideout
3f5ed476a6
Refactor the CMake script for gltfio ubershaders. ( #5725 )
2022-06-22 11:51:03 -07:00
Ben Doherty
97f8b8aa60
Vulkan: Support VMA_DYNAMIC_VULKAN_FUNCTIONS off ( #5726 )
2022-06-21 15:18:15 -07:00
Mathias Agopian
16af12b58c
vulkan: first instance should be 0 not 1
2022-06-17 13:02:41 -07:00
Philip Rideout
1b11c90f2b
Vk minor code cleanup.
2022-06-17 12:20:13 -07:00
Philip Rideout
3b71cb13b1
Quick repair to matdbg for alignment padding. ( #5717 )
...
This was too tricky, it highlights that we definitely need refactor this
to share code with the flattener / unflattener pipeline. I'll look at
that next.
2022-06-17 12:09:20 -07:00
Ben Doherty
439bcb59cf
OpenGL: take mip level into account when checking attachment sizes ( #5709 )
2022-06-17 12:04:28 -07:00
Ben Doherty
0e9cbeb340
Metal: correctly compute viewport ( #5710 )
2022-06-17 12:04:09 -07:00
Rahul Sheth
f48a02949c
Add EGL support for OpenGL on Linux ( #5674 )
2022-06-17 10:05:46 -07:00
Mathias Agopian
4eea8a5c07
fix the use of an uninitialized texture ( #5711 )
2022-06-17 09:57:25 -07:00
LaiJF
a9a420f0eb
Fix typo ( #5713 )
2022-06-16 20:56:14 -07:00
Ben Doherty
b90cf971d9
Update RELEASE_GUIDE with info on re-running
2022-06-16 13:25:06 -07:00
Philip Rideout
1ac57038d9
smolv blobs are now 8-byte aligned in filamat. (breaks materials) ( #5705 )
2022-06-16 11:23:52 -07:00
Philip Rideout
fe3be06c2c
Vk: remove slow allocations workaround, fix scaniverse models. ( #5708 )
...
The vkmemalloc performance workaround we implemented with #4128 for Mali
is no longer necessary. Removing this fixes #5432 .
2022-06-16 11:19:59 -07:00
Philip Rideout
1ff57e66aa
BlueVKDarwin: Simplify the build and loading process. ( #5701 )
...
* BlueVKDarwin: Simplify the build and loading process.
Some of our CMake logic was not necessary because we do not staticly
link against anything for Vulkan. All entry points are dynamically
loaded.
Some of the load-time code was also needlessly complicated. In fact the
ICD environment variable that we were setting is now deprecated.
I tested this PR with:
- macOS + June LunarG SDK
- Android on a Pixel 6
* Fix up, further simplification.
2022-06-15 16:08:34 -07:00
Philip Rideout
036c1706f5
Vk: set ENUMERATE_PORTABILITY_BIT for MoltenVK. ( #5699 )
...
This lets us avoid the following validation error.
Attempting to create a VkDevice from a VkPhysicalDevice which is
from a portability driver without the
VK_INSTANCE_CREATE_ENUMERATE_PORTABILITY_BIT_KHR bit in the
VkInstanceCreateInfo flags being set...
2022-06-15 16:08:14 -07:00
Philip Rideout
467f0acdb4
Vk: do not raise SIGINT for validation errors. ( #5700 )
...
This was occasionally useful for debugging specific problems, but it is
much too intrusive to enable in all debug builds.
2022-06-15 16:07:58 -07:00
Philip Rideout
c910cab7a3
Fix bitrot in sample-page-curl ( #5703 )
2022-06-15 15:14:18 -07:00
Philip Rideout
74346d0046
Update instructions for Vulkan + macOS. ( #5693 )
2022-06-15 11:50:33 -07:00
Benjamin Doherty
eceb72f609
Release Filament 1.23.2
2022-06-15 11:48:40 -07:00
Ben Doherty
aad782a15f
NoopDriver: return unique handles ( #5697 )
2022-06-15 11:28:41 -07:00
Philip Rideout
378600dc79
Update BlueVK and use Python 3. ( #5698 )
...
This will allow us to fix the validation error related to
VK_KHR_portability_enumeration.
Also, macOS comes with Python 3 nowadays so we're upgrading the script
from Python 2.
2022-06-15 10:59:00 -07:00
Philip Rideout
d4cc63f120
Fix warning.
2022-06-14 17:04:14 -07:00
Philip Rideout
b99fd143f2
Vulkan: fix ReadPixels with 2-component formats. ( #5692 )
...
This fixes the OOB seen with picking.
2022-06-14 16:39:50 -07:00
Philip Rideout
8c74430466
Upgrade vkmemalloc from 2.3.0 to 3.0.1 ( #5691 )
2022-06-14 14:38:55 -07:00
Philip Rideout
fc9608a392
Vulkan: check for OUT_OF_DEVICE_MEMORY. ( #5690 )
...
Related to #5432 .
2022-06-14 12:15:39 -07:00
Mathias Agopian
ad731aebcb
fix getInstanceIndex()
...
it would be initialized after user material code was called.
2022-06-14 12:01:23 -07:00
Philip Rideout
15406825aa
Update cgltf, remove a morphing constraint. ( #5688 )
...
Fixes #5670 .
2022-06-14 10:53:45 -07:00
Mathias Agopian
1e17afbefa
small optimization that helps avoid bindUniformBufferRange calls
...
a lot of primitive may use the same UBO slot, if they happen to be
in a sequence, we don't need to rebind the UBO.
2022-06-14 10:24:41 -07:00