Commit Graph

1102 Commits

Author SHA1 Message Date
Philip Rideout
e3e7073f74 gltf_viewer: add support for drag-and-drop.
You can now drop gltf or glb files into the app.

Note that we will soon be migrating from SDL to GLFW, which also
has support for drag-and-drop.
2019-03-14 10:06:44 -07:00
heitaoflower
fbcdcc24af Modify incorrect static format (#979) 2019-03-14 07:38:32 -07:00
Philip Rideout
cc3177ce34 gltf_viewer: fix indirect light controls. 2019-03-13 17:12:58 -07:00
Philip Rideout
c97e812056 Update FlightHelmet path. 2019-03-13 16:21:58 -07:00
Philip Rideout
7bc6b3c818 Replace gltf_viewer and introduce gltfio::SimpleViewer.
The new gltf_viewer app has an optional zero-arguments mode whereby it
loads a resgen-embedded binary model, which is useful for quick
sanity testing. If you don't specify an IBL, it loads a compressed
version of the pillars IBL.
2019-03-13 16:21:58 -07:00
Romain Guy
583bfa54d9 Add NDK version check 2019-03-13 14:29:44 -07:00
Mathias Agopian
a8a37a537a simplify a lot libibl's Image class sceneform-1.9pr1 2019-03-13 13:45:43 -07:00
Mathias Agopian
13d3ade5bb libibl doesn't need to depend on libimage 2019-03-13 13:45:43 -07:00
Mathias Agopian
54d292bc8a move all libibl APIs in namespace filament::ibl 2019-03-12 22:36:54 -07:00
Mathias Agopian
43ac656a38 Cleanup libibl a bit. Add some basic documentation. 2019-03-12 22:36:54 -07:00
Mathias Agopian
f8fc2dd808 split cmgen into an exe + libibl.a 2019-03-12 22:36:54 -07:00
Mathias Agopian
529c44e548 cleanup cmgen in praparation of lib split
we mostly remove dependencies on includes.
2019-03-12 22:36:54 -07:00
Mathias Agopian
637390ea85 Update MaterialParser.cpp 2019-03-12 15:37:05 -07:00
Mathias Agopian
69db5134a6 simplify MaterialParser
no need to hide the implementation anymore, since the whole thing
is internal and doesn't appear in public headers.

this saves a dynamic allocation when unflattening materials.
2019-03-12 15:37:05 -07:00
Philip Rideout
0102489748 gltfio: add UbershaderLoader, an implemention of MaterialProvider. 2019-03-12 15:29:17 -07:00
Philip Rideout
3b827da834 geometry: add JS bindings for SurfaceOrientation
These bindings are not user friendly because clients need to
manually allocate / deallocate memory. However it gets the job done.

Fixes #959.
2019-03-12 14:31:09 -07:00
Philip Rideout
ce50ea17c0 Avoid NaN when normal is colinear with fake axis.
I reproduced the issue by hacking our redball demo and visually
verified the fix.

cc @AdrianAtGoogle
2019-03-12 14:30:25 -07:00
Mathias Agopian
ca79e9d420 More doxygen documentation 2019-03-12 13:35:58 -07:00
Mathias Agopian
fb4e498bc1 fix documentation typos 2019-03-12 13:35:58 -07:00
Mathias Agopian
b44717ae54 Add doxygen documentation 2019-03-12 13:35:58 -07:00
Mathias Agopian
6e4491c852 Make dithering an enum. 2019-03-12 13:32:28 -07:00
Mathias Agopian
07bb62490b Add an option to turn dithering on/off 2019-03-12 13:32:28 -07:00
Romain Guy
b8f72590bb Fix Android builds on Windows (#968)
* Fix Android builds on Windows

This PR fixes #927

* Add missing endline

* Fix armv7a Android builds
2019-03-12 10:49:26 -07:00
Philip Rideout
39c63146e0 gltfio: add ubershader template.
We will need 6 pre-compiled materials (lit vs nonlit and the 3 blend
modes). This uses CMake's "configure_file" functionality to generate 6
mat files, then invokes matc on each one. They are then combined using
resgen.
2019-03-12 08:16:55 -07:00
Philip Rideout
960d1321e6 Repair web builds. 2019-03-11 18:36:29 -07:00
Mathias Agopian
8ffba072b2 remove the "byteSize" parameter from update[Vertex|Index]Buffer
It was redundant with BufferDescriptor::size.
2019-03-11 18:27:06 -07:00
Philip Rideout
031ff260f7 Repair web builds. 2019-03-11 17:44:12 -07:00
Mathias Agopian
c78db48b81 Better Camera component management
- getCameraComponent(Entity) retrieves a Camera component from an entity
- destroyCameraComponent(Entity) destroys just the camera component
  attached to an entity.

destroyCamera() are now deprecated because the API is confusing, it's
not immediately clear that it's destroying all component + the entity
itself.

Node: We don't add the corresponding Java APIs yet because there is no 
easy way to guarantee they're safe without making sure that 
getCameraComponent() will always return the same instance (which it
wouldn't currently).
2019-03-11 15:51:38 -07:00
Romain Guy
11eaad7992 Fix CI builds 2019-03-11 14:37:29 -07:00
Romain Guy
eda6ea64c8 Require CMake 3.10 2019-03-11 14:32:50 -07:00
Romain Guy
79dec2f8b5 Give our own CMake a higher priority 2019-03-11 14:28:26 -07:00
Romain Guy
41397e1b82 Move 3p models to models/ directory 2019-03-11 14:21:51 -07:00
Romain Guy
31a70d2352 Print CMake version number 2019-03-11 14:14:09 -07:00
Romain Guy
98ce5e2f5a Require CMake 3.12 because of CI 2019-03-11 14:07:13 -07:00
Romain Guy
9d8c000bcc Make CMake 3.13 the minimum version 2019-03-11 14:05:45 -07:00
Romain Guy
d238d7f6f2 Add CMake version check 2019-03-11 14:03:05 -07:00
Romain Guy
73af2620f9 Cleanup build.sh 2019-03-11 14:02:56 -07:00
yoshi (Yoshihisa Kaino)
160297db9c Fix Activate link #957 (#958) 2019-03-11 07:45:46 -07:00
Philip Rideout
8628c43fbf gltfio: material generator cleanup. 2019-03-10 15:11:58 -07:00
Philip Rideout
af9b3a99e0 gltfio: introduce MaterialProvider interface.
This prepares for an alternate "sans filamat" implementation of
MaterialProvider, which will be especially useful for web.
2019-03-10 11:59:47 -07:00
Philip Rideout
7a2924738c gltfio: transparency fixups
- rename gltfio::AlphaMode to use glTF nomenclature
- keep depth writes enabled for transparent renderables
2019-03-09 18:58:04 -08:00
Philip Rideout
06964a787a Repair parquet and helmet web demos. 2019-03-09 06:39:31 -08:00
Romain Guy
2e8c01d8aa Update README.md per #946 2019-03-08 23:11:29 -08:00
Mathias Agopian
b2738a2c8c Don't expose private structure in public header 2019-03-08 19:16:46 -08:00
Philip Rideout
0e4ca0bc7b Fix falling streetcar / quaternion slerp. 2019-03-08 17:50:15 -08:00
Philip Rideout
64f2a580da Update public site with latest JavaScript demos.
It has been a while, we've made a fix to our KTX writer, added a helmet
demo, etc.
2019-03-08 17:49:28 -08:00
Philip Rideout
f1f9fde3a4 Various JavaScript updates.
Add shadows to the FlightHelmet demo, add a link to it on the site,
and add recently-introduced entry points to the JS bindings.
2019-03-08 12:56:48 -08:00
Philip Rideout
c98ac44827 gltfio: fix UV set issue seen in littlest_tokyo 2019-03-08 11:31:22 -08:00
Philip Rideout
3c2a6d5f8c Link to rasterized markdown on website. 2019-03-08 09:59:01 -08:00
Mathias Agopian
d5178f862a minor cleanup: remove unneeded complexity 2019-03-07 17:21:58 -08:00