GoochMaterial QML Type
GoochMaterial 提供了一种实现 Gooch 着色模型的材质,该模型在 CAD 和 CAM 应用中广受欢迎。更多内容...
| Import Statement: | import Qt3D.Extras 2.12 |
| Inherits: | |
| Status: | Technology preview |
此类型处于技术预览阶段,可能会有变动。
属性
- alpha : real
- beta : real
- cool : color
- diffuse : color
- shininess : real
- specular : color
- warm : color
详细说明
Gooch 光照模型同时利用颜色和亮度来呈现三维表面的曲率。这通常比Phong等仅依赖亮度变化的模型效果更好。 在CAD和CAM等应用场景中,由于无需追求逼真的图像效果,Gooch着色模型结合某种轮廓边缘描边技术,是一种广受欢迎的解决方案。
Gooch 照明模型在Gooch 的原始论文中进行了详细阐述。 Gooch 模型将物体的漫反射颜色与用户指定的冷色和暖色混合,生成颜色渐变的端点,该渐变用于根据片元到光源的矢量与片元法线矢量之间的余弦值对物体进行着色。 此外,还可以选择在顶层添加镜面高光。漫反射颜色对冷色和暖色的相对贡献分别由 alpha 和 beta 属性控制。
该材质采用单渲染通道的方法,并执行逐片元照明。提供了适用于 OpenGL 2、OpenGL 3 或更高版本以及 OpenGL ES 2 的技术。
属性文档
alpha : real
存储当前的透明度值。Gooch 着色器所使用的颜色渐变的起始点计算方式为 {c = cool + alpha * diffuse}。
beta : real
存储当前的 beta 值。Gooch 着色器所使用的颜色渐变的起始点计算方式为 {c = warm + beta * diffuse}。
cool : color
保留当前的冷色调。
diffuse : color
保存当前的漫反射颜色。
shininess : real
存储当前的光泽度值。光泽度值越高,高光区域就越小且越亮。
specular : color
存储当前的镜面反射颜色。
warm : color
保留当前的暖色。
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.