Unity --- 各种关节(Joints)来模拟物体之间的连接

news/2024/9/17 7:10:55/ 标签: unity, Joint 2D, Joint 3D, 关节

目录

一:2D关节

一:1 固定关节 (Fixed Joint 2D)

功能:

适用场景:

1. 平台游戏中的固定平台:

2. 拼图游戏中的固定部件:

3. 建筑游戏中的固定结构:

 一:2 铰链关节 (Hinge Joint 2D)

功能:

适用场景:

 一:3 弹簧关节 (Spring Joint 2D)

功能:

适用场景:

1. 弹性绳索或弹簧:

2. 弹性碰撞:

3. 物理实验中的弹簧:

一:4 距离关节 (Distance Joint 2D)

功能:

适用场景:

1. 绳索或链条:

2. 固定距离的连接:

3. 悬挂物的连接:

一:5 滑块关节 (Slider Joint 2D)

功能:

适用场景:

1. 滑动门或窗户:

2. 抽屉或滑梯:

3. 传送带或滑行器:

 1.6 车轮关节 (Wheel Joint 2D)

功能:

适用场景:

1. 车辆的车轮:

2. 机器人的行走机构:

3. 机械装置的滚轮:

 1.7 摩擦关节 (Friction Joint 2D)

功能:

适用场景:

1. 滑冰或滑雪:

2. 物体之间的摩擦:

3. 刹车系统:

 1.8 电机关节 (Motor Joint 2D)

功能:

适用场景:

1. 机械臂的线性运动:

2. 飞行器的推进:

3. 传送带的运动:

二:3D关节

 2.1 固定关节 (Fixed Joint 3D)

功能:

适用场景:

1. 平台游戏中的固定平台:

2. 建筑游戏中的固定结构:

3. 虚拟现实中的固定道具:

 2.2 铰链关节 (Hinge Joint 3D)

功能:

适用场景:

1. 车门或舱门:

2. 机械臂的关节

3. 家具的活动部件:

 2.3 弹簧关节 (Spring Joint 3D)

功能:

适用场景:

1. 弹簧床或蹦床:

2. 弹性连接:

3. 悬挂系统的模拟:

 2.4 距离关节 (Distance Joint 3D)

功能:

适用场景:

1. 绳索或链条:

2. 固定距离的连接:

3. 悬挂物的连接:

 2.5 可配置关节 (Configurable Joint 3D)

功能:

适用场景:

1. 复杂机械系统的模拟:

2. 人体关节的模拟:

3. 多自由度机器人的模拟:

 2.6 角色关节 (Character Joint 3D)

功能:

适用场景:

1. 角色的肢体关节

2. 动画中的关节

3. 运动模拟中的关节

总结



一:2D关节

一:1 固定关节 (Fixed Joint 2D)

功能:

将两个刚体固定在一起,使其像一个整体一样移动。


主要属性:
  Connected Body:连接的另一个刚体。
  Break Force/Break Torque:定义关节在受到多大力或扭矩时会断裂。

适用场景:

1. 平台游戏中的固定平台:

在平台游戏中,创建固定的平台或墙壁,使其不会随着其他物体移动而移动。

2. 拼图游戏中的固定部件:

在拼图游戏中,将某些部件固定在一起,形成一个完整的图案。


3. 建筑游戏中的固定结构:

在建筑游戏中,将建筑的各个部分固定在一起,使其成为一个稳固的整体。

############################################################

 一:2 铰链关节 (Hinge Joint 2D)

功能:

允许物体绕一个轴旋转,适用于模拟门、摆锤等。

主要属性:
  Connected Body:连接的另一个刚体。
  Auto Calculate Distance:是否自动计算两物体之间的距离。
  Distance:两物体之间希望保持的距离。
  Use Motor:是否启用电机。
  Motor Speed:电机的目标旋转速度。
  Max Motor Torque:电机能产生的最大力矩。
  Limit:是否启用旋转限制。
  Angle Range:旋转的角度范围。
  Break Force/Break Torque:定义关节在受到多大力或扭矩时会断裂。

适用场景:


