Commit Graph

1123 Commits

Author SHA1 Message Date
Romain Guy
2e22a26ca5 Fix filamat build (#1005)
Filamat public headers were including a private header. This PR fixes
this problem. It also forces filamat to always be compiled to avoid
breaking filamat without noticing. The flag `-l` is not available
anymore in build.sh as a result.
2019-03-18 18:40:48 -07:00
prideout
861a0bbb8f VulkanDriver: remove badly named "releaseCommandBuffer" 2019-03-18 14:59:38 -07:00
prideout
fe35a98c91 VulkanDriver: remove depth from SurfaceContext. 2019-03-18 14:59:38 -07:00
prideout
3b528263e5 VulkanDriver: introduce "work" command buffer. 2019-03-18 14:59:38 -07:00
Ben Doherty
54fe2a6f2e Add additional documentation on filamat flag for material builder sample (#1004) 2019-03-19 04:20:32 +09:00
Mathias Agopian
289b889a1a oops fix build, missed file.
remove dependency on JobSystem.h in public header
this should fix #995
2019-03-15 17:07:29 -07:00
Mathias Agopian
67743db2b7 Texture format must be specified in the framegraph
Eventually the framefraph will deduce some of these things automatically,
but for now, the texture format must be specified.

Also added a couple error checks in the gl backend.
2019-03-15 16:58:20 -07:00
Mathias Agopian
ea7e9556c0 don't re-resolve when blitting from multisample render target
when blitting from a multisample render target, we must use the 
resolved buffer (b/c resolve is always done in endRenderPass), currently
we were basically resolving twice.
2019-03-15 16:58:20 -07:00
Mathias Agopian
d25dd6234c remove dependency on JobSystem.h in public header
this should fix #995
2019-03-15 16:58:03 -07:00
Ben Doherty
38e08131bc Update libs/utils/include/utils/compiler.h
Co-Authored-By: pixelflinger <pixelflinger@gmail.com>
2019-03-15 15:42:28 -07:00
Mathias Agopian
5383174df4 Use proper "restrict" syntax on visual studio 2019-03-15 15:42:28 -07:00
Romain Guy
8a6881544f Fix Android samples (#993)
Fixes issue #992
2019-03-15 09:09:00 -07:00
Mathias Agopian
08457e1f16 Workaround a UBO/glFlush interaction on some GPUs
Some GPU seem to loose the content of UBOs for draw calls emitted 
before a glFlush followed by more draw calls.

On those GPUs, we just never call glFlush, which could result in
reduced parallelism between the cpu and gpu.
2019-03-14 22:31:05 -07:00
prideout
b4270909c4 Reduce watermark console spew. 2019-03-14 16:18:28 -07:00
Romain Guy
1c37eb37b6 Don't test an undeclared variable (#987) 2019-03-14 15:33:51 -07:00
Mathias Agopian
2f34f9f857 remove vector comparison operators
they're dangerous as they will make things like
std::min() work, but probably won't do the
right thing.
2019-03-14 13:13:57 -07:00
Mathias Agopian
ee28f0adac Fix #978 -- iOS samples don't build 2019-03-14 13:13:41 -07:00
Philip Rideout
df9791faaf gltf_viewer: add stats and view controls. 2019-03-14 12:18:56 -07:00
Romain Guy
6b39569c14 Defend against Windows' near/far defines (#985) 2019-03-14 11:49:43 -07:00
Romain Guy
82be8e1553 Fix min/max calls in Box::unionSelf (#984) 2019-03-14 11:26:33 -07:00
Philip Rideout
06850cf934 Add Engine::getBackend, fix gltf_viewer + Vulkan. 2019-03-14 10:55:08 -07:00
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