unity学习笔记13

一、常用物理关节

Unity中的物理关节(Physics Joints)是用于在游戏中模拟和控制物体之间的连接。物理关节允许你在对象之间应用各种约束,例如旋转、移动或固定连接,以模拟真实世界中的物理交互。

物理关节类型:

1.Fixed Joint(固定关节): 固定关节将两个物体连接在一起,使它们不能相对移动。这种关节通常用于创建可靠的连接,如门或机械臂。

2.Hinge Joint(铰链关节): 铰链关节允许物体在一个轴周围旋转。这种关节类似于门的铰链,允许对象绕一个点旋转。

3.Spring Joint(弹簧关节): 弹簧关节允许对象之间的相对运动,并在这种相对运动中引入弹簧效果。可以使用弹簧关节模拟弹簧振动或其他弹性连接。

4.Character Joint(角色关节): 角色关节允许在物体上应用限制和驱动,以模拟角色动作。这在模拟人物关节,如膝盖或肩膀,非常有用。

5.Configurable Joint(可配置关节): 可配置关节是一种灵活的关节,可以配置为模拟各种不同类型的连接,包括球关节、铰链关节等。

6.Slider Joint(滑动关节): 滑动关节允许两个物体沿一个轴相对移动。这对于创建滑动门或抽屉等效果非常有用。

7.Distance Joint(距离关节): 距离关节限制两个物体之间的距离。这可以用于模拟绳索、弹簧等。

8.Wheel Joint(车轮关节): 车轮关节是一种特殊类型的关节,专门用于模拟车辆的轮子运动。

示例:铰链关节

现在给物体加一个Hinge Joint(铰链关节),让其达到开关门的效果。

图中的灰色的箭头就是铰链的方向,物体是绕着铰链方向旋转的。

要达到门的开关效果就要改变箭头的位置,让其在左边并朝向上方。修改如下属性:

Anchor(锚点)属性:这决定了Hinge Joint连接的两个物体相对于彼此的位置。

如果你将Anchor属性设置为(0, 0, 0),那么连接的两个物体的中心将完全重合。

Axis属性定义了物体围绕其旋转的轴。轴是一个单位向量,指示旋转的方向。

例如,如果Axis属性设置为(0, 1, 0),物体将绕Y轴旋转。

修改好之后效果如下:

当物体去撞门,那么门就会绕着铰链旋转

注意事项:

当在使用Hinge Joint时,确保连接的两个物体都有刚体组件,因为物理关节需要作用于刚体

示例:弹簧关节

给两个物体加上刚体,给上面的物体的刚体组件开启 是运动学的选项,这样运行游戏时只有下面的物体向下掉。

现在要给这个两个物体之间加上弹簧关节,为上面的物体加上 Spring  Joint 组件,然后将下面的物体拖动到已连接实体位置

运行游戏后下面的物体他就不会掉落到地面上,而是有弹簧连接的效果


 

二、物理材质

在Unity中,物理材质(Physics Material)是一种用于控制碰撞和摩擦的资源。物理材质通常应用于 Collider 组件,以调整对象之间的物理交互。

作用:

摩擦控制: 物理材质用于调整碰撞体之间的表面摩擦力。通过设置摩擦力和滑动摩擦力,可以模拟不同表面之间的摩擦效果,如冰面或沙地。

弹性和弹力: 弹性和弹力是物理材质中的两个重要属性。它们控制碰撞体在碰撞时的反弹效果,使得物体在碰撞后能够反弹、弹跳或吸收能量。

摩擦力的变化: 物理材质还可以根据相对速度的大小来调整摩擦力,使物体在不同速度下表现出不同的摩擦效果。

创建方式:

在Unity中,可以通过选择Assets -> Create -> Physic Material来创建一个物理材质。

在创建物理材质后,你可以在窗口中设置摩擦力(Friction)和弹力(Bounciness)等属性。摩擦力定义了物体在表面上滑动的难度,而弹力定义了碰撞时的反弹效果。

应用到Collider: 将物理材质应用到对象的Collider组件上。选择对象,然后将物理材质拖放到Collider组件的材质属性上。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/207577.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Ubuntu新手使用教程

🌷🍁 博主猫头虎(🐅🐾)带您 Go to New World✨🍁 🦄 博客首页——🐅🐾猫头虎的博客🎐 🐳 《面试题大全专栏》 🦕 文章图文…

JavaScript类型判断:解密变量真实身份的神奇技巧

文章目录 1. typeof运算符2. instanceof运算符3. Object.prototype.toString4. Array.isArray5. 使用constructor属性6. 使用Symbol.toStringTag7. 使用is类型判断库8. 谨慎使用隐式类型转换结语 🎉JavaScript类型判断:解密变量真实身份的神奇技巧 ☆* o…

LeetCode105.从前序和中序遍历序列构造二叉树

这道题看完题想了几分钟就想到大概的思路了,但是在写的时候有很多细节没注意出了很多问题,然后写了1个多小时,其实这道题挺简单的。 首先,最基本的知识,先序遍历是根左右,中序遍历是左根右,那么…

Unittest(1):unittest单元测试框架简介setup前置初始化和teardown后置操作

unittest单元测试框架简介 unittest是python内置的单元测试框架,具备编写用例、组 织用例、执行用例、功能,可以结合selenium进行UI自动化测 试,也可以结合appium、requests等模块做其它自动化测试 官方文档:https://docs.pytho…

【ChatGLM3-6B】Docker下部署及微调