1. 门的开合:在游戏中模拟门的开合,使其能够绕一个轴旋转。
2. 吊桥或桥梁的支撑:在建造类游戏中,模拟吊桥或桥梁的支撑结构,使其能够绕轴旋转。
3. 机械臂的关节:在机械臂或机器人游戏中,模拟机械臂的关节,使其能够绕轴旋转。

############################################################

 一:3 弹簧关节 (Spring Joint 2D)

功能:

创建一个弹性连接,允许物体在一定范围内自由移动。


主要属性:
  Connected Body:连接的另一个刚体。
  Auto Calculate Distance:是否自动计算两物体之间的距离。
  Distance:两物体之间希望保持的距离。
  Max Distance:最大允许距离。
  Min Distance:最小允许距离。
  Damping:阻尼系数,用于减少振荡。
  Frequency:弹簧的固有振动频率。
  Break Force/Break Torque:定义关节在受到多大力或扭矩时会断裂。

适用场景:

1. 弹性绳索或弹簧:

在冒险游戏中,模拟弹性绳索或弹簧,使其能够伸缩。


2. 弹性碰撞:

在赛车游戏中,模拟车辆之间的弹性碰撞,使其能够在碰撞后迅速恢复原状。


3. 物理实验中的弹簧:

在物理教育游戏中,模拟弹簧的弹性行为,展示物理学中的弹性原理。

############################################################

一:4 距离关节 (Distance Joint 2D)

功能:

保持两个刚体之间的固定距离。


主要属性:
  Connected Body:连接的另一个刚体。
  Auto Calculate Distance:是否自动计算两物体之间的距离。
  Distance:两物体之间希望保持的距离。
  Damping:阻尼系数,用于减少振荡。
  Break Force/Break Torque:定义关节在受到多大力或扭矩时会断裂。

适用场景:

1. 绳索或链条:

在物理模拟游戏中,模拟绳索或链条,使其保持一定的长度。

2. 固定距离的连接:

在机械臂或起重机游戏中,模拟某些部件之间的固定距离连接。

3. 悬挂物的连接:

在模拟游戏中,模拟悬挂物(如钟摆)的连接,使其保持固定距离。

############################################################

一:5 滑块关节 (Slider Joint 2D)

功能:

允许物体沿一条直线滑动。

主要属性:
  Connected Body:连接的另一个刚体。
  Auto Calculate Distance:是否自动计算两物体之间的距离。
  Distance:两物体之间希望保持的距离。
  Use Motor:是否启用电机。
  Motor Speed:电机的目标线速度。
  Max Motor Force:电机能产生的最大力。
  Lower Angle/Upper Angle:滑动的范围角度。
  Lower Limit Force/Upper Limit Force:在达到极限位置时施加的力。
  Break Force/Break Torque:定义关节在受到多大力或扭矩时会断裂。

适用场景:

1. 滑动门或窗户:

在游戏中模拟滑动门或窗户,使其能够沿轨道滑动。

2. 抽屉或滑梯:

在模拟游戏中,模拟抽屉或滑梯的滑动效果。

3. 传送带或滑行器:

在工厂模拟或运输游戏中,模拟传送带或滑行器的滑动效果。

############################################################

 1.6 车轮关节 (Wheel Joint 2D)

功能:

模拟车轮的运动,允许物体沿地面滚动。
主要属性:
  Connected Body:连接的另一个刚体。
  Auto Calculate Distance:是否自动计算两物体之间的距离。
  Distance:两物体之间希望保持的距离。
  Motor:是否启用电机。
  Motor Speed:电机的目标旋转速度。
  Max Motor Torque:电机能产生的最大力矩。
  Suspension:悬挂系统的设置,包括弹簧和阻尼参数。
  Axis:轮子旋转的轴向。
  Break Force/Break Torque:定义关节在受到多大力或扭矩时会断裂。

适用场景:

1. 车辆的车轮:

在赛车游戏中,模拟车辆的车轮,使其能够沿地面滚动。

2. 机器人的行走机构:

在机器人游戏中,模拟机器人的行走机构,使其能够沿地面移动。

3. 机械装置的滚轮

