1.qml-3D入门讲解介绍

本章我们来学习QML 3D教程,QML 3D能够支持windows linux等多平台跨平台并且显示效果大部分一致,非常方便,学习的qt版本最低为qt6.5

要使用qml 3D类,需要导入QtQuick3D模块。

这是使用空间渲染器和场景图的 QML 前端。目前,所有 3D 内容都会通过FBO进行纹理绑定和绘制,以便它们可以组合成 Qt Quick 场景(作为QQuickItem)。

QtQuick3D模块中有我们使用的很多类。

常用的如下所示(本章和后面章节都会讲解):

  • View3D提供用于渲染 3D 场景的视口
  • Texture定义用于 3D 场景的纹理
  • DirectionalLight定义场景中的平行光
  • SpotLight定义场景中的聚光灯
  • Model 3D模型材质数据
  • Node3D场景中存在的对象的基础组件
  • PerspectiveCamera 3D场景中的透视相机(提供场景的真实投影)
  • OrthographicCamera 3D场景中的正交投影矩阵的相机
  • Joint 定义骨骼动画层次结构中的节点

除了QtQuick3D模块外,qml还提供了以下几个辅助模块(后面章节会详解):

  • QtQuick3D.AssetUtils: 动态加载3D资源相关的模块
  • QtQuick3D.Helpers : 辅助模块,包含WasdController类型(使用wasd按键和鼠标控制节点位置和方向)、AxisHelper(显示xyz轴和网络格)等等
  • QtQuick3D.Particles3D: 3D粒子系统模块,和qml中2D粒子类似,多了一个z轴方向。

学前知识

三维坐标系和旋转方向

接触模型时,会经常纠结xyz方向,初学者可能会比较难记住,可以通过如下图所示方便确定方向:

旋转方向则可以通过右手的方式来判断,默认angle正方向如下图所示:

未完待续

相关推荐
探物 AI5 天前
【3D·感知】从PointNet到PointPillars:如何让自动驾驶汽车“实时“看见3D世界?
3d·自动驾驶·汽车
苏州邦恩精密5 天前
GOM三维扫描在制造中的真实价值:让“修模”从经验动作变成数据动作
人工智能·科技·机器学习·3d·自动化·制造
YHHLAI5 天前
CSS 3D 硬核解析:四个属性手写旋转立方体
前端·css·3d
云飞云共享云桌面5 天前
传统工作站 vs 云飞云共享云桌面:制造业设计云桌面选型深度对比
运维·服务器·前端·网络·3d·架构·制造
LONGZETECH6 天前
无人机仿真教学软件选型实战:5 个硬核技术维度,避开实训建设踩坑
3d·无人机·交互·cocos2d
装不满的克莱因瓶6 天前
了解3D卷积原理——从空间感知到时空建模的深度学习核心算子
人工智能·pytorch·python·深度学习·机器学习·3d·ai
雪的季节6 天前
Qt Graphs 2D+3D介绍
qt·3d
CG_MAGIC6 天前
3ds Max材质编辑器:精简模式与Slate模式对比
3d·编辑器·材质·贴图·uv·建模教程
装不满的克莱因瓶6 天前
掌握3D CNN模型结构——从时空特征建模到视频理解与医学影像核心架构
人工智能·pytorch·python·深度学习·神经网络·3d·cnn
AniShort6 天前
AniShort携3D世界+3D导演台王炸组合AI短剧协作平台亮相2026横店AI短剧大会 近亿元融资赋能短剧工业化
人工智能·microsoft·3d