我编写了一个使用 Qt 6 从 DAE COLLADA 加载 3D 模型的示例。源代码:load-3d-model-from-dae-opengl-window-qt6-cpp.zip
OpenGL 光照在桌面上工作正常,但在 Android 和 WebAssembly 上工作不正确:
桌面:
安卓:
网络组装:
补充:
我将这行代码
glEnable(GL_CULL_FACE);
添加到OpenGLWindow::initializeGL()
。 Android 上的立方体问题已解决:
和 WebAssembly:
当我用 Mario 更改模型时,它可以在桌面上运行:
但它不适用于Android:
和 WebAssembly:
源代码:load-3d-model-from-dae-opengl-window-qt6-cpp.zip
交叉参考:
我尝试将深度缓冲区大小设置为 24:
OpenGLWindow::OpenGLWindow()
{
setTitle("OpenGL ES 2.0, Qt6, C++");
resize(350, 350);
QSurfaceFormat surfaceFormat;
surfaceFormat.setDepthBufferSize(24);
setFormat(surfaceFormat);
}
它至少适用于 Windows 10 64 位的 WebAssembly:https://65d340535ef3fa042a6d1ce3--charming-malabi-d8d124.netlify.app/
在 Redmi 4X、Android 7 上: