| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
Change-Id: Ie7f469278b0a74b4c059ad99ad182059c6752cd8
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
|
|
|
|
|
| |
Change-Id: I5ac330462bf051285dafbfa4554aa97e6657ac65
Reviewed-by: Mike Krus <mike.krus@kdab.com>
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
|
|
|
|
|
|
|
|
| |
This commit introduces a new layered graph file to deal with all the
Phong material variations. It ports all the materials to using it, then
of course it removes all the old frag implementations.
Change-Id: Ia519eaf4cea3b6e3ff4dd5aa1cca2bedbfcbe7cb
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
|
|
|
|
| |
Makes it cleaner overall since the light structs were shared with the
metalrough includes and the gooch fragment shader but they didn't use
the functions in there.
Change-Id: I459ff0fc2d751a5be9296dc33dda0efcb06b917c
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
|
|
|
|
| |
We currently do a bit more work than strictly needed in some cases, but
that will change later on when this shader is converted into a graph.
Changing now will make this future refactoring easier.
Change-Id: I887601c18575bef79e25a23ed054aa336b1e860a
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
|
|
|
| |
They are identical to their non-alpha counterparts at that point, so no
need to keep them around.
Change-Id: Ia3961670dc1d5c0f65711476c8dc6cc467df62c5
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
All materials and examples are ported away from it. It was really not
related to normal mapping at all, somehow it was an implementation of
adsModel working in tangent space instead of world space.
Now we got it all in world space, just like for the metal/rough
implementation.
Change-Id: I3346277ce9b91328d70d914b319ac25f947fff0e
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Both QMetalRoughMaterial and QTexturedMetalRoughMaterial use the same
graph now. Also QMetalRoughMaterial does the job to be clever and
activate the right layers depending on the type set on the properties
(which is why they are now all variants).
QMetalRoughMaterial can then be used as a drop in replacement for
QTexturedMetalRoughMaterial.
Change-Id: Ia52fe4608aca5558642599ed435f3cd9ac93e651
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This allows to validate the approach with a couple of functioning
materials using the new shader generation system. Also allows to have a
few prototypes in the default set of nodes.
Clearly the system is still cumbersome to use as can be seen from the
multiplication of prototypes, we shall improve that next by allowing
more expressivity in the graph JSON to allow more control (clearly
telling on the uniforms, return type for the functions, etc.).
Change-Id: I3edfef65af288faa339661f20d5e640cf00e9234
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
src/extras/defaults/defaults.pri
src/extras/extras.qrc
src/quick3d/imports/extras/importsextras.pro
src/quick3d/imports/extras/qt3dquick3dextrasplugin.cpp
src/quick3d/quick3dextras/items/items.pri
src/quick3d/quick3dextras/quick3dextras.pro
tests/manual/manual.pro
Change-Id: I62232cb21495612f31f48a6749a52b68777c4ae3
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Modded assimp loader to load animations and to load submeshes into child
entities. Added keyframeanimation for node animations and morphing mesh.
Also added animation group for controlling multiple nodes as one animation
and animation controller to select and play animations.
Assimp loader adds QKeyFrameAnimations targeting an entity as child
objects of that entity, the QAnimationController finds them when the entity
is set and creates QAnimationGroups from based on the animation name.
Change-Id: I7e2e7a4479af49f8023b4a359b2b3118efdaa0da
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Second material using PBR. Still uses environment maps and ignores
regular lights but provide a plain color variant of the material.
Change-Id: Ica2045826f6efdc804240709154b6822b89f4417
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
One QDistanceFieldMaterial will have to be created for each distinct
texture atlas that is used to store the glyphs of fonts.
The smaller the glyphs are in pixel space (i.e. the more texels per
pixel), the smoother we render the threshold between inside-glyph
and outside-glyph. We measure the size of the glyph by taking
the per-fragment delta of the texture coordinates. This is to reduce
aiasing as much as possible without resorting to screen-space AA
techniques.
The same method is used in the QtQuick renderer, but here in this case
we allow a much smoother threshold for small glyphs.
Change-Id: I6632e7e1da31126c84f5bd2b4a4498377bdad79e
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is a first implementation which only exploits environment maps for
lighting. It still needs to interact with the lights coming from Qt 3D
API.
It also provided a fully texture map based material.
Improvements and plain colors variant of the material will come in later
commits.
Change-Id: Ifc6079e5c40484b6daac05692780495013b7c401
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
QBoundingVolumeDebug has been disabled for now. Will be re-enabled later on.
Change-Id: Id6b0abab2ec2aa697330bd20d782f9d104d25d50
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|