Commit Graph
710 Commits
Author SHA1 Message Date
Philip Rideout 71e9c13b94 Add TypeScript annotations file (hand authored for now) 2018-12-06 15:43:11 -08:00
Romain Guy 2cdac665db Rename debug APIs 2018-12-06 14:23:20 -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 6f601e6021 Update KTX files and allow glFormat = LUMINANCE 2018-12-06 10:33:49 -08:00
Sebastian Hartte aaf2909194 Correctly set glTypeSize in the tools, and use sized formats for internalFormat 2018-12-06 10:33:49 -08:00
Sebastian Hartte 339483b8e2 Consider the correct KTX header attribute to determine the data format 2018-12-06 10:33:49 -08:00
Mathias Agopian 669c962d2b Fix CommandStream logging build 2018-12-06 08:53:48 -08:00
Sebastian Hartte cfa486275a Install the image library as well 2018-12-05 17:57:20 -08:00
Mathias Agopian c205499695 port filament_benchmark to google benchmark framework 2018-12-05 17:19:47 -08:00
Mathias Agopian 7ab25ff4a2 improve libmath benchmark 2018-12-05 17:19:47 -08:00
Philip Rideout 8bb68b3c55 Rename MeshIO class to MeshReader.
This makes the name symmetrical with MeshWriter.
2018-12-05 17:15:52 -08:00
Philip Rideout beaf751604 filamesh: Compress attributes individually.
This further reduces compressed suzanne from 333489 bytes to 272761.

Tested with vk_hellopbr and tutorial_suzanne.html

Issue #558
2018-12-05 17:15:52 -08:00
Philip Rideout 6c55b3b989 filamesh: Add support for COMPRESSION.
Note that the WebGL build uses filameshio, but Android does not. Our
Android samples therefore do not yet understand the compressed format.
For web, I measured the before / after:

```
BEFORE: filament.wasm = 505796, suzanne.filamesh = 521476
 AFTER: filament.wasm = 510915, suzanne.filamesh = 333489
```

