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

【零基础入门unity游戏开发——unity3D篇】3D物理系统之 —— 3D刚体组件Rigidbody

考虑到每个人基础可能不一样,且并不是所有人都有同时做2D、3D开发的需求,所以我把 【零基础入门unity游戏开发】 分为成了C#篇、unity通用篇、unity3D篇、unity2D篇

  • 【C#篇】:主要讲解C#的基础语法,包括变量、数据类型、运算符、流程控制、面向对象等,适合没有编程基础的同学入门。
  • 【unity通用篇】:主要讲解unity的基础通用的知识,包括unity界面、unity脚本、unity资源管理、unity动画、unity摄像机等,适合unity初学者入门。
  • 【unity3D篇】:主要讲解unity3D的知识,unity3D角色、unity3D物理系统、unity3D光照等,适合只想做2D游戏的开发者学习。
  • 【unity2D篇】unity2D篇:主要讲解unity2D的知识,包括unity2D角色、unity2D物理系统、unity2D光照等,适合只想做3D游戏的开发者学习。

这样方便大家按需选择性的去学习,比如有编程基础的大概率可以直接从unity通用篇开始入门,没有编程基础的建议从C#篇开始学习。只想做2D游戏的话,可以直接从unity2D篇开始学习,3D篇大概率就不需要看了,节约学习时间成本。

文章目录

  • 前言
  • 一、Rigidbody的介绍
    • 1、Rigidbody 是什么?
    • 2、Rigidbody 的作用
    • 3、怎么给物体添加 Rigidbody?
    • 4、Rigidbody参数介绍
  • 二、Collision Detection(碰撞检测)
    • 1、**Discrete(离散)**
      • 适用场景
    • 2、**Continuous(连续)**
      • 适用场景
    • 3、**Continuous Dynamic(连续动态)**
      • 适用场景
    • 4、**Continuous Speculative(连续推测)**
      • 适用场景
    • 性能消耗关系
    • 总结
  • 三、刚体加力
    • 1、获取刚体组件
    • 2、添加力
      • 2.1 正方向加了一个力
      • 2.2 添加扭矩力,让其旋转
      • 2.3 直接改变速度
      • 2.4 模拟爆炸效果
    • 3、ForceMode 力的模式
    • 4、Constant Force力场脚本
  • 四、刚体的休眠
    • 1、刚体休眠存在的原因
    • 2、解决刚体休眠问题
  • 专栏推荐
  • 完结

前言

Unity 3D物理系统中的刚体组件 (Rigidbody) 是控制物体在物理世界中如何运动的关键组件。它使物体受力、重力、碰撞等物理影响,从而模拟出真实的运动行为。

一般默认重力是-9.81,可以前往项目设置修改默认值
在这里插入图片描述

两个物体要发生碰撞,必须满足:(重要

  • 两个物体都有 Collider(碰撞器)。
  • 至少一个物体有 Rigidbody。

一、Rigidbody的介绍

1、Rigidbody 是什么?

Rigidbody 是 Unity 中的一个组件,它的作用是让物体能够受到物理规则的影响。比如:

  • 物体会因为重力掉下来。

  • 物体可以被推动、旋转,或者和其他物体碰撞。

如果没有 Rigidbody,物体就像“幽灵”一样,不会受到任何物理影响,只能通过代码手动控制它的位置和旋转。

2、Rigidbody 的作用

  • 重力:让物体掉下来(比如一个球从高处落下)。

  • 碰撞:让物体可以和其他物体发生碰撞(比如球撞到墙会弹回来)。

  • 受力:让物体可以被推动(比如用代码给物体一个力,让它飞出去)。

3、怎么给物体添加 Rigidbody?

  • 选中你的物体(比如一个立方体或球)。

  • 在右侧的 Inspector 窗口,点击 Add Component。

  • 搜索 Rigidbody,然后点击添加。

4、Rigidbody参数介绍

在这里插入图片描述

参数 含义 功能
Mass 质量 物体的质量。质量越大惯性越大。
Drag 线性阻尼 空气阻力。0表示没有空气阻力,较高的值会产生更快的衰减速率。
Angular Drag 角阻尼 旋转空气阻力。0表示没有旋转空气阻力, 极大时使物体立即停止旋转。
Automatic Center Of Mass 自动质心 启用以使用物理系统根据刚体的形状和比例预测的刚体质心。禁用可设置您自己的质心 X、Y 和 Z 坐标。
Automatic Tensor 自动张量 启用以使用物理系统对刚体的预测张量和张量旋转,基于所有连接的 colliders .与质量一样,惯性张量定义使刚体移动所需的力或扭矩;但是,质量影响线性运动,而惯性张量影响旋转运动。禁用 可改为张量设置您自己的 X、Y 和 Z 坐标(请参阅下面的属性)。
Use Gravity 使用重力 切换 Rigidbody 上的重力效果。如果启用,物理系统将施加一个力,使游戏对象沿模拟重力的方向移动(默认情况下,沿 y 轴向下移动)。默认情况下,Use Gravity 处于启用状态。
Is Kinematic 是运动学的 在游戏对象的基于物理的运动和运动之间切换。启用 Is Kinematic 后,物理系统无法施加力来移动或旋转游戏对象,而 Unity 只能通过其 Transform 移动和旋转游戏对象。
Interpolate 插值 物体运动插值模式,让刚体物体移动更平滑。当发现刚体运动时抖动,可以尝试下面的 选项:None(无),不应用插值;Interpo

相关文章:

  • Docker 部署Spring boot + Vue(若依为例)
  • 探针泄露(WEB)
  • 如何安装旧版本的Pytorch
  • python-leetcode-子数组最大平均数 I
  • matplotlib 保存图片是空的,小坑,记录一下
  • 多种注意力机制(文本->残差->视频)
  • Everything搜索工具下载使用教程(附安装包),everything搜索工具文件快速查找
  • 操作符详解
  • 求递增子序列LIS的两种方法
  • PHP语法基础
  • C++ Primer Plus 编程练习题 第四章 复合类型
  • 星越L_行李舱空间拓展讲解
  • 智能血糖仪语音提示播报-高品质音质WT2003H芯片方案
  • 广东省首批服务机器人应用技术员三级职业技能等级认定及申请条件
  • 设备预测性维护:企业降本增效的关键密码​
  • DeFi开发的深度解析与展望
  • flutter 图片资源路径管理
  • Android jetpack 之LiveData 结合ViewModel的简单使用
  • FX-std::list
  • rv1106 PWM控制
  • 网站签到的作用/百度人工服务热线
  • 网站竞价难做优化/韩国vs加纳分析比分
  • 湖南网站seo地址/你就知道首页
  • java做商城网站可以吗/seo点击软件排名优化
  • 2021建站/网络营销策略的特点
  • 阿里云网站备案流程/自助建站系统源码