[Unity3D]简单的UGUI滑条控制物体移动
滑条控制物体移动
在做作业的时候需要用滑条控制物体的直线滑动,简单写了一下,在这里分享一下
1、效果
2、用法
- 创建一个canvas
- 在canvas上创建一个slider,命名为Mslider
- 给Mslider加上MySlider脚本
- 将目标物体赋给target
- 将Mslider的slider组件拖动赋给MySlider脚本的slider
- 选择移动方向,目前有X、Y、Z三格方向可选择
- 设定left_bottom_back和right_top_forward变量,控制移动的范围,left
3、脚本
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;public enum Axis
{X,Y,Z
}
public class MySlider : MonoBehaviour {public GameObject target;//要移动的物体public Slider slider;//slider组件public Axis axis = Axis.X;//按照此轴进行移动public float left_bottom_back = 0;//左边界public float right_up_forward = 1;//右边界private float D_value;//左右边界的差值void Start () {D_value = right_up_forward - left_bottom_back;//以下是将物体的初始位置设为slider的初始位置switch(axis){case Axis.X:target.transform.position += new Vector3(-target.transform.position.x + left_bottom_back + D_value * slider.value, 0, 0);break;case Axis.Y:target.transform.position += new Vector3(0, -target.transform.position.y + left_bottom_back + D_value * slider.value, 0);break;case Axis.Z:target.transform.position += new Vector3(0, 0, -target.transform.position.z + left_bottom_back + D_value * slider.value);break;}slider.onValueChanged.AddListener(delegate{ this.handleValuChange(); });if(!target){Debug.Log("missing target!");}if (!slider){Debug.Log("missing slider!");}}public void handleValuChange(){//当slider的value改变时,调用这个函数,并改变物体的位置switch(axis){case Axis.X:float Xpos = left_bottom_back + D_value * slider.value;target.transform.position += new Vector3(-target.transform.position.x + Xpos, 0, 0);break;case Axis.Y:float Ypos = left_bottom_back + D_value * slider.value;target.transform.position += new Vector3(0, -target.transform.position.y + Ypos, 0);break;case Axis.Z:float Zpos = left_bottom_back + D_value * slider.value;target.transform.position += new Vector3(0, 0, -target.transform.position.z + Zpos);break;}}
}
[Unity3D]简单的UGUI滑条控制物体移动相关推荐
- 【PSOC4】入门学习笔记6——电容触摸滑条控制LED灯
今天主要是学习电容式感应组件,通过滑动板子上的触摸滑条来改变LED灯的亮度. 试验步骤: 1.在原理图界面中放置一个CapSense CSD组件,一个时钟组件,一个PWM组件以及一个数字量输出引脚组件 ...
- Unity使用设置界面Slider控制音量,场景切换时音量滑条都不改变
目录 创建设置界面 设置滑条控制音乐 场景切换保证音量不变 关键点就是使用Playerprefs保存和读取音量数据 创建设置界面 上图为Hierarchy视图中的内容,本案例会使用到setting按钮 ...
- 嵌入式Qt-控制硬件:滑动条控制RGB灯
前面的几篇文章,介绍Qt例程,都是和硬件无关的,Windows平台和嵌入式平台都能运行. 本篇,来测试一下Qt界面控制嵌入式平台上的硬件,以野火i.MX6ULL板子上的RGB LED为例,实现Qt界面 ...
- 我的PSoC学习(三)(PSoC Creator 2.0+win7+CY8C38):Capsense滑条与温控系统PSoC编程需要注意的点
对于Capsense滑条控制灯的亮度,看懂了第五个例子之后,直接改,参考这里的理论知识,http://www.bubuko.com/infodetail-762337.html,就能大概知道滑条的工作 ...
- Unity3D之UGUI基础6:Slider滑条
前文:https://blog.csdn.net/Jaihk662/article/details/87868676(Button按钮) 一.Slider滑条简介 Slider组成部分: Slider ...
- 【Unity】UGUI超级简单的摇杆制作,摇杆控制物体移动
[Unity]UGUI超级简单的摇杆制作,摇杆控制物体移动 目录 1.效果展示 2.博客介绍 3.具体内容和思路 (1)摇杆制作 (2)移动控制 4.资源包下载 5.推送 6. ...
- 【虚拟仿真】Unity3D中实现控制物体的旋转、移动、缩放
推荐阅读 CSDN主页 GitHub开源地址 Unity3D插件分享 简书地址 我的个人博客 大家好,我是佛系工程师☆恬静的小魔龙☆,不定时更新Unity开发技巧,觉得有用记得一键三连哦. 一.前言 ...
- Unity3d 控制物体移动、旋转、缩放
在Unity中通过利用 Input Manager(输入管理器)可以很简单的实现对一个物体进行移动.旋转.缩放操作. 演示代码: //通过虚拟轴控制物体移动.旋转.缩放 public class Mo ...
- Unity3D 之UGUI 滑动条(Slider)
这里来讲解下UGUI 滑动条(Slider)的用法 控件下面有三个游戏对象 Background -->背景 Fill Area --> 前景区域 Handle Slide Area -- ...
最新文章
- iis Service Unavailable解决方法(权限问题)
- 炸!业界难题,跨库分页的几种常见方案
- 【招聘(重庆)】新空间(重庆)科技有限公司招聘.NET Core
- HttpContext
- 电脑解锁后黑屏有鼠标_电脑开机黑屏只有鼠标
- Linux FastDFS 分布式文件系统安装
- 数理统计 —— 总体、样本、统计量及其分布
- Element-ui表格中图片放大简便方法
- 利用python爬虫进行彼岸网图库图片的抓取(bs4)
- 信息通信类部分中文期刊投稿心得(转帖)
- 在 Word 2013 中编写公式并标号
- web前端常见浏览器兼容性问题以及解决技巧
- Java Swing
- 主成分回归之后预测_回归分析之主成分回归
- 南京邮电大学MOOC高级程序语言设计(C++)第五章编程题答案
- PHP反序列化-__wakeup()方法漏洞(CVE-2016-7124)
- xbox蓝牙手柄驱动_如何通过蓝牙将Xbox One控制器连接到Windows
- 子网划分及NAT技术总结
- VMware Vsphere-下
- 嵌入式是什么意思?嵌入式是干什么的?