17 Commits

Author SHA1 Message Date
Nyall Dawson
ab2c55aac4 [qt6] Deal with the move of QBuffer/QGeometry/QAttribute from Qt3DRender to
Qt3DCore
2022-08-18 13:23:55 +10:00
Jean Felder
b69feb0817 qgsphongtexturedmaterialsettings: Add support for opacity
Qt3DRender::QTexture2D does not handle opacity. Therefore, it is not
possible to use the default Qt3DExtras::QDiffuseSpecularMaterial
implementation. This problem is solved by using
Qt3DRender::QMaterial and copying the
Qt3DExtras::QDiffuseSpecularMaterial shaders from Qt3D source
code. Then, the texture color needs to be changed to set the correct
opacity. This is achieved in the fragement shader:

```
vec4 diffuseTextureColor = vec4(texture(diffuseTexture, texCoord).rgb,
opacity);
```

instead of the default:

```
vec4 diffuseTextureColor = vec4(texture(diffuseTexture, texCoord));
```

As far as the FrameGraph is concerned, this is already handled in
Qgs3DMapScene::finalizeNewEntity which checks for all material which
have an effect with an opacity parameter.
2022-07-25 07:38:12 -07:00
Jean Felder
11bb812f7d qgsphongmaterialsettings: Fix setOpacity documentation 2022-07-19 08:04:39 -07:00
NEDJIMAbelgacem
e24f5cbbef Add transparency support for phong materials 2022-05-13 08:00:08 +02:00
Denis Rouzaud
ba8a445850 run sipify 2021-03-22 21:13:52 +01:00
Nyall Dawson
50b9beaad6 [sipify] Catch more class references and insert :py:class: annotations 2021-01-31 05:41:22 +10:00
vcloarec
8e4d9ca905 fix datadefined ui 2020-11-15 14:59:50 +10:00
Nyall Dawson
2dcbf95099 [3d] Add new material type "QgsNullMaterialSettings"
This is a "null" shading material which should be used when
rendering models or scenes with native textures and no material
should be explicitly set on the loaded entities.
2020-11-14 09:02:16 +10:00
Nyall Dawson
6224ea9b1c Add new 3d rendering technique enum value for TrianglesFromModel 2020-11-14 09:01:19 +10:00
Vincent Cloarec
b725a044ae
3D material color data defined (#39683) 2020-11-04 16:42:58 +01:00
Nyall Dawson
746ee315bd Fix boolean literal presentation in dox/PyQGIS docs 2020-10-16 16:03:26 +10:00
Nyall Dawson
d1bc82ca7b Misc typo fixes 2020-08-31 11:38:02 +10:00
Nyall Dawson
53a8343eac Fix see also 2020-08-03 16:34:10 +10:00
Nyall Dawson
cafa347441 Add sip casting code for material types 2020-08-03 16:34:10 +10:00
Nyall Dawson
b07e0a20d0 Split textured phong material class from basic phong material class 2020-08-03 16:34:10 +10:00
Nyall Dawson
4d5518531f Split simple line material out from phong material 2020-08-03 16:34:10 +10:00
Nyall Dawson
c87a8f6afb Code shuffle to move all material classes to separate subdirectory 2020-08-03 16:34:10 +10:00