Qt Custom3DItem setMeshFile无法使用混合器生成的波前obj
在本例中,我尝试在Qt中使用不同的3D对象: 我曾尝试下载obj文件或使用Blender生成新文件。 该示例适用于其他Qt示例中的任何其他对象,但不适用于Blender生成的波前对象。 我还尝试了一个简单的立方体:Qt Custom3DItem setMeshFile无法使用混合器生成的波前obj,qt,3d,blender,Qt,3d,Blender,在本例中,我尝试在Qt中使用不同的3D对象: 我曾尝试下载obj文件或使用Blender生成新文件。 该示例适用于其他Qt示例中的任何其他对象,但不适用于Blender生成的波前对象。 我还尝试了一个简单的立方体: # Blender v2.78 (sub 0) OBJ File: '' # www.blender.org mtllib untitled.mtl o Cube v 0.910983 -0.851291 -0.981756 v 0.910983 -0.851291 1.018244
# Blender v2.78 (sub 0) OBJ File: ''
# www.blender.org
mtllib untitled.mtl
o Cube
v 0.910983 -0.851291 -0.981756
v 0.910983 -0.851291 1.018244
v -1.089017 -0.851291 1.018244
v -1.089016 -0.851291 -0.981756
v 0.910984 1.148709 -0.981755
v 0.910983 1.148709 1.018245
v -1.089017 1.148709 1.018244
v -1.089017 1.148709 -0.981756
vn 0.0000 -1.0000 0.0000
vn 0.0000 1.0000 -0.0000
vn 1.0000 -0.0000 0.0000
vn 0.0000 -0.0000 1.0000
vn -1.0000 -0.0000 -0.0000
vn 0.0000 0.0000 -1.0000
usemtl Material
s off
f 2//1 4//1 1//1
f 8//2 6//2 5//2
f 5//3 2//3 1//3
f 6//4 3//4 2//4
f 7//5 4//5 3//5
f 1//6 8//6 5//6
f 2//1 3//1 4//1
f 8//2 7//2 6//2
f 5//3 6//3 2//3
f 6//4 7//4 3//4
f 7//5 8//5 4//5
f 1//6 4//6 8//6
但即使是立方体也不起作用。
我在调试控制台中遇到以下错误:
> Debugging starts [07:22:56:07:900][ 1352] IGIESW
> c:\qt\examples\qt-5.9.1\datavisualization\build-rotations-desktop_qt_5_9_1_mingw_32bit-debug\debug\rotations.exe
> found in whitelist: NO [07:22:56:07:957][ 1352] IGIWHW Game
> c:\qt\examples\qt-5.9.1\datavisualization\build-rotations-desktop_qt_5_9_1_mingw_32bit-debug\debug\rotations.exe
> found in whitelist: NO OpenGL version: 4.5.0 NVIDIA 382.05 GLSL
> version: 4.50 NVIDIA ASSERT failure in QVector<T>::operator[]: "index
> out of range", file c:\Users\qt\work\install\include/QtCore/qvector.h,
> line 438 Debugging has finished
>调试开始[07:22:56:07:900][1352]IGIESW
>c:\qt\examples\qt-5.9.1\datavisualization\build-rotations-desktop\u qt\u 5\u 9\u 1\u mingw\u 32bit-debug\debug\rotations.exe
>在白名单中找到:否[07:22:56:07:957][1352]IGIHW游戏
>c:\qt\examples\qt-5.9.1\datavisualization\build-rotations-desktop\u qt\u 5\u 9\u 1\u mingw\u 32bit-debug\debug\rotations.exe
>在白名单中找到:无OpenGL版本:4.5.0 NVIDIA 382.05 GLSL
>版本:4.50 NVIDIA断言在QVector::operator[]:“索引中失败
>超出范围”,文件c:\Users\qt\work\install\include/QtCore/qvector.h,
>第438行调试已完成
有人知道如何为Qt正确生成obj吗?
感谢您样本末尾的几行,它们列出了面部数据。我认为两个斜杠之间缺少的数字是“索引超出范围错误”的原因。由于这可能是由Qt代码处理的,您可以建议一个bug修复程序来更好地处理这种情况,因为三个数字中有两个似乎是有效的
面数据中的第二个数字用于uv坐标。我希望展开或至少可以解决您的问题。样本末尾的行,列出了面部数据。我认为两个斜杠之间缺少的数字是“索引超出范围错误”的原因。由于这可能是由Qt代码处理的,您可以建议一个bug修复程序来更好地处理这种情况,因为三个数字中有两个似乎是有效的 面数据中的第二个数字用于uv坐标。我希望拆开包装或者至少可以解决你的问题