http://www.ppmy.cn/news/1522551.html

相关文章

【系统架构设计师】命令行风格

命令行风格(Command Line Interface, CLI)是一种用户与计算机程序交互的方式,它主要通过文本命令来执行程序的功能。在这种风格中,用户通过键盘输入命令,程序则通过命令行界面(通常是终端或控制台窗口)显示输出和反馈信息。命令行风格因其高效、灵活和强大的功能而广泛应…

Spring2~~~

注解配置Bean Spring的 IOC 容器检查到注解就会生成对象&#xff0c;但这个注解的具体含义不会识别 配置自动扫描的包 <!--配置容器要扫描的包1. component-scan 要对指定包下的类进行扫描, 并创建对象到容器2. base-package 指定要扫描的包3. 含义是当spring容器创建/初始…

在 Go 语言中使用模块

模块很重要,因为它们允许将相关的代码文件组织到同一个包中,并以一种提高简单性和可重复性的方式组织代码。 1. 开始使用模块 从代码的角度看,模块是 Go 包和文件以及名为 go.mod 的文件的集合。在接下来的步骤中,将学习如何创建模块,然后使用它。 2. 第一步:创建项目目…

MATLAB绘图基础5:MATLAB数据导入

参考书&#xff1a;《 M A T L A B {\rm MATLAB} MATLAB与学术图表绘制》(关东升)。 5.MATLAB数据导入 5.1 从CSV文件读取数据 C S V {\rm CSV} CSV文件是一种纯文本文件&#xff0c;文件中的数据以逗号为分隔符进行字段分隔&#xff0c;每一行数据代表一条记录&#xff0c;每…

力扣416-分割等和子集(Java详细题解)

题目链接&#xff1a;416. 分割等和子集 - 力扣&#xff08;LeetCode&#xff09; 前情提要&#xff1a; 因为本人最近都来刷dp类的题目所以该题就默认用dp方法来做。 最近刚学完01背包&#xff0c;所以现在的题解都是以01背包问题为基础再来写的。 如果大家不懂01背包的话…

人生苦短我用Python Excel文件基本操作

人生苦短我用Python Excel文件基本操作 前言文件基本操作的模块和类pathlib.Path 类os.stat_result 类time.struct_time 命名元组time 模块shutil 模块 示例查看属性拷贝文件重命名文件查找文件批量操作 测试 前言 本文主要介绍通过Python中的pathlib模块&#xff0c;完成Exce…

【Android面试八股文】你能说说FragmentPagerAdapter 和 FragmentStatePagerAdapter的区别吗?

文章目录 一、FragmentPagerAdapter1.1 工作方式1.2 生命周期1.3 优缺点1.4 适用场景1.5 示例二、FragmentStatePagerAdapter2.1 工作方式2.2 生命周期2.3 优缺点2.4 适用场景2.4 示例三、FragmentPagerAdapter和FragmentStatePagerAdapter关于instantiateItem()方法和destroyI…

【Java中的位运算和逻辑运算详解及其区别】

Java中的位运算和逻辑运算详解及其区别 在 Java 编程中&#xff0c;位运算和逻辑运算是常见的两种操作类型。位运算用于操作整数的二进制位&#xff0c;而逻辑运算则是处理布尔值 (boolean) 的运算。本文将详细讲解这两种运算及其主要区别&#xff0c;并给出相应示例。 应用场…

Docker入门学习-01

Docker 官方文档 1. Docker 基础知识 1.1 什么是 Docker&#xff1f; Docker 是一个开源的平台&#xff0c;用于开发、交付和运行应用程序。它使用容器技术&#xff0c;将应用程序及其依赖打包在一个轻量级的可移植容器中。 1.2 Docker 的主要组件 镜像&#xff08;Image&a…

Django form.save 方法的详细分析

在 Django 中&#xff0c;form.save() 方法是用于将表单中的数据保存到数据库的核心方法。它的功能和实现可以分为几个重要的部分&#xff0c;下面就是我对 form.save() 方法的详细分析&#xff1a; 1、问题背景 在 Django 中&#xff0c;我们经常会使用 Form 来处理用户提交的…

