当前位置: 首页 > news >正文

从零开始物理引擎(六)- 重构完成与MVP理解

完成重构,搭建起物理引擎基础框架,包含碰撞检测与移动方式以及物理量基类。

本篇借助重构进一步探索MVP矩阵理解(model->view->projection)

重构

Common

该项目以dll形式注入启动项目,主要包含通用操作如全局上下文,配置类,日志以及引擎所需接口如窗口接口,控制台接口,渲染类接口等

Console

控制台实现项目,以dll形式注入,通过实现CommoncreateConsole供主启动类创建出控制台。借助imgui实现

MainWindowUi

窗口实现项目,以dll形式注入,通过实现CommoncreateWindow供主启动类创建出主窗口。借助win32api实现

Renderer

渲染器,由dx11负责渲染,主要封装了dx11渲染操作。通过实现CommoncreateDx11供主启动类创建出渲染器实例。


这里不过多介绍代码实现,主要针对渲染器重构部分详解MVP矩阵概念。

渲染器重构

原有渲染是将每个形状作为渲染的主体,例如圆形三角形等分别做成不同的类,类中包含位置数据与移动所需movement对象。
现有渲染将位置数据搭配movement对象作为渲染主体,其中movement对象包含速度加速度质量,通过其他物理量计算出’物体’受力,进而计算出加速度,借助半隐式欧拉积分根据加速度计算出速度从而改变物体位置
再次回顾物体如何被渲染到屏幕上,渲染管线部分此处不赘述,从实现角度来讲,我们需要配置顶点数据将形状绘制出来。那么顶点MVP矩阵的含义与关系分别是什么。
可以这么理解,以我们现实世界来看,顶点代表一个物体的形状,这个形状存在于概念层面,即我们想象中的形状。举个例子,我们想象一个人,那么它的形状会在脑海中浮现,这个就是顶点,它定义出了物体在抽象意义上的形状。但要将抽象意义中的物体放在现实世界中,我们需要它的位置大小姿态(旋转)。

http://www.xdnf.cn/news/5851.html

相关文章:

  • Windows程序包管理器WinGet实战
  • 极狐GitLab 议题和史诗创建的速率限制如何设置?
  • 2025.04.18|【Map】地图绘图技巧全解
  • 【MySQL】初识数据库
  • 电脑 BIOS 操作指南(Computer BIOS Operation Guide)
  • Houdini python code:参数指定文件路径
  • 13.编码器的结构
  • 5.Rust+Axum:打造高效错误处理与响应转换机制
  • Wireshark 搜索组合速查表
  • HTML新标签与核心 API 实战
  • tomcat 的安装与启动
  • 具身智能机器人学习路线全解析
  • Muduo网络库实现 [十四] - HttpResponse模块
  • 【4.1.-4.20学习周报】
  • 信号的传输方式
  • JS实现RSA加密
  • Redis面试——日志
  • 《Java 泛型的作用与常见用法详解》
  • 【Linux】第九章 控制服务和守护进程
  • iptables 防火墙
  • JUC学习(1) 线程和进程
  • Springboot 自动装配原理是什么?SPI 原理又是什么?
  • 《AI大模型应知应会100篇》第23篇:角色扮演技巧:让AI成为你需要的专家
  • 【英语语法】基本句型
  • Redis面试——常用命令
  • webgl入门实例-09索引缓冲区示例
  • BH1750光照传感器---附代码
  • java + spring boot + mybatis 通过时间段进行查询
  • 【JavaScript】二十四、JS的执行机制事件循环 + location + navigator + history
  • 基于尚硅谷FreeRTOS视频笔记——13—HAL库和RTOS时钟源问题