首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >EasyTouch☀️ 五、实现限制物体缩放大小

EasyTouch☀️ 五、实现限制物体缩放大小

作者头像
星河造梦坊官方
发布于 2024-08-14 09:23:05
发布于 2024-08-14 09:23:05
11500
代码可运行
举报
运行总次数:0
代码可运行

📢 本章效果展示

EasyTouch中的缩放,会使得物体缩放到负数,物体比例到0后接下来会变大。

因此我们要限制最小的缩放比例,避免出现这个问题。

🟥 限制物体缩放大小

1️⃣ 修改QuickPinch缩放脚本

盒子上配置好QuickPinch缩放脚本,该脚本修改内容如下:

当前缩放为判断x轴比例。各位可根据需要修改

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
        void On_Pinch(Gesture gesture)
        {
            if (actionTriggering == ActionTiggering.InProgress && pinchDirection == ActionPinchDirection.All)
            {
                if (GetComponent<ScaleLimit>())
                {
                    if (
                        ((transform.localScale.x >= GetComponent<ScaleLimit>().sx_min) && (transform.localScale.x <= GetComponent<ScaleLimit>().sx_max)) ||
                        ((transform.localScale.x < GetComponent<ScaleLimit>().sx_min) && gesture.deltaPinch > 0) ||
                        ((transform.localScale.x > GetComponent<ScaleLimit>().sx_max) && gesture.deltaPinch < 0)
                        )
                        DoAction(gesture);
                }
                else
                    DoAction(gesture);
            }
        }

2️⃣ 挂载缩放限制脚本

脚本内容如下,并设置好限制的缩放大小

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
using UnityEngine;

public class ScaleLimit : MonoBehaviour
{
    public float sx_min;
    public float sx_max;
}

