Commit Graph
54 Commits
Author SHA1 Message Date
Philip Rideout 03161226f2 Update MoltenVK and tweak queue selection strategy.
These changes are sufficient to resurrect Vulkan-on-macOS, at least for
the vk_hellopbr sample.
2019-01-18 12:21:50 -08:00
Philip Rideout 749817b64b Add the official TypeScript annotations for gl-matrix to third_party.
Filament supports (but does not require) gl-matrix, and our TypeScript
annotations will need to use this file to support clients that use
gl-matrix.
2019-01-15 23:22:06 +05:30
Romain Guy fac084dfdf Update Markdeep to latest version (2018/12) 2019-01-14 15:53:14 -08:00
Philip Rideout 8228deb209 Add a multi-material model and JS demo.
This is a more complex test than suzanne because it has multiple
materials and exercises the named materials functionality in
loadFilamesh.

This also exercises our glTF-to-Filamesh pipeline at build time.

See issue #663
2019-01-11 09:18:41 +05:30
Philip Rideout 422bf8631b Small assimp fixups for glTF => filamesh conversion.
This fixes some crashes when trying to convert CesiumMilkTruck.
2019-01-09 07:57:41 +05:30
Romain Guy eaf790aaa7 Improve rendering to TextureView (#635)
* Improve rendering to TextureView

UiHelper wasn't calling the resize callback at init time when attaching
to a TextureView, but it was for a SurfaceView. This makes both code
paths consistent and fixes the standard samples if they are modified to
render to a TextureView.

This change also adds a new sample app that shows how to render into
a TextureView.

* Suppress warning

* Suppress another warning
2018-12-13 15:57:15 -08:00
Romain Guy 866c694977 Fix Linux build 2018-12-07 16:33:06 -08:00
Romain Guy 5bbdc673f2 Remove CMake warning 2018-12-07 15:11:24 -08:00
Philip Rideout c9752d8310 Update zeux/meshoptimizer 2018-12-06 13:33:22 -08:00
Benjamin Doherty 79764e7e02 Use -mssse3 flag with clang-cl 2018-12-06 13:33:22 -08:00
Philip Rideout 33383ab7fb Update zeux/meshoptimizer 2018-12-06 13:33:22 -08:00
Philip Rideout ff2da6e3b4 Add zeux/meshoptimizer to third_party.
This also adds it as a dependency to filameshio. This does not seem to
increase the size of the WebGL build even though filameshio is a
dependency, perhaps because we are not using it yet.
2018-12-04 16:36:56 -08:00
Romain Guy f8ac76f62a Fix typo in CMakeLists for glslang 2018-12-04 16:26:49 -08:00
magicwhale 8aa52575fa updated assimp (#577) 2018-12-04 13:46:32 -08:00
Romain Guy aee644dc97 Turn *off* the warning 2018-12-01 13:49:51 -08:00
Ben Doherty 0548b28535 Update glslang (#526)
* Update glslang

* Update builtinResource

* Add glslang update README
2018-11-27 09:52:03 -08:00
Philip Rideout 19026931a4 Fix Android warning. 2018-11-26 16:55:34 -08:00
Pixelflinger 80aa9964f5 Add google benchmark to the build 2018-11-26 11:51:17 -08:00
Pixelflinger 417d606e5b fix google benchmark README so it works in CLion 2018-11-26 11:51:17 -08:00
Pixelflinger 42a55d3b08 fix google benchmark build for ANDROID SDK < 29 2018-11-26 11:51:17 -08:00
Pixelflinger 6a38c8fde6 fix google benchmark with emscripten (workaround) 2018-11-26 11:51:17 -08:00
Pixelflinger 89f739fd06 add google benchmark library 2018-11-26 11:51:17 -08:00
Ben Doherty 86fb7b4524 Compile filamat and dependencies for all platforms (#506)
* Compile filamat and dependencies for all platforms

* Describe changes made to CMakeLists
2018-11-20 15:31:16 -08:00
magicwhale 1d392d38bd updated assimp 2018-11-19 09:27:08 -08:00
Philip Rideout b2a2da532a Fix Android-with-Vulkan build. 2018-11-16 12:07:23 -08:00
Philip Rideout e3a20e0dfe Fix Linux build failure. 2018-11-16 12:07:23 -08:00
Philip Rideout 55eaad9450 Add smol-v to third_party.
Since we use this for decoding, this adds a dependency to the core
filament renderer which in practice is only used for Vulkan. However
this is a tiny library, so it's simplest just to always include it.

The next PR will add the actual compression / decompression code to
filaflat and filamat. Here are the preliminary results.

   102K =>  29K  aiDefaultMat.filamat
   102K =>  29K  aiDefaultTrans.filamat
    21K => 5.0K  bakedColor.filamat
    22K => 5.2K  bakedTexture.filamat
    21K => 5.0K  depthVisualizer.filamat
    40K =>  10K  groundShadow.filamat
   102K =>  29K  sandboxCloth.filamat
   125K =>  36K  sandboxLit.filamat
   126K =>  36K  sandboxLitFade.filamat
   126K =>  36K  sandboxLitTransparent.filamat
   109K =>  31K  sandboxSubsurface.filamat
    21K => 4.9K  sandboxUnlit.filamat
    21K => 4.9K  transparentColor.filamat

Both the "before" and "after" numbers are excluding non-Vulkan targets,
and I also changed our CMakeLists to build filamat instead of inc.
2018-11-15 16:55:40 -08:00
Ben Doherty 29119c7248 Add iOS support to Filament (#360) 2018-10-18 12:42:13 -07:00
Philip Rideout d15e275de0 Add glMatrix to third_party.
Some of our web tests and demos will make use of this library, and it's
useful to leverage a local copy instead of a CDN during development.
2018-10-17 09:57:08 -07:00
Philip Rideout 8e9ef497f6 Fix Linux build of etc2comp. 2018-10-02 12:32:23 -07:00
Philip Rideout 70a4c4f887 Add etc2comp to third_party. 2018-10-02 12:32:23 -07:00
Philip Rideout 33e0e34aa4 Remove STB dependency from astcenc.
We give the encoder raw RGB data, so there's no reason to use its STB
functionality. This shrinks the lib footprint by a small amount.
2018-09-28 16:33:41 -07:00
Philip Rideout ec31a55094 Add astcenc from ARM to third_party.
This was designed as a standalone tool rather than a library, so we are
renaming their "main" function to "standalone_main", which is described
in the tnt README.

We'll also be adding a wrapper to our imageio library.
2018-09-28 09:42:09 -07:00
Pixelflinger 09830cd126 Improvements to CMGEN handling of cubemaps
- cmgen now creates reflections maps for all input
assets by default instead of just for equirectangular 
images.

- equirectangular decode doesn't mirror -- that's
done by the mirroring code now.

- mirroring can be turned of with --no-mirror

- option --mirror is gone

- faster mirroring code (do it before generating
  mipmaps)

- added labels to faces of debug.png environment

- added a debug equirectangular image in third_party
(creative commons license)
2018-09-21 11:50:29 -07:00
Romain Guy 4c3b9b2fee Remove assert for tiled images (#198)
They are now properly supported
2018-09-04 10:21:12 -07:00
Sergey 2dd98893f8 Enable DPI awareness in Windows (#193) 2018-09-04 10:03:30 -07:00
Romain Guy 4eb2c16ad6 Update TinyEXR (#197) 2018-09-04 10:02:48 -07:00
Romain Guy 4002498438 Add new HDR environment maps in third_party (#182)
These are much better than the ones we had in assets/
2018-08-29 14:22:58 -07:00
Philip Rideout 4665805d81 Minor improvements to EXR decoding. (#177)
See also #176.

This closes #166.
2018-08-28 14:38:54 -07:00
Romain Guy ac70617f12 Update spirv-tools (#136)
This completely gets rid of unnecessary highp qualifiers in optimized GLSL code.
2018-08-24 10:24:48 -07:00
Philip Rideout 7fff7d715f Update VkMemAlloc and fix its usage. (#126)
This implements the following suggestions from Adam Sawicki:

(1) Update VkMemAlloc to dev branch.
(2) Use VMA_MEMORY_USAGE_CPU_ONLY in the stage pool.
(2) Add vmaFlush after every vmaUnmap.

We also considered removing Map / Unmap in favor of persistent mapping
via VMA_ALLOCATION_CREATE_MAPPED_BIT, but decided to be conservative
until we have a chance to rethink our UBO update strategy.

Closes #19
2018-08-23 10:20:12 -07:00
Romain Guy 9f2592ed9d Update SPIRV libraries (#99)
* Update SPIRV libraries

- Update `spirv-cross`
- Update `spirv-tools`
- Update `glslang`

`spirv-tools` contains a fix for an issue we reported (unnecessary promotions to highp in certain expressions).

* Add SPIRV-Tools dependency to matinfo
2018-08-15 12:59:17 -07:00
shartte e6d5a85ec8 clang-cl warning fixes (#83)
* Disable certain MSVC-specific deprecation warnings

* clang-cl.exe warning fixes
2018-08-14 12:55:04 -07:00
Romain Guy e5535c7a66 Rg/less warnings (#60)
* Fix warnings for real this time
2018-08-09 14:16:10 -07:00
Ben Doherty 714e0c18e0 Fix build error on Windows 2018-08-09 13:26:44 -07:00
Romain Guy 69941a2795 Remove warnings on Darwin and Linux (#59) 2018-08-09 11:39:15 -07:00
Ben Doherty b0ab4c7321 Fix various compiler warnings on Windows (#56) 2018-08-09 10:27:43 -07:00
Ben Doherty b8a2457e28 Revert "Don't require Python to build (#51) (#55) 2018-08-09 09:53:35 -07:00
Romain Guy 9ee46fa8cf Don't require Python to build (#51)
Fixes #50
2018-08-08 12:57:22 -07:00
Romain Guy 294bc98940 Make spirv-tools more quiet (#46)
We don't need the pkg-config step of spirv-tools' build configuration. Let's turn this off to keep the build quiet when nothing has changed.
2018-08-08 09:46:22 -07:00