当前位置: 首页 > news >正文

四川住房建设和城乡建设厅网站济南百度推广优化

四川住房建设和城乡建设厅网站,济南百度推广优化,标准化建设发展委员会官方网站,合肥网站建设首选众龙文章目录 前言素材导入开始1.放背景和中间的圆圈,调整合适的宽高和位置2.添加选择图像框3.添加一些武器道具选择4.书写脚本RadialMenuManager5.绑定脚本和对象6.运行效果,按tab键开启关闭轮盘7.优化添加显示选中的武器文本8.添加鼠标选中放大的效果9.添加…

文章目录

  • 前言
  • 素材导入
  • 开始
    • 1.放背景和中间的圆圈,调整合适的宽高和位置
    • 2.添加选择图像框
    • 3.添加一些武器道具选择
    • 4.书写脚本RadialMenuManager
    • 5.绑定脚本和对象
    • 6.运行效果,按tab键开启关闭轮盘
    • 7.优化添加显示选中的武器文本
    • 8.添加鼠标选中放大的效果
    • 9.添加打开轮盘动画效果
  • 源码下载
  • 参考
  • 完结

前言

欢迎来到这篇文章,今天我们将探讨如何使用Unity制作一个功能——武器轮盘。这个功能不仅可以为你的游戏增添新的元素,还可以用于在抽奖活动中增添趣味性。本文都将指导你如何创建一个类似于CS:GO的武器轮盘功能。

在CS:GO等类似游戏中,武器轮盘是一种常见且备受喜爱的功能。它给予玩家机会从一个包含各种珍贵武器的轮盘中随机选择一个。这种机制不仅提供了一种刺激和可玩性,还帮助玩家获取稀有且强大的武器装备。

我们的目标是在Unity中通过使用一些基本的编程和设计技巧,来创建一个简单而又有趣的武器轮盘功能。通过本文,你将学习如何布置轮盘、添加可选项、实现旋转效果以及处理轮盘停止时选择的结果。

无论你是一个经验丰富的Unity开发者,还是刚刚开始学习游戏开发,本文都将为你提供有用的指导和建议。让我们一起开始吧,为你的游戏或者活动带来全新的乐趣!
在这里插入图片描述
先看本文实现的最终效果,以决定你是否要看下去
在这里插入图片描述
源码在文章末尾

素材导入

在这里插入图片描述

GUI PRO Kit - Sci-Fi,可以去资源商城购买:
https://assetstore.unity.com/packages/2d/gui/gui-pro-kit-sci-fi-194741

也可以下载我准备的(免费)
https://download.csdn.net/download/qq_36303853/88131958

开始

1.放背景和中间的圆圈,调整合适的宽高和位置

在这里插入图片描述

2.添加选择图像框

在这里插入图片描述
通过控制z轴的值控制旋转
在这里插入图片描述
在这里插入图片描述

3.添加一些武器道具选择

在这里插入图片描述

4.书写脚本RadialMenuManager

// 引入所需的库
using System.Collections;
using System.Collections.Generic;
using UnityEngine;// 定义一个名为RadialMenuManager的公共类,该类继承自MonoBehaviour
public class RadialMenuManager : MonoBehaviour
{// 定义公共变量public Transform center;public Transform selectobject;public GameObject RadialMenuRoot;bool isRadialMenuActive;// 在第一帧更新之前调用Start方法void Start(){// 初始化RadialMenu为非激活状态isRadialMenuActive = false;//默认关闭轮盘RadialMenuRoot.SetActive(false);}// 每一帧都会调用Update方法void Update(){// 检测是否按下了tab键if (Input.GetKeyDown(KeyCode.Tab)){// 切换RadialMenu的激活状态isRadialMenuActive = !isRadialMenuActive;if (isRadialMenuActive){// 如果RadialMenu处于激活状态,则设置RadialMenuRoot为激活RadialMenuRoot.SetActive(true);}else{// 如果RadialMenu处于非激活状态,则设置RadialMenuRoot为非激活RadialMenuRoot.SetActive(false);}}// 如果RadialMenu处于激活状态if (isRadialMenuActive){// 计算中心位置和鼠标位置的差值Vector2 delta = center.position - Input.mousePosition;// 计算角度float angle = Mathf.Atan2(delta.y, delta.x) * Mathf.Rad2Deg;angle += 180;for (int i = 0; i < 360; i += 45){if (angle > i && angle < i + 45){// 设置选中对象的旋转角度selectobject.eulerAngles = new Vector3(0, 0, i);}}}}
}

