时间:2021-05-20
本文实例为大家分享了Unity使用ScrollRect制作摇杆的具体代码,供大家参考,具体内容如下
一. 前言
游戏开发中,摇杆功能是很常见的,Unity的UGUI提供了ScrollRect组件,非常适合用来制作摇杆,效果如下:
二. 实现
1. 制作UI
如下,创建Rocker节点和center节点,分别为摇杆的背景图和摇杆的手柄图。
Rocker节点挂上Rocker脚本(代码见文章最后),并赋值Content对象。
设置MovementType为Elastic。
2. 运行Unity进行测试
运行Unity即可测试摇杆功能。
3. Rocker脚本代码
using UnityEngine;using UnityEngine.UI;public class Rocker: ScrollRect{ protected float mRadius = 0f; protected override void Start() { base.Start(); //计算摇杆块的半径 mRadius = (transform as RectTransform).sizeDelta.x * 0.5f; } public override void OnDrag(UnityEngine.EventSystems.PointerEventData eventData) { base.OnDrag(eventData); var contentPostion = this.content.anchoredPosition; if (contentPostion.magnitude > mRadius) { contentPostion = contentPostion.normalized * mRadius; SetContentAnchoredPosition(contentPostion); } Debug.Log(contentPostion); }}以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
虚拟摇杆在移动游戏开发中,是很常见的需求,今天我们在Unity中,使用UGUI来实现一个简单的虚拟摇杆功能。1.打开Unity,新创建一个UIJoystick.
在Unity3d中开发虚拟摇杆方式有比较多,可以使用EasyTouch、FairyGUI等插件来开发。本文给大家介绍使用Unity3d的原生UGUI来开发出自己
本文实例为大家分享了Unity实现简单虚拟摇杆的具体代码,供大家参考,具体内容如下需求:点击创建一个虚拟摇杆底盘,鼠标拖拽时候上方摇杆会跟随鼠标方向移动,并且不
本文实例为大家分享了Unity实现虚拟摇杆的具体代码,供大家参考,具体内容如下面板上设置一些属性,比如摇杆拖拽的距离,是否始终可视,是否限制虚拟摇杆位置(我是把
本文实例为大家分享了Unity实现虚拟摇杆的具体代码,供大家参考,具体内容如下设置摇杆的背景图片的锚点如下:设置摇杆的锚点为背景图片的中心点。并给摇杆绑定脚本如