Issue #558
2018-12-05 13:20:55 -08:00
magicwhale 27f8dbef21 Added support to gltf_viewer for multiple UV coordinates (#578)
gltf_viewer can now display models that use both UV0 and UV1 coordinates for textures.
2018-12-05 12:35:26 -08:00
Philip Rideout b4b12914a1 Add bitcast to utils. 2018-12-04 17:56:37 -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
Philip Rideout fff76bfa3e Resurrect the NOOP driver. 2018-12-04 14:34:16 -08:00
magicwhale 8aa52575fa updated assimp (#577) 2018-12-04 13:46:32 -08:00
Ben Doherty f05b2f47a8 Fix use of UV0 and UV1 coordinates (#576)
* Fix use of UV1

* Add a test case

* Spelling
2018-12-04 13:23:01 -08:00
Ben Doherty 2b6499fb18 Deprecate MaterialBuilder::postprocessor (#569)
* Deprecate postprocessor

* Remove unimplemented method
2018-12-04 10:11:52 -08:00
Philip Rideout 1ec037aeca filamesh: Remove duplicated code. 2018-12-03 14:18:12 -08:00
Philip Rideout a7d6af8d22 filamesh: Add support for TEXCOORD_SNORM16. 2018-12-03 14:18:12 -08:00
Philip Rideout 0af274fe0e filamesh: introduce MeshWriter class.
This simplifies main.cpp so that it only does assimp stuff.
2018-12-03 14:18:12 -08:00
गोपालः शर्माः 99301c6287 Fixed typo (#571)
* Removed extra slash

* Fixed typo
2018-12-03 12:30:55 -08:00
गोपालः शर्माः 97dfd1ea95 Removed extra slash (#570) 2018-12-03 12:13:41 -08:00
Mathias Agopian 6d68a4a4c6 libmath benchmarks 2018-12-03 11:58:30 -08:00
magicwhale b902a90285 Changed MeshAssimp to dynamically generate materials with filamat (#563) 2018-12-03 10:15:47 -08:00
Philip Rideout ab4e9b5787 Disable test_filameshio, it requires OpenGL. 2018-12-03 02:12:52 -08:00
Philip Rideout 6a82d942cf Fix typo in test_list.txt 2018-12-02 19:34:30 -08:00
Philip Rideout edda436405 Documentation for new filamesh flags, etc. 2018-12-02 16:46:31 -08:00
Philip Rideout 61992f556c Add unit test for filamesh.
The motivation behind a new regression test is the fact that we will
soon be adding compression features to filamesh.
2018-12-02 16:46:31 -08:00
Philip Rideout aa3a7085cc Factor out common filamesh / meshio code.
This creates a filamesh namespace and removes several duplicated
classes, including Box and filamesh::Header.
2018-12-02 16:46:31 -08:00
Romain Guy aee644dc97 Turn *off* the warning 2018-12-01 13:49:51 -08:00
Philip Rideout eb814a9ff2 Repair test_cmgen. 2018-11-30 18:02:00 -08:00
Philip Rideout 9192280339 KTX-ify some of our sample environments.
- Nuke office and desert
- Add pillars and venetian_crossroads
- Regenerate white_furnace
- Keep the diagnostic environments (uv2, uv8, and uv128) as-is
2018-11-30 17:15:10 -08:00
Romain Guy 79a2685f3c Update README.md 2018-11-30 17:01:04 -08:00
Philip Rideout af799e734a FilamentApp can now use KTX environments.
When cmgen creates ktx files, it creates a pair: one with an _ibl suffix
and one with _skybox. This convention is now honored by FilamentApp.

Note that we already have several KTX environments in the repo, so you
can clone a fresh repo and do:

  gltf_viewer --ibl={FILAMENT}/docs/webgl/pillars_2k DamagedHelmet.gltf

Note that we have several hundred files in samples/envs, we should
consider replacing those or copying the environments in docs/webgl
(which git would internally de-dup, due to content hashing).
sceneform-1.7pr1
2018-11-30 14:09:04 -08:00
Philip Rideout 7366bdb500 More KtxUtility improvements.
This makes it easier for C++ clients to use KTX files and simplifies
the JavaScript bindings.
2018-11-30 13:16:47 -08:00
Philip Rideout 5abd60fca5 Mipgen now creates the out dir if needed. 2018-11-30 13:16:47 -08:00
Romain Guy 533e260804 Remove obsolete samples (#559) 2018-11-29 17:40:05 -08:00
Philip Rideout 20680e8170 Improve resgen speed and avoid using static.
(1)
Generating the C file (only used for WebAssembly) causes slowness in the
build so this makes it into an option. Also, we were flushing too often,
which made it even slower.

(2)
Using "static" in a header was causing symbol duplication.
2018-11-29 17:21:27 -08:00
Romain Guy 9686647a2e Add the ability to build several platforms, but not all (#557)
build.sh -p all builds everything which may be too much. -p now
accepts a list of platforms. For instance to build Android and
desktop:

./build.sh -p android,desktop release
2018-11-29 16:56:02 -08:00
Romain Guy bd0b752337 Add RenderQuality API (#555)
View::setRenderQuality gives the ability to control the rendering quality
of a given view. In particular this allows the app to lower the quality
of the HDR color buffer by using R11G11B10F instead of RGB(A)16F.
2018-11-29 16:55:36 -08:00
Philip Rideout da7dbbc04b Filamesh now creates the out dir if needed. 2018-11-29 16:41:09 -08:00
Philip Rideout bcfe03c8e1 KtxUtility improvements.
This makes it easier for C++ clients to use KTX files and simplifies
the JavaScript bindings.
2018-11-29 16:39:30 -08:00
Mathias Agopian e8895fee11 Add a binary search benchmark
this one basically shows that the stl is is a good as our "branch less"
versions. this is because clang generate branchless code in the end.
2018-11-29 11:44:52 -08:00
Mathias Agopian 42a3d5ea33 use utils::Mutex instead of std::mutex for Allocators locking policy
on Android it's about 2x faster and uses much less instructions, which
is better for i-cache pressure.
2018-11-29 11:44:52 -08:00