自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 收藏
  • 关注

原创 Dust3D项目实训十三 | 基于normalanddepthmapsgenerator 的法线和深度贴图生成分析

2021SC@SDUSC分析概括模块功能该模块主要进行法线和深度贴图的生成,通过QThread管线进行多线程纹理生成,提高项目运行速度QThread类QThread类提供了一个与平台无关的管理线程的方法。一个QThread对象管理一个线程,在QThread类中,run()函数通过调用exec()函数来启动事件循环机制,并且在线程内部处理Qt的事件。其主要目的就是为了用线程来处理耗时的后台操作,从而让主界面能及时响应用户的请求操作。QThread的使用方法有两种:1.QObj

2021-12-28 02:36:51 360

原创 Dust3D项目实训十二 | 基于skinnedmeshcreator的蒙皮网格生成分析

2021SC@SDUSC

2021-12-26 23:26:44 464

原创 Dust3D项目实训十一 | 基于silhouetteimaggenerator的图像轮廓绘制分析

daimafenxi

2021-12-19 23:52:43 603

原创 Dust3D项目实训十 | 基于SkeletonIkMover的骨骼运动分析

目录代码分析removeComponentRecursively函数setCurrentCanvasComponentId函数2021SC@SDUSC代码分析removeComponentRecursively函数void SkeletonDocument::removeComponentRecursively(QUuid componentId){ auto component = componentMap.find(componentId); if (

2021-12-09 16:31:57 296

原创 Dust3D项目实训九 | 基于skeletondocument的骨骼生成分析2

2021SC@SDUSC代码分析removeEdge函数void SkeletonDocument::removeEdge(QUuid edgeId){ const SkeletonEdge *edge = findEdge(edgeId); if (nullptr == edge) { qDebug() << "Find edge failed:" << edgeId; return; } if (

2021-12-09 16:28:51 202

原创 Dust3D项目实训八 | 基于skeletondocument的骨骼生成分析

目录骨骼生成方式代码分析findEdgeByNodes函数findAllNeighbors函数骨骼生成方式代码分析findEdgeByNodes函数const SkeletonEdge *SkeletonDocument::findEdgeByNodes(QUuid firstNodeId, QUuid secondNodeId) const{ const SkeletonNode *firstNode = nullptr; firstNode =

2021-12-09 16:25:58 587

原创 Dust3D项目实训七 | 基于meshcombiner类的网格粘合分析

void SimpleRenderMeshGenerator::generate(){ if (nullptr == m_triangleCornerNormals || m_triangleCornerNormals->empty()) { delete m_triangleCornerNormals; m_triangleCornerNormals = new std::vector<std::vector<Q...

2021-12-08 17:54:02 288

原创 Dust3D项目实训六 | 基于modelshaderprogram类的模型材质分析

odelShaderProgram::ModelShaderProgram(bool isCoreProfile){ if (isCoreProfile) { this->addShaderFromSourceCode(QOpenGLShader::Vertex, loadShaderSource(":/shaders/default.core.vert")); this->addShaderFromSourceCode(QOpenGLShad...

2021-12-08 17:17:52 717

原创 Dust3D项目实训五 | 基于modeloffscreenrender的画面渲染分析

2021SC@SDUSC目录分析概括模块功能​类函数基础QSize类QImage类ModelOffscreenRender.h分析ModelOffscreenRender.cppRRT渲染技术反走样设置ToImage()函数分析分析概括模块功能ModelOffscreenRender模块主要包含两部分内容:1.控制几何体在世界坐标内的移动、旋转以及视角的变换2、将几何体使用帧渲染的形式渲染后转换为二维纹理贴图形式后进行处理并返回处理图像

2021-10-31 23:59:31 167

原创 Dust3D项目实训四 | 基于modelmeshbinder类的网格纹理绑定功能分析

paint函数分析void ModelMeshBinder::paint(ModelShaderProgram *program){ Model *newMesh = nullptr; bool hasNewMesh = false; if (m_newMeshComing) { QMutexLocker lock(&m_newMeshMutex); if (m_newMeshComing) { newMesh =

2021-10-24 22:05:11 119

原创 Dust3D项目实训三 | 基于model类的三维模型构建分析

2021SC@SDUSC目录分析概括model.h分析三维模型构造三角面的结构体模型类model.cpp分析分析概括基于上周分析的object类的基础上,本周继续进行modle模块的分析,主要分析modle.h与modle.cpp。model.h分析三维模型构造三角面的结构体struct TriangulatedFace{//结构体:三角面 int indices[3];//三位索引 QColor color;//颜色};模型..

2021-10-17 23:10:36 178

原创 Dust3D项目实训二 | 基于object类的物体建模分析

2021SC@SDUSC 本周开始我们开始正式进行源代码分析工作,基于上周讨论结果,我计划从

2021-10-10 20:04:29 185

原创 Dust3D项目实训一 | 项目概述与分工

项目概述 Dust3D 是一个开源的便捷建模工具,用户可以使用该软件快速创建模型,常用来构建游戏中简易动物模型。该项目目前已实现插入节点自动建模、骨骼绑定自动生成、渲染与贴图绑定、环境光及阴影生成以及姿势动画的生成等功能。项目安装与源码下载安装说明1、登录Dust3D官网Dust3D | Free 3D Modeling Software进行项目下载2、根据不同系统下载不同版本的项目3、选定版本下载好项目压缩包并解压后选择dust3d应用程序打开即可打开...

2021-09-30 16:51:27 312

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除