搜索
查看
编辑修改
首页
UNITY
NODEJS
PYTHON
AI
GIT
PHP
GO
CEF3
JAVA
HTML
CSS
搜索
繁依Fanyi0
这个屌丝很懒,什么也没留下!
关注作者
热门标签
jquery
HTML
CSS
PHP
ASP
PYTHON
GO
AI
C
C++
C#
PHOTOSHOP
UNITY
iOS
android
vue
xml
爬虫
SEO
LINUX
WINDOWS
JAVA
MFC
CEF3
CAD
NODEJS
GIT
Pyppeteer
article
热门文章
1
vue element ui 表格有相同数据合并单元格_element ui table 根据参数名是否相同合并单元格
2
Mac系统Java各种环境的安装和配置_mac系统java安装哪种
3
【linux升级ssh】 利用rpmbuild工具对ssh打包为rpm包进场安装升级_sh文件打包成rpm
4
Python零基础自学1(黑马)_黑马程序员python网盘
5
初识 Linux — 文件管理_将目录下的子目录mydir中所有文件和子目录的所有者切换为stu,分组切换为stu命
6
fastdfs分片上传和断点续传_fastdfs断点续传
7
CNN-LSTM回归预测模型_cnn-lstm栅格预测
8
21点算法_21点公式
9
Android应用开发:Activity(5)_android单activity应用
10
fastdfs配置双ip访问_fastdfs storage绑定ip
当前位置:
article
> 正文
Unity3D学习笔记——物理引擎_unity constantforce
作者:繁依Fanyi0 | 2024-02-18 05:25:26
赞
踩
unity constantforce
Unity3d
学习笔记——物理引擎
一、物理引擎
1、刚体 Rigidbody
1>简介
2>属性
2、碰撞体 Collider
1>简介
2>分类
3>属性
a) Box Collider 盒型碰撞体
b) Sphere Collider 球形碰撞体
c) Capsule Collider 胶囊碰撞体
d) Mesh Collider 网格碰撞体
e) Wheel Collider 车轮碰撞体
f) Terrain Collider 地形碰撞体
4>物理材质
5>碰撞条件
6>碰撞三阶段
3、触发器 Trigger
1>简介
2>触发条件
3>触发三阶段
4、恒定力 Constant Force
1> 简介
2> 属性
5、角色控制器 Character Controller
1>简介
2> 属性
6、关节 Joint
1> 简介
2> 分类
3> 属性
a) Hinge Joint 铰链关节
b) Fixed Joint 固定关节
c) Spring Joint 弹簧关节
d) Character Joint 角色关节
e) Configurable Joint 可配置关节
一、物理引擎
1、刚体 Rigidbody
1>简介
刚体可以为游戏对象赋予物理特性,是游戏对象在物理系统的控制下接受推力和扭力,从而实现现实世界的物理学现象。
2>属性
2、碰撞体 Collider
1>简介
碰撞器是物理组件的一类,他与刚体一起促使碰撞发生
碰撞体是简单形状,如方块、球形或者胶囊形,在 Unity 3D 中每当一个 GameObjects 被创建时,它会自动分配一个合适的碰撞器。一个立方体会得到一个 Box Collider(立方体碰撞体),一个球体会得到一个 Sphere Collider(球体碰撞体),一个胶囊体会得到一个 Capsule Collider(胶囊体碰撞体)等。
2>分类
当游戏对象中的Rigidbody碰撞组件被添加后,其属性面板中会显示相应的属性设置选项,每种碰撞体的资源类型稍有不同。
3>属性
a) Box Collider 盒型碰撞体
Box Collider 是最基本的碰撞体,Box Collider 是一个立方体外形的基本碰撞体
一般游戏对象往往具有 Box Collider 属性,如墙壁、门、墙以及平台等,也可以用于布娃娃的角色躯干或者汽车等交通工具的外壳,当然最适合用在盒子或是箱子上。
如果 Is Trigger 选项被勾选,该对象一旦发生碰撞动作,则会产生 3 个碰撞信息并发送给脚本参数,分别是 OnTriggerEnter、OnTriggerExit、OnTriggerStay
Physics Material 定义了物理材质,包括冰、金属、塑料、木头等
b) Sphere Collider 球形碰撞体
Sphere Collider 是球体形状的碰撞体
Sphere Collider 是一个基于球体的基本碰撞体,Sphere Collider 的三维大小可以按同一比例调节,但不能单独调节某个坐标轴方向的大小
当游戏对象的物理形状是球体时,则使用球体碰撞体,如落石、乒乓球等游戏对象
c) Capsule Collider 胶囊碰撞体
Capsule Collider 由一个圆柱体盒两个半球组合而成,Capsule Collider 的半径和高度都可以单独调节,可用在角色控制器或与其他不规则形状的碰撞结合来使用
通常添加至 Character 或 NPC 等对象的碰撞属性
d)
Mesh
Collider 网格碰撞体
Mesh Collider(网格碰撞体)根据 Mesh 形状产生碰撞体,比起 Box Collider、Sphere Collider 和 Capsule Collider,Mesh Collider 更加精确,但会占用更多的系统资源
专门用于复杂网格所生成的模型
e)
Wheel
Collider 车轮碰撞体
Wheel Collider(车轮碰撞体)是一种针对地面车辆的特殊碰撞体,自带碰撞侦测、轮胎物理现象和轮胎模型,专门用于处理轮胎
f) Terrain Collider 地形碰撞体
地形碰撞体 (Terrain Collider) 实现了一个碰撞表面,其形状与其所附加到的 Terrain 对象相同
4>物理材质
用于调整碰撞对象的摩擦力和反弹效果
属性
5>碰撞条件
在unity3D中要实现碰撞检测,需要满足以下条件:
1、两个物体都具有碰撞组件
2、至少有一个物体拥有Rigidbody组件
3、Collider都不勾选Is Trigger
6>碰撞三阶段
MonoBehaviour.OnCollisionEnter:当进入碰撞时触发
MonoBehaviour.OnCollisionExit:当退出碰撞时时触发
MonoBehaviour.OnCollisionStay:当逗留在碰撞中触发
3、触发器 Trigger
1>简介
在Unity3D中,检测碰撞发生的方式有两种
1、利用碰撞体
2、利用触发器
在很多游戏引擎或工具中都有触发器,他被用来触发事件
碰撞体与触发器的区别在于:
1、碰撞体是触发器的载体
2、触发器只是碰撞体的一个属性
如果既想要检测到物理的接触,又不想让碰撞检测影响物体的移动,或者要检测一个物体是否经过控件中的某个区域,这是就可以用到触发器
例如:碰撞体适合模拟汽车被撞飞、皮球掉在地上又反弹的效果,而触发器适合模拟人站在靠近门的位置时门自动打开的效果
2>触发条件
在unity3D中要实现触发检测,需要满足以下条件:
1、两个物体都具有Collider组件
2、至少有一个物体拥有Rigidbody组件
3、至少有一个物体的Collider组件勾选了Is Trigger
3>触发三阶段
MonoBehaviour.OnTriggerEnter:当进入触发器时触发
MonoBehaviour.OnTriggerExit:当退出触发器时触发
MonoBehaviour.OnTriggerStay:当逗留在触发器中触发
4、恒定力 Constant Force
1> 简介
恒定力 (Constant Force) 可用于快速向刚体添加恒定力。如果不希望某些一次性对象以较大的速度开始而是逐渐加速(比如火箭),则很适合使用恒定力
2> 属性
要使对象向上运动,请添加具有正 Y 值 Force 属性的恒定力。
要使对象向前飞行,请添加具有正 Z 值 Relative Force 属性的恒定力。
5、角色控制器 Character Controller
1>简介
在 Unity 3D 中,游戏开发者可以通过角色控制器来控制角色的移动。
角色控制器允许游戏开发者在受制于碰撞的情况下发生移动,而不用处理刚体
角色控制器不会受到力的影响,在游戏制作过程中,游戏开发者通常在任务模型上添加角色控制器组件进行模型的模拟运动
2> 属性
6、关节 Joint
1> 简介
在 Unity 3D 中,物理引擎内置的关节组件能够使游戏对象模拟具有关节形式的连带运动
关节对象可以添加至多个游戏对象中,添加了关节的游戏对象将通过关节连接在一起并具有连带的物理效果
需要注意的是,关节组件的使用必须依赖刚体组件
2> 分类
Hinge Joint 铰链关节
1、铰链关节 (Hinge Joint) 将两个刚体组合在一起,对刚体进行约束,让它们就像通过铰链连接一样移动。
2、铰链关节非常适合用于门,但也可用于模拟链条、钟摆等对象
Fixed Joint 固定关节
1、 固定关节 (Fixed Joint) 将对象的移动限制为依赖于另一个对象。这有点类似于管控 (Parenting),但是实现的方式是通过物理系统而不是变换 (Transform) 层级视图。
2、使用固定关节的最佳场合是在希望对象可以轻松相互分离时,或者在没有管控情况下连接两个对象的移动。
Spring Joint 弹簧关节
1、弹簧关节 (Spring Joint) 将两个刚体连接在一起,但允许两者之间的距离改变,就好像它们通过弹簧连接一样
Character Joint 角色关节
1、角色关节 (Character Joint) 主要用于布娃娃效果。此类关节是延长的球窝关节,可在每个轴上限制该关节
Configurable Joint 可配置关节
1、可配置关节 (Configurable Joint) 包含其他关节类型的所有功能,并提供更强大的角色移动控制。
2、当您想要自定义布娃娃的运动并对角色强制实施某些姿势时,这种关节特别有用。
3、使用可配置关节还可以将关节修改为您自行设计的高度专业化关节
3> 属性
a) Hinge Joint 铰链关节
b) Fixed Joint 固定关节
c) Spring Joint 弹簧关节
d) Character Joint 角色关节
示例
扭转轴(用辅助图标上的橙色椎体可视化)可在很大程度上控制上限和下限,允许按照度数指定上限和下限(限制角度是相对于开始位置进行测量的)。Low Twist Limit > Limit 中的值 –30 和 High Twist Limit > Limit 中的值 60 可将围绕扭转轴(橙色辅助图标)的旋转范围限制在 –30 度到 60 度之间。
Swing 1 Limit 可限制摆动轴的旋转范围(用辅助图标上的绿色轴可视化)。限制角度是对称的。因此,值 30 会将旋转限制在 –30 到 30 之间。
Swing 2 Limit 轴未显示在辅助图标上,但该轴垂直于其他两个轴(即辅助图标上用橙色可视化的扭转轴和辅助图标上用绿色可视化的 Swing 1 Limit 轴)。 角度是对称的,因此值 40 可将围绕该轴的旋转范围限制在 –40 度到 40 度之间。
e) Configurable Joint 可配置关节
声明:
本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:
https://www.wpsshop.cn/w/繁依Fanyi0/article/detail/105162
推荐阅读
article
(五)
unity
shader
基础之——————学习
shader
所需
的
数学基础:下篇(
坐标
空间
:
模型
...
一
、
坐标
空间
上篇文章讲述了如何使用矩阵来表示基本
的
变换
,如平移
、
旋转和缩放,在本节我们将关注如何使用这些
变换
来对
坐标
空间
...
赞
踩
article
Unity
UI
Toolkit
学习笔记-
EditorWindow
_
unity
editorwind...
使用
UI
Toolkit
制作
EditorWindow
_
unity
editorwindow
停靠
unity
editorwi...
赞
踩
article
Unity
UI
-- (3)管理
屏幕
大小
和
锚点
_
unity
中打开网页,并且控制网页
大小
...
为何我们需要
锚点
?现在我们已经将设置按钮放到了
屏幕
的某个角落了。一切看起来似乎很美好,但如果我们移动游戏视图窗口的边界,...
赞
踩
article
Unity
Editor
基础篇(三):
自定义
窗口
Editor
Window_selectiongr...
本文参自:http://mp.weixin.qq.com/s/tMSAIND4Pq0farn2jY8rwg本文为本人学习...
赞
踩
article
Unity3d
windows平台基于3D
Web
View for
Windows
and macO...
之前
Unity3d
的程序在win pc上打开
网页
一般使用Embedded
Browser
插件,也算是比较好用的,不过经过查...
赞
踩
article
Unity
EditorWindow
使用案例...
Unity
EditorWindow
学习笔记了解
EditorWindow
的生命周期:OnEnable():当打开界面的时候...
赞
踩
article
【
Unity
WEBGL
】
WEBGL
发布
后运行时窗口自
适应
浏览器
大小(网页内全屏)_
unity
we...
按照默认设置,
发布
webgl
后,代码如下(
发布
好的文件,根目录index.html文件)<...
赞
踩
article
Unity
编辑器
扩展(一) ——
自定义
Unity
面板
_
unity
在
面板
上设置
自定义
结构...
Unity
编辑器
扩展(一) ——
自定义
Unity
面板
自定义
Menu菜单MenuItem 特性MenuItem 属性可...
赞
踩
article
[
unity3d
]
发布
网页
版
Unity
自适应
网页
大小
_
unity3d
web
页面
大小
设置
...
发布
网页
版,
Unity
3D自适应
网页
大小
。这个问题困扰了我很长时间,今天终于把他解决了,给大家分享一下。这里用Uinty...
赞
踩
article
Unity
:
WebGL
发布后在
浏览器
上运行时窗口大小自适应
_
unity
webgl
适配网页...
unity
webgl
在
浏览器
上自适应
浏览器
窗口大小
_
unity
webgl
适配网页
unity
webgl
适配网页 ...
赞
踩
article
Unity3D
-
Canvas
-UIScaleMode...
Unity
Canvas
UI自适应部分用
Canvas
下的自适应UI Scale Mode:Constant Pixel S...
赞
踩
article
Unity
编辑器开发实战【
Editor
Window
】-
Filter
物体筛选工具_
unity
...
Unity
开发工作中,在Hierarchy窗口搜索栏可以通过物体名称或组件名称对场景中的物体进行搜索,但是并不能满足我们...
赞
踩
article
Unity
工具之
UniWebView
内嵌
网页
/
浏览器
到应用中,
并且
根据
UGUI
大小
放置(简单适...
Unity
工具之
UniWebView
内嵌
网页
/
浏览器
到应用中,
并且
根据
UGUI
大小
放置(简单
适配
UGUI
)目录Un...
赞
踩
article
Unity
编辑器
开发实战【
Editor
Window
】- 构建公司
内
部的PackageManage...
Unity
中的资源包管理器Package Manager为我们提供了模块、工具包的集中管理功能,可在其中下载、升级相应的...
赞
踩
article
Unity
Editor
知识点整理(创建 自定义编辑器窗体 二)_
unity
editor
一秒一...
常用的
Editor
Window 消息方法 //在我们对象被选中的时候调用的,常常用于一些初始化的代码 private v...
赞
踩
article
Unity
代码
设置
UI
尺寸
的一种方法_
unity
设置
ui
大小...
计算
设置
sizeDelta
设置
UI
尺寸
_
unity
设置
ui
大小
unity
设置
ui
大小 ...
赞
踩
article
Unity
---
UGUI
---
Rect
Transform
(矩形变换)
---
锚点
及其相关...
a.
锚点
左右分离
---
此时Pos X 失去意义,被Left和Right取代
---
Left的数值是UI物体的左边框...
赞
踩
article
unity
webgl
自适应
网页
尺寸
_
unity
网页
端
尺寸
...
我使用的是
unity
2019.4 LTS版一共有两步1 在Index.html中修改2 修改css 的内容 位置在打包...
赞
踩
article
Unity
UI
锚点
和
位置
关系
_
unity
锚点
代码怎么改成最左侧...
一、Anchors
锚点
Anchors的设置会直接改变RectTransform中它的
位置
信息;Anchors设置中的X ...
赞
踩
article
Unity
Windows
选择图片并加载_
unity
editorwindow
中
如何加载图集
中
的子...
1.找到System.
Windows
.Forms.dll,并放在project
中
的Plugins文件夹下。 “”_uni...
赞
踩
相关标签
unity shader
游戏开发
坐标空间
顶点变换
shader数学基础
unity
UI Toolkit
EditorWindow
ui
锚点
Anchor
Pivot
Unity内嵌网页
Unity网页通信
Unity VR 网页
Unity Web交互
Unity内置浏览器
编辑器
Unity
WEBGL
自适应浏览器
前端
web
html