Skip to content

Commit

Permalink
Update v1.9.8 (#2)
Browse files Browse the repository at this point in the history
* hunter v1.9.5

* remove defaults packages

* missing packages

* fix matdbg

* USe -fno-buildin for GNU and CLANG

* update packages

* Vulkan: add missing field to VmaVulkanFunctions.

* Add subpass parameter type to materials (google#3193)

* Fix TypeScript binding for TextureUsage.

* Add Dockerfile and test script for SwiftShader.

This adds a Dockerfile and a new bash script that makes it
east to invoke the appopriate Docker commands.

This does not yet enable a GitHub Action because of intermittent
issues that we have not yet ironed out.

* Add ability to specify post-process material output location (google#3205)

* Vulkan: improve the ReadPixels implementation.

This adds support for more format conversions and removes a bogus
assert that prevented ReadPixels within beginFrame / endFrame.
This was tested with:

    backend_test_mac --api vulkan --gtest_filter=BackendTest.ReadPixels

* Allow test_ReadPixels with SwiftShader.

* Vulkan: ReadPixels y-flip workaround.

* Makes it possible to have multiple instances of ImGuiHelper at the same time

This change fixes an issue where ImGuiHelper would crash on destruction if you created more than one instance at the same time.

This crash occurred when ImGui::DestroyContext() was called, because when the second instance was destroyed there was no current context causing it to crash.

This fixes it by making ImGuiHelper store and manage it's own context.

Having two instances of ImGuiHelper is useful in cases where you want to use imgui with multiple views.

* Vulkan: fix thread safety regression in Disposer.

This fixes a regression introduced by 548b28c manifesting as
intermittent assertions. The VulkanDisposer gc() should only be called
from the driver thread.

* Vulkan: Improve refcounting for vertex buffers.

This avoids the following validation error when clients create then
immediately destroy vertex buffers, index buffers, and uniform buffers.

        VUID-vkDestroyBuffer-buffer-00922

        Cannot free VkBuffer that is in use by a command buffer.

Buffers that are used across multiple frames were fine, but
create-and-destroy scenarios were problematic.

* Vulkan: fix leak with headless swap chain.

* Vulkan: fix destroy-while-used for UBOs.

* Fix Windows build.

* PlatformVkLinux now supports all combos of XLIB and XCB.

You can now build Filament with support for both X11 APIs, or neither.
If both are supported, run-time selection is achieved using a SwapChain
flag.

Supporting only one API at build time (or neither) is useful because our
list of "required" VkInstance extensions can vary according to which
API's are supported. During VkInstance creation, we do not have a priori
knowledge about what kinds of swap chains will be created. (headless vs
non-headless, XCB vs XLIB, etc)

Note that some Vulkan implementation (e.g. some builds of SwiftShader)
only support XCB.

* Add PNG output to test_ReadPixels.

* Merge duplicated implementations of toLinear().

* Fix iOS build break.

* Vulkan: make ReadPixels synchronous.

This makes it so that the PixelBufferDescriptor callback triggers at a
time consistent with other backends.

ReadPixels is still asynchronous in the sense that the callback is
triggered on the main thread. However, it is now guaranteed to trigger
during (or before) flushAndWait(), which is less surprising behavior.

* Vulkan: warn instead of panic for sampler overflow.

This makes behavior in release builds similar to the OpenGL backend.

In debug builds, we will still assert.

* Update RELEASE_NOTES for 1.9.6

* Bump version to 1.9.7

* Update RELEASE_NOTES for 1.9.7

* Version update

* update hunter version

* add opengl

* remove opengl

* Windows fixes (#1)

* Fix getopt (#2)

* fix linux build

* fix osx build

* civetweb 1.13

* update version

* add hunter mat tools flag

* remove civetweb from config

* revert civetweb

* add SPIRV-Tools-opt in config

* Update filament-hunter-config.cmake.in

* Update filament-hunter-config.cmake.in

* fix java, don't include 3rd party license

* Add cmake vars in config.cmake

* update cmake config

* fix java, don't include 3rd party license

* Add cmake vars in config.cmake

* update cmake config

Co-authored-by: Eli Semory <elisemory@snap.com>
Co-authored-by: Philip Rideout <philiprideout@gmail.com>
Co-authored-by: Ben Doherty <bendoherty@google.com>
Co-authored-by: dsternfeld7 <dsternfeld@google.com>
Co-authored-by: Rahul Sheth <rbsheth@cs.stanford.edu>
Co-authored-by: Rahul Sheth <rahul@snap.com>
  • Loading branch information
7 people authored Nov 13, 2020
1 parent 7530921 commit 8ed0ff0
Show file tree
Hide file tree
Showing 2 changed files with 38 additions and 20 deletions.
12 changes: 9 additions & 3 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -527,6 +527,10 @@ endif()
## The MSVC compiler has a limitation on literal string length which is reached when all the
## licenses are concatenated together into a large string... so split them into multiple strings.
function(list_licenses OUTPUT MODULES)
if(HUNTER_ENABLED)
configure_file(${FILAMENT}/build/licenses.inc.in ${OUTPUT})
return()
endif()
set(STR_OPENER "R\"FILAMENT__(")
set(STR_CLOSER ")FILAMENT__\"")
set(CONTENT)
Expand Down Expand Up @@ -772,9 +776,11 @@ if (IS_HOST_PLATFORM)
add_subdirectory(${LIBRARIES}/imageio)
add_subdirectory(${LIBRARIES}/viewer)

add_subdirectory(${FILAMENT}/java/filamat)
add_subdirectory(${FILAMENT}/java/filament)
add_subdirectory(${FILAMENT}/java/gltfio)
if(FILAMENT_ENABLE_JAVA)
add_subdirectory(${FILAMENT}/java/filamat)
add_subdirectory(${FILAMENT}/java/filament)
add_subdirectory(${FILAMENT}/java/gltfio)
endif()

add_subdirectory(${FILAMENT}/samples)
if(NOT HUNTER_ENABLED)
Expand Down
46 changes: 29 additions & 17 deletions cmake/filament-hunter-config.cmake.in
Original file line number Diff line number Diff line change
@@ -1,30 +1,42 @@
@PACKAGE_INIT@

find_package(stb CONFIG REQUIRED)
find_package(GTest CONFIG REQUIRED)
find_package(tsl_hat_trie CONFIG REQUIRED)
find_package(tsl-robin-map CONFIG REQUIRED)
find_package(smol-v CONFIG REQUIRED)
find_package(benchmark CONFIG REQUIRED)
find_package(draco CONFIG REQUIRED)
find_package(GTest CONFIG REQUIRED)
find_package(glslang CONFIG REQUIRED)
find_package(SPIRV-Headers CONFIG REQUIRED)
find_package(SPIRV-Tools CONFIG REQUIRED)
find_package(SPIRV-Tools-opt CONFIG REQUIRED)
find_package(meshoptimizer CONFIG REQUIRED)
find_package(spirv_cross_core CONFIG REQUIRED)
find_package(spirv_cross_glsl CONFIG REQUIRED)
find_package(spirv_cross_msl CONFIG REQUIRED)
find_package(astc-encoder CONFIG REQUIRED)
find_package(etc2comp CONFIG REQUIRED)
find_package(Assimp CONFIG REQUIRED)
find_package(PNG CONFIG REQUIRED)
find_package(SDL2 CONFIG REQUIRED)
find_package(ZLIB CONFIG REQUIRED)
find_package(tinyexr CONFIG REQUIRED)
find_package(cgltf CONFIG REQUIRED)
find_package(draco CONFIG REQUIRED)
find_package(stb CONFIG REQUIRED)
if(MSVC)
find_package(getopt CONFIG REQUIRED)
endif()
if (@IS_HOST_PLATFORM@)
find_package(astc-encoder CONFIG REQUIRED)
find_package(etc2comp CONFIG REQUIRED)
find_package(imgui CONFIG REQUIRED)
find_package(Assimp CONFIG REQUIRED)
find_package(jsmn CONFIG REQUIRED)
find_package(PNG CONFIG REQUIRED)
find_package(SDL2 CONFIG REQUIRED)
find_package(ZLIB CONFIG REQUIRED)
find_package(tinyexr CONFIG REQUIRED)
endif()

if (@FILAMENT_BUILD_FILAMAT@ OR @IS_HOST_PLATFORM@)
find_package(SPIRV-Tools CONFIG REQUIRED)
find_package(SPIRV-Tools-opt CONFIG REQUIRED)
find_package(glslang CONFIG REQUIRED)
find_package(spirv_cross_core CONFIG REQUIRED)
find_package(spirv_cross_glsl CONFIG REQUIRED)
find_package(spirv_cross_msl CONFIG REQUIRED)
if (@FILAMENT_ENABLE_MATDBG@ OR @IS_HOST_PLATFORM@)
if (NOT @HUNTER_FILAMENT_DISABLE_MATTOOLS@)
find_package(civetweb CONFIG REQUIRED)
endif()
endif()
endif()

include("${CMAKE_CURRENT_LIST_DIR}/@TARGETS_EXPORT_NAME@.cmake")
check_required_components("@PROJECT_NAME@")

0 comments on commit 8ed0ff0

Please sign in to comment.