Я хочу визуализировать пользовательскую сетку (LAB.obj) с определенной прозрачностью в сцене Qt3D. Я использую QDiffuseSpecularMaterial
с диффузным цветом, установленным на Qt.rgba(1,0.6,0.42,0.9)
- альфа-значение 0,9. Я получаю странные горизонтальные полосы по всей моей модели при визуализации, и части объекта, которые должны быть сзади, ошибочно появляются спереди. Смотрите следующее изображение:
Что я делаю не так?
Вот код, разбитый на важные части:
Item {
Scene3D {
id: scene
anchors.fill: parent
aspects: ["input", "logic"]
Entity {
id: sceneRoot
Camera {
id: camera
projectionType: CameraLens.PerspectiveProjection
nearPlane : 0.01
farPlane : 1000.0
fieldOfView: 45
position: Qt.vector3d(0,0,40)
upVector: Qt.vector3d( 0,1,0 )
viewCenter: Qt.vector3d(0,0,0)
}
OrbitCameraController {
camera: camera
linearSpeed: -200
lookSpeed: -180
}
components: [
RenderSettings {
ForwardRenderer {
camera: camera
clearColor: "transparent"
}
},
InputSettings {}
]
Entity {
id: customEntity
components: [
DiffuseSpecularMaterial {
diffuse: Qt.rgba(1,0.6,0.42,0.9)
alphaBlending:true
},
Mesh {
id: customMesh
source: "qrc:LAB"
}
]
}
}
}
}