2024 年高教社杯全国大学生数学建模竞赛 C 题 农作物的种植策略(详细思路+matlab代码+python代码+论文范例)

持续更新中,2024年数学建模比赛思路代码论文都会发布到专栏内,只需订阅一次! 完整论文+代码+数据结果链接在文末! 一、第一问 问题描述:假定各种农作物未来的预期销售量、种植成本、亩产量和销售价格相对于 2023 年保持稳定,每季种植的农作物在当季销售。如果某种作物每…

mysql基础知识-锁机制

文章目录 锁类型1. 共享锁&#xff08;Shared Locks, S锁&#xff09;2. 排他锁&#xff08;Exclusive Locks, X锁&#xff09;3. 意向锁&#xff08;Intention Locks&#xff09;4. 记录锁&#xff08;Record Locks&#xff09;5. 间隙锁&#xff08;Gap Locks&#xff09;6. …

SpringBoot和Mybatis框架怎么防止SQL注入

在 Spring Boot 和 MyBatis 中&#xff0c;防止 SQL 注入的主要方法包括&#xff1a; 1.使用 MyBatis 的动态 SQL MyBatis 提供了安全构建 SQL 查询的方式&#xff0c;推荐使用动态 SQL 标签&#xff08;如 <if>、<choose>、<foreach> 等&#xff09;构建查…

安卓玩机工具-----通用安卓玩机工具 “搞机助手”界面预览 推荐

在网络中有很多很好玩的工具。方便安卓机型联机使用各种功能。系列博文将详细的演示有些工具的特点与使用方法 搞机助手 作者&#xff1a;流水断崖 目前开发功能有&#xff1a;Twrp recovery全自动刷机&#xff0c;免Root冻结、卸载预装软件&#xff0c;免Root激活&#xff…

Azure和Transformers的详细解释

Azure AI 是微软提供的人工智能 (AI) 解决方案的集合&#xff0c;旨在帮助开发人员、数据科学家和企业轻松构建和部署智能应用程序。以下是对 Azure AI 各个方面的详细解释&#xff1a; Azure AI 主要组件 Azure Cognitive Services&#xff08;认知服务&#xff09;&#xff…

音频-语言大模型原理

重磅推荐专栏: 《大模型AIGC》 《课程大纲》 《知识星球》 本专栏致力于探索和讨论当今最前沿的技术趋势和应用领域,包括但不限于ChatGPT和Stable Diffusion等。我们将深入研究大型模型的开发和应用,以及与之相关的人工智能生成内容(AIGC)技术。通过深入的技术解析和实践经…

【Dash】feffery_antd_componenet 中的 AntdSpace

一、feffery_antd_componenet 中的 AntdSpace feffery_antd_components&#xff08;简称fac&#xff09;中的AntdSpace组件是一个基于Ant Design的Dash第三方组件&#xff0c;它用于在水平或垂直方向上放置多个元素&#xff0c;并提供元素之间的间距。以下是AntdSpace组件的一…

鸿蒙开发中实现自定义弹窗 (CustomDialog)

效果图 #思路 创建带有 CustomDialog 修饰的组件 &#xff0c;并且在组件内部定义controller: CustomDialogController 实例化CustomDialogController&#xff0c;加载组件&#xff0c;open()-> 打开对话框 &#xff0c; close() -> 关闭对话框 #定义弹窗 (CustomDial…

Google Maps API申请和集成到React Native应用中的教程

Google Maps API申请和集成到React Native应用中的教程 访问Google Cloud Console 打开浏览器,访问 https://console.cloud.google.com/使用您的Google账号登录 选择或创建项目 在页面顶部的项目下拉菜单中,选择现有项目或创建新项目如果创建新项目,点击"新建项目",…

本地如何快速启动静态服务器

本地快速启动静态服务器 有许多第三方库可以帮助你快速启动一个静态服务器&#xff0c;甚至无需编写代码。通过命令行运行这些库后&#xff0c;它们会自动启动一个服务器并打开指定端口&#xff0c;展示当前目录下的文件内容&#xff1a; 电脑得提前安装NodeJS 1、http-serv…