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

【C++游戏引擎开发】第10篇:AABB/OBB碰撞检测

一、AABB(轴对齐包围盒)

1.1 定义

  • 最小点 m i n = ( x min , y min , z min ) \mathbf{min} = (x_{\text{min}}, y_{\text{min}}, z_{\text{min}}) min=(xmin,ymin,zmin)
  • 最大点 m a x = ( x max , y max , z max ) \mathbf{max} = (x_{\text{max}}, y_{\text{max}}, z_{\text{max}}) max=(xmax,ymax,zmax)
    所有点 p ∈ AABB \mathbf{p} \in \text{AABB} pAABB 满足:
    m i n ≤ p ≤ m a x \mathbf{min} \leq \mathbf{p} \leq \mathbf{max} minpmax

1.2 碰撞检测条件

两个 AABB 碰撞的充要条件为:
{ x min A ≤ x max B x min B ≤ x max A y min A ≤ y max B y min B ≤ y max A z min A ≤ z max B z min B ≤ z max A \begin{cases} x_{\text{min}}^A \leq x_{\text{max}}^B \\ x_{\text{min}}^B \leq x_{\text{max}}^A \\ y_{\text{min}}^A \leq y_{\text{max}}^B \\ y_{\text{min}}^B \leq y_{\text{max}}^A \\ z_{\text{min}}^A \leq z_{\text{max}}^B \\ z_{\text{min}}^B \leq z_{\text{max}}^A \end{cases} xminAxmaxBxminBxmaxAyminAymaxByminBymaxAzminAzmaxBz

http://www.dtcms.com/a/122847.html

相关文章:

  • error: RPC failed; HTTP 408 curl 22 The requested URL returned error: 408
  • 【大模型理论篇】关于生成式模型中联合分布概率学习必要性以及GPT是生成式模型的讨论
  • 【ida】ida笔记
  • C语言指针和函数
  • CSS 笔记——Flexbox(弹性盒布局)
  • react-router children路由报错
  • 配置SSMS 让数据库中会话时长大于30秒的自动终止
  • python爬虫发送请求的方法汇总
  • LeetCode 33 搜索旋转排序数组
  • Tailwind CSS的五节课教学计划
  • 动态科技感html导航网站源码
  • MySQL:事务
  • VectorBT量化入门系列:第四章 高级策略开发与优化
  • Rust Command无法执行*拓展解决办法
  • 在线PDF文件拆分工具,小白工具功能实用操作简单,无需安装的文档处理工具
  • 基金的分类与如何选择基金
  • Quantz框架学习
  • Kafka 如何保证消息有序性?
  • Java 面向对象(构造类、对象)
  • 【系统架构设计师】数据库系统 ⑤ ( 数据库设计过程 - 逻辑设计 | ER 图 转为 关系模式 | 实体 转 关系模式 | 联系 转 关系模式 - 并入实体、独立关系 )
  • 适合工程建筑行业的OA系统有什么推荐?
  • 【后端开发】SpringBoot与Spring MVC
  • Nacos 健康检查是如何实现的?支持哪些健康检查协议?
  • AI搜索+法律咨询:在「事实重构」与「程序正义」的博弈场‌
  • c#的form实现叠叠乐游戏
  • Git 中回退版本后修改并提交
  • HarmonyOS Next~鸿蒙系统原生流畅性创新解析:预加载技术与全栈优化的革命性突破
  • Docker中Redis修改密码失效
  • ISIS单区域抓包分析
  • 常微分方程求解全解析:从基础到矩阵方法深度实践