5.绑定脚本和对象

在这里插入图片描述

6.运行效果,按tab键开启关闭轮盘

在这里插入图片描述

7.优化添加显示选中的武器文本

在这里插入图片描述
补充脚本

using TMPro;//文本组件
public TextMeshProUGUI HighlightedWeaponName;
//道具名称列表
public string[] InventoryWeaponNames;...int index = 0;
for (int i = 0; i < 360; i += 45){if (angle > i && angle < i + 45){// 设置选中对象的旋转角度selectobject.eulerAngles = new Vector3(0, 0, i);//显示对应名称HighlightedWeaponName.text = InventoryWeaponNames[index];}index++;
}

绑定文本和配置武器名称,注意武器是按逆时针排序的
在这里插入图片描述
效果
在这里插入图片描述

8.添加鼠标选中放大的效果

补充代码

//储存道具列表
public Transform[] itemSlots;...int index = 0;
for (int i = 0; i < 360; i += 45){if (angle > i && angle < i + 45){// 设置选中对象的旋转角度selectobject.eulerAngles = new Vector3(0, 0, i);HighlightedWeaponName.text = InventoryWeaponNames[index];//设置只有选中的进行缩放foreach(Transform t in itemSlots){t.transform.localScale = new Vector3(1, 1, 1);}itemSlots[index].transform.localScale = new Vector3(1.3f, 1.3f, 1.3f);}index++;
}

绑定道具,记得顺序不要错,前面我没有注意道具顺序,所以道具都是乱的,所以这里我重新调整了道具的顺序
在这里插入图片描述

效果
在这里插入图片描述

9.添加打开轮盘动画效果

新增动画,通过动画录制功能,很快就可以实现
在这里插入图片描述
最终效果在这里插入图片描述

源码下载

https://download.csdn.net/download/qq_36303853/88137246

参考

【视频】https://www.youtube.com/watch?v=pmqs5zsKTTs

完结

赠人玫瑰,手有余香!如果文章内容对你有所帮助,希望你不要吝啬自己的点赞评论和关注,第一时间告诉我,你的每一次支持都是我不断创作的最大动力。当然如果你发现了文章中存在错误或者有更好的解决方法,也欢迎评论私信告诉我哦!

好了,我是向宇,https://xiangyu.blog.csdn.net/

一位在小公司默默奋斗的开发者,出于兴趣爱好,于是最近才开始自习unity。如果你有任何问题,欢迎你来评论私信告诉我, 虽然有些问题我可能也不一定会,但是我会查阅各方资料,争取给出最好的建议,希望可以帮助更多想学编程的人,共勉~
在这里插入图片描述

http://www.hkea.cn/news/836900/

相关文章:

  • 做网站常用的css最近三天的新闻热点
  • 全国人大常委会副委员长登封seo公司
  • 顶岗实践网站开发推广管理
  • 九号公司网站优化效果
  • 模板网站建设方案北京seo排名收费
  • 做箱包关注哪个网站泰州seo平台
  • 如何给网站做流量站长工具seo
  • 桂林网站开发建设推广任务接单平台
  • 化妆品 网站建设案例seo超级外链工具免费
  • 网站建设的广告语seo自动工具
  • 有专门做市场分析的网站么太原关键词优化报价
  • 网站文化建设搜索引擎推广的常见形式有
  • wordpress分类目录消失泸州网站seo
  • 易云巢做网站公司seo入门到精通
  • 新津网站建设百度ai助手入口
  • 做学校网站什么文案容易上热门
  • 网站开发技术包括郑州网站关键词排名
  • 网站开发预算怎么算百度竞价ocpc
  • 成都锐度设计公司怎么样优化大师怎么提交作业
  • 租用网站服务器东莞市网站建设
  • 馆陶县网站网站运营管理
  • 西双版纳傣族自治州医院seo搜索优化网站推广排名
  • wordpress站点网址小吃培训2000元学6项
  • 郑州网站制作天强科技seo百度发包工具
  • 江阴市住房与建设局网站seo工资多少
  • wordpress image.php南宁百度首页优化
  • 谢家华做网站百度指数与百度搜索量
  • wordpress 安装 ubuntu整站优化代理
  • 做公司网站协议书模板下载百度竞价推广公司
  • 福田蒙派克6座二手值多少钱重庆seo点击工具