* Initial post processing render pass implementation
* Got shadows with directional lights working good enough
* Make the shadows more configurable
* Trying to reduce peter panning
* Add licence
* banned banned_keywords_check
* trying to remove renderStateSet memory leak
* removing include <Qt3DExtras>
* Add documentation
* remove the use of setFilterMode when using QFilterLayer
* Fixing docs
* Fix shadow rendering checkbox
* Added y coordinates for view extent
* Added shadow bias parameter
* Added shadow map texture resolution parameter
* Addressing reviews
* Set the shadow rendering parameters automatically
* Add QLayer components individually if QT_VERSION < QT_5_10
* Hide depth texture preview quad
* Remove unused member
* Fix spell check
* Remove stepType property from shadowBiasSpinBox
* Disable shadow render pass if the shadow rendering is not activated
* Clarify maximum shadow rendering distance documentation
* Add value range for shadow bias
* Delete .bom file
* Clarify the usefullness of maximum shadow rendering distance
* remove unused stuff in shaders
* Make the inverted camera matrices passed as parameters
* Move post processing shaders parameters into the post processing entity constructor
* refactor how shadow rendering update into 1 function
* Fix spelling
* Fix Save As Image tool
* Improve UI according to suggessions
* add missing docs
* remove QAbstractSpinBox::DefaultStepType
From the qt docs:
"The Gooch lighting model uses both color and brightness to help show the
curvature of 3D surfaces. This is often better than models such as Phong
that rely purely upon changes in brightness. In situations such as in CAD
and CAM applications where photorealism is not a goal, the Gooch shading
model in conjunction with some kind of silhouette edge inking is a popular
solution.
The Gooch lighting model is explained fully in the original Gooch paper.
The Gooch model mixes a diffuse object color with a user-provided cool
color and warm color to produce the end points of a color ramp that is
used to shade the object based upon the cosine of the angle between the
vector from the fragment to the light source and the fragment's normal
vector. Optionally, a specular highlight can be added on top. The
relative contributions to the cool and warm colors by the diffuse color
are controlled by the alpha and beta properties respecitvely."""
The TLDR: the shader works well for revealing 3d details of objects
which may otherwise be hidden due to the scene's lighting. Ultimately,
it's an easier material to work with as you don't need to worry
about setting up appropriate scene lighting in order to visualise features.
Restrict choice of material in widgets based on the symbol's required technique,
and hide material settings in phong widget which don't apply to certain
rendering techniques (e.g. hiding all but the ambient color for simple 3d line
symbols)
for specifying terrain layers to render
Previously the one method was used for both, which made it very
difficult to have a different set of layers used for terrain
generation vs 3d entity generation (you had to manually create a map
theme, which is very messy)
If enabled, shows a sphere at light source origins, allowing easier repositioning
and placement of light sources relative to the scene contents
Fixes#37726
Seperate the calls for whether a user has enabled diffuse texture
from API for determining whether diffuse texture should be used during
rendering. And don't try to use diffuse textures when the texture
path hasn't yet been set, which causes a flood of Qt warnings...
* [Feature] texturing support for vector layer
* Fixed tesselation test not passing issue
* Fixed diffuse_texture_path typo
* Refactoring according to code review
* [Bugfix] the texture coordinates are not setup properly for certain walls
* Added seperation between roofs and walls
* [Feature] texture coordinates rotation
* took back the seperation of texture rotation between walls and roofs because the user will be specifying them with different symbols anyway
* Fixed docs test not passing issue
* Fixed compilation problem
* Fixed compilation problem
* Executed sipify_all trying to fix test not passing issue
* [ui] Harmonize play button across the board
* [ui] Better network logger icon
* [ui] Harmonize loop widget of 3D map view
* [ui] Add a record icon and use it in the network logger panel
* [ui] Move icon-less network logger toolbar actions under settings menu
* [ui] Reflect playback stay in the 3D map view's play button
* Fix azure
* Use prefix increment operator to fix cppcheck warnings related to postfixOperator
* [afs] Read field aliases from layer definition
* Fix ui build warning
* [FEATURE][processing] Add modeler algorithm to set a project expression variable
Allows a model to set Project-level expression variables during execution. Especially
useful with the new Export Print Layout algorithms to allow models which dynamically set variables
used in a layout prior to export.
* Add test
* Refactoring according to code review
Co-authored-by: nirvn <nirvn.asia@gmail.com>
Co-authored-by: Even Rouault <even.rouault@spatialys.com>
Co-authored-by: Nyall Dawson <nyall.dawson@gmail.com>