大家还有什么问题,欢迎在下方留言!

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-09-09,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
SteamVR 1.x☀️二、实现凝视效果——基于[CameraRig]
通过跟踪头部运动,设置一个代表光标的准星,碰触物体后改变位置和朝向,贴近被凝视物体。物体a被凝视一定时间后消失,物体b被凝视一定时间后被击中
星河造梦坊官方
2024/08/14
2980
SteamVR 1.x☀️二、实现凝视效果——基于[CameraRig]
小功能⭐️关于Unity Collider Physics.Overlap
Physics.Overlap **功能:**以自身形状,向外,发射设定好长度大小的射线。可获取到射线检测到的物体。
星河造梦坊官方
2024/08/16
3190
小功能⭐️关于Unity Collider Physics.Overlap
AR涂涂乐⭐六、 UGUI精灵格式、自动延迟截图、优化“4”、移出扫描框终止截图进程
本章注意事项: 1、要作为UGUI使用的图片,格式应该精灵格式,即其Texture Type——Sprite(2D and UI) 2、之前UI显示的画面都是Unity自动生成的UI,所以不需要我们改动,但我们自己添加的需要改成上述格式 3、我们在代码中确定了识别框UI的大小,所以一定不能在Unity中随意拖动识别框改变它的大小,否则计算不成功。
星河造梦坊官方
2024/08/14
1630
Vuforia⭐二、动态修改识别目标和3D物体
2、导入Vuforia SDK,并将ARCamera放置到场景,激活要识别的Datasets。由于激活了Datasets,这时,尽管没有放置ImageTarget,运行游戏,仍可看到Vuforia自动创建了多个带有ImageTargetBehaviour的New Game Object
星河造梦坊官方
2024/08/15
5540
Vuforia⭐二、动态修改识别目标和3D物体
unity3d:控制模型单指旋转,双指缩放,并停止控制一段时间后自转
立羽
2023/08/24
6110
Unity-BattleStar丨9. BattleStar实战:给游戏添加物理系统
我们发现,在Hierarchy里面有GameOverPosition,它代表着我们到达该地,将取得游戏胜利。我们添加自动寻路脚本,观察在迷宫中如何到达目的地。我们先将FPSController设置为NavMesh Agent,自动寻路到该位置看看实际效果。
星河造梦坊官方
2024/08/14
2270
Unity-BattleStar丨9. BattleStar实战:给游戏添加物理系统
AR开发-(三)Leap Motion的上手使用
终于到了要应用的时候了,我们可以摆放一些3D物体让我们的物体丰富起来,这也是做项目的初衷。
孙寅
2020/06/02
6630
EasyTouch基本用法
EasyTouch 被设为单例。就算 Hierarchy 中不创建 EasyTouch。在场景运行时,系统会自动完成创建。
全栈程序员站长
2022/09/20
8450
EasyTouch基本用法
如何在 Unity 2D 和 3D 中放大或缩小以及点击屏幕
在示例代码中,实现了放大或缩小和点击功能。在手机的图库中,缩放和平移/拖动图像时,它具有相同的行为。此示例代码对 unity2d 和 unity3d 对象都起作用。它独立于摄像机;无论主摄像机是 tk2d 摄像机 或 简单的摄像机以及它的投影类型是正交或是透视。
hrscy
2018/08/30
2.5K0
unity3d之核心类介绍
Unity3D的最基本的核心类型。包括Object、GameObject、Component、Transform、Behaviour、Renderer、Collider、Rigidbody、Camera、Light、MonoBehaviour等。
李小白是一只喵
2020/11/12
1.2K0
面向小白!在Unity中实现最简单的人物移动脚本
网上关于角色移动的文章太多太多了,就我自己整理的时候都发现写了好多篇(因为有不同的方案),今天就将目前已知的移动角色的方案总结出来,毕竟是一个资源整合的时代,谁也不想找个角色移动的脚本都要找好几篇文章对吧
恬静的小魔龙
2022/08/07
2.8K0
面向小白!在Unity中实现最简单的人物移动脚本
Unity脚本编程:C#脚本中的常用组件详解
在Unity游戏开发中,C#脚本是控制游戏逻辑的核心工具。通过编写脚本,开发者可以控制游戏对象的行为、交互和动态变化。本文将深入探讨Unity脚本编程中常用的C#脚本组件,包括 Transform、Rigidbody、Collider、Input、Time 和 Mathf,并通过示例代码展示它们的实际应用。
Front_Yue
2025/03/20
6130
Unity脚本编程:C#脚本中的常用组件详解
鼠标控制物体旋转、移动、缩放(Unity3D)
一、前言 Unity3D对于鼠标操作物体的旋转、移动、缩放的功能点使用的比较多。 今天就分享如何使用Unity实现鼠标对于物体的旋转、移动、缩放。 效果图: 二、知识点 Input.GetMouseButton(0) 获取鼠标输入,参数为一个int值 为0的时候获取的是左键 Input.GetMouseButton(1) 为1的时候获取的是右键 Input.GetMouseButton(2) 为2的时候获取的是中键(就是那个滑轮) Input.GetMouseButton 鼠标按压 I
恬静的小魔龙
2022/08/07
4.9K1
鼠标控制物体旋转、移动、缩放(Unity3D)
【Unity3D】Unity 游戏画面帧更新 ( 游戏物体 GameObject 移动 | 借助 Time.deltaTime 进行匀速运动 )
在 Unity 中 , 如果想要让 游戏物体 GameObject 移动 , 则需要在 MonoBehaviour#Update() 函数 中 , 不断的修改 物体的 Transform#localPosition 坐标位置 ;
韩曙亮
2023/03/30
9420
【Unity3D】Unity 游戏画面帧更新 ( 游戏物体 GameObject 移动 | 借助 Time.deltaTime 进行匀速运动 )
VR开发--HTC Vive基础(2):瞬移功能实现
因为HTC Vive活动范围有限制(3m * 5m),所以我们在实际的使用中,为了更好的浏览场景,查看场景,会使用这种移动的方式,达到游戏中的视野移动。 一般来说就是手柄选取一个位置,通过扳机键确认移动。 移动的方式有两种:一种是水平移动即X,Z轴移动;另一种就是垂直移动,即Y轴移动。
孙寅
2020/06/02
9870
【Unity3D入门教程】使用C#脚本控制游戏对象
使用C#脚本控制游戏对象,是一项必备的基本技能。Unity3D可以使用的脚本有C#和javascript等。我们主要讲注意力集中在C#上。本文将会介绍怎样使用脚本控制场景中的游戏对象。
全栈程序员站长
2022/09/23
1.6K0
【Unity3D入门教程】使用C#脚本控制游戏对象
Unity 如何实现卡片循环滚动效果
功能需求如图所示,点击下一个按钮,所有卡片向右滚动,其中最后一张需要变更为最前面的一张,点击上一个按钮,所有卡片向左滚动,最前面的一张需要变更为最后一张,实现循环滚动效果。
CoderZ
2022/12/26
3.5K0
Unity 如何实现卡片循环滚动效果
Unity开发微信跳一跳小游戏
首先建一个3D空项目,要记住项目名称不能有中文、空格、特殊字符(别问我是怎么知道的T_T)。
叶茂林
2023/07/13
4100
Unity开发微信跳一跳小游戏
HarmonyOS 开发实践 —— 基于手势的图片预览与缩放
1、使用组合手势GestureGroup,同时绑定捏合手势PinchGesture和滑动手势PanGesture,设置组合手势识别模式为并行识别模式:Parallel,并行识别组合手势中注册的手势将同时进行识别,直到所有手势识别结束,并行识别手势组合中的手势进行识别时互不影响。
小帅聊鸿蒙
2024/12/09
5450
VBA实战技巧22:调整XY图表缩放比例以获取正确的宽高比
目标:想要调整XY(散点图)图表,以使两个轴的单位坐标轴值具有相同的比例。也就是说,需要调整图1中的图表,以便成为如图2所示的正方形和圆形。
fanjy
2021/06/01
2.3K0
VBA实战技巧22:调整XY图表缩放比例以获取正确的宽高比
推荐阅读
相关推荐
SteamVR 1.x☀️二、实现凝视效果——基于[CameraRig]
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验