【ChatGLM2-6B】小白入门及Docker下部署 注意:Docker基于镜像中网盘上上传的有已经做好的镜像,想要便捷使用的可以直接从Docker基于镜像安装看Docker从0安装前提下载启动访问 Docker基于镜像安装容器打包操作(生成镜像时使用的命令&#xff0…

C++11线程以及线程同步

C11中提供的线程类std::thread,基于此类创建一个新的线程相对简单,只需要提供线程函数和线程对象即可 一.命名空间 this_thread C11 添加一个关于线程的命名空间std::this_pthread ,此命名空间中提供四个公共的成员函数; 1.1 get_id() 调用命名空间s…

电商营销场景的RocketMQ实战01-RocketMQ原理

架构图 Broker主从架构与集群模式 RocketMQ原理深入剖析 Broker主从架构原理 HAConnection与HAClient Broker基于raft协议的主从架构 Consumer运行原理 基础知识 001_RocketMQ架构设计与运行流程分析 RocketMQ这一块,非常关键的一个重要的技术,面试的时候…

键盘打字盲打练习系列之指法练习——2

一.欢迎来到我的酒馆 盲打,指法练习! 目录 一.欢迎来到我的酒馆二.开始练习 二.开始练习 前面一个章节简单地介绍了基准键位、字母键位和数字符号键位指法,在这个章节详细介绍指法。有了前面的章节的基础练习,相信大家对盲打也有了…

设计模式-结构型模式之适配器设计模式

文章目录 一、结构型设计模式二、适配器模式 一、结构型设计模式 这篇文章我们来讲解下结构型设计模式,结构型设计模式,主要处理类或对象的组合关系,为如何设计类以形成更大的结构提供指南。 结构型设计模式包括:适配器模式&…

Day04:每日一题:2661. 找出叠涂元素

2661. 找出叠涂元素 给你一个下标从 0 开始的整数数组 arr 和一个 m x n 的整数 矩阵 mat 。 arr 和 mat 都包含范围 [1,m * n] 内的 所有 整数。从下标 0 开始遍历 arr 中的每个下标 i ,并将包含整数 arr[i] 的 mat 单元格涂色。请你找出 arr 中在 mat…

linux 磁盘管理、分区管理常用命令

文章目录 基础命令挂载新硬盘/分区添加内存交换分区swaplvm分区管理模式 基础命令 查看目录文件大小 du -sh /backup du -sh /backup/* du -sh *查看磁盘挂载信息 df -lhT查看某个目录挂载在哪个分区,以及分区的磁盘使用情况 df [目录] #例如:df /ho…

Scrapy爬虫异步框架之持久化存储(一篇文章齐全)

1、Scrapy框架初识(点击前往查阅) 2、Scrapy框架持久化存储 3、Scrapy框架内置管道(点击前往查阅) 4、Scrapy框架中间件(点击前往查阅) 5、Scrapy框架全站、分布式、增量式爬虫 Scrapy 是一个开源的、…

对于Web标准以及W3C的理解、对viewport的理解、xhtml和html有什么区别?

1、对于Web标准以及W3C的理解 Web标准 Web标准简单来说可以分为结构、表现、行为。 其中结构是由HTML各种标签组成,简单来说就是body里面写入标签是为了页面的结构。 表现指的是CSS层叠样式表,通过CSS可以让我们的页面结构标签更具美感。 行为指的是…

【Python表白系列】这个情人节送她一个漂浮的爱心吧(完整代码)

文章目录 漂浮的爱心环境需求完整代码详细分析系列文章 漂浮的爱心 环境需求 python3.11.4PyCharm Community Edition 2023.2.5pyinstaller6.2.0(可选,这个库用于打包,使程序没有python环境也可以运行,如果想发给好朋友的话需要这…

c/c++概念辨析-指针常量常量指针、指针函数函数指针、指针数组数组指针

概念澄清: 统一规则: 不管是XX指针,还是指针XX,后者是本体,前者只是个定语,前者也可以替换为其他同类(例如字符串),帮助理解。 XX指针: 可简单理解为&#…

基于helm的方式在k8s集群中部署gitlab - 部署(一)

文章目录 1. 背景说明2. 你可以学到什么?3. 前置条件4. 安装docker服务(所有节点)5. 部署k8s集群5.1 系统配置(所有节点)5.2 安装kubelet组件(所有节点)5.2.1 编写kubelet源5.2.2 安装kubelet5.2.3 启动kubelet 5.3 集…

从零开始,用Docker-compose打造SkyWalking、Elasticsearch和Spring Cloud的完美融合

🎏:你只管努力,剩下的交给时间 🏠 :小破站 "从零开始,用Docker-compose打造SkyWalking、Elasticsearch和Spring Cloud的完美融合 前言准备工作编写docker-compose.yml文件为什么使用本机ip为什么skywa…

python中的字符串

字符串 字符串是编程语言中的一种基本数据类型,用于表示一串字符序列。在Python中,字符串是不可变的,也就是说一旦字符串被创建,就无法修改其中的字符。 Python中的字符串可以用单引号或双引号括起来,例如&#xff1…

【LeetCode】 160. 相交链表

相交链表 题目题解 题目 给你两个单链表的头节点 headA 和 headB ,请你找出并返回两个单链表相交的起始节点。如果两个链表不存在相交节点,返回 null 。 图示两个链表在节点 c1 开始相交: 题目数据 保证 整个链式结构中不存在环。 注意&am…

卡码网15 .链表的基本操作III

链表的基础操作III 时间限制:1.000S 空间限制:128MB 题目描述 请编写一个程序,实现以下链表操作:构建一个单向链表,链表中包含一组整数数据。 1. 实现在链表的第 n 个位置插入一个元素,输出整个链表的…