一、准备工作

所需图片资源,包括英雄预制件,人物头像,服装,武器图集和人物动画

1.创建图集,选择NGUI->Open->Atlas Maker,设置图集名称heroAtlas后,选中Textures下的所有图片,点击Create

2.将四个英雄的预制件拖入到Scene中并重新命名为hero0~hero3

3.创建NGUI panel,分别是英雄列表,英雄招式,英雄装备

操作完以上三个步骤后,结构如下:

二、如何操作

1.选中英雄列表,添加一个Sprite,使用图集中的图片mun_pnl_mon,然后依次将英雄头像摆放上去,再给头像添加box Collider和UIbutton。后面的英雄招式和装备操作基本上都是这样的。效果如下:

2.给头像添加点击事件,这里需要创建一个C#脚本,然后添加一个方法OnClick()来控制当前选择的英雄

//1.禁用所有英雄
for(int i=0;i<mHeros.Length;i++)
{mHeros[i].SetActive (false);
}
//显示选择的英雄
mHeros[hIndex[1]-48].SetActive(true);
curHero = mHeros [hIndex [1] - 48];
注意:hIndex是一个string类型,它是英雄头像的名字依次为h0~h3,我使用了hIndex [1]获取它的Ascii值减去0的Ascii48 得到英雄索引值

3.创建一个Empty命名为script,将第二步添加的脚本绑定到它身上。

4.设置英雄头像绑定On Click事件

三、全部代码

using UnityEngine;
using System.Collections;public class HeroSelect : MonoBehaviour {public GameObject[] mHeros;public Texture[] mCloths1;public static GameObject curHero;void Start(){curHero = mHeros[0];}public void OnClick(string hIndex){//1.禁用所有英雄for(int i=0;i<mHeros.Length;i++){mHeros[i].SetActive (false);}//显示选择的英雄mHeros[hIndex[1]-48].SetActive(true);curHero = mHeros [hIndex [1] - 48];}public void HeroCloth(string cIndex){int index = cIndex[1] - 48;SkinnedMeshRenderer render = curHero.GetComponentInChildren<SkinnedMeshRenderer>();switch(curHero.name){case "hero0":render.material.mainTexture=mCloths1[index];break;}}}

【Unity NGUI】学习笔记(一):英雄选择,皮肤更换相关推荐

  1. 【Unity ASE学习笔记】

    Unity ASE学习笔记 一.工具比较 二.ASE插件工具下载 三.ASE界面 主要工作区详解 四.节点 常用节点概览 4.1.贴图节点 4.2.常数节点 4.3.四则运算(+ - * /) 4.4 ...

  2. Unity 2D 学习笔记:游戏实例Sunnyland

    Unity 2D 学习笔记:游戏实例Sunnyland 01安装软件&导入素材 02编辑素材&Tilemap 03图层layer&角色建立 04角色移动 05角色方向& ...

  3. NGUI 学习笔记实战——制作商城UI界面

    Unity3D的uGUI听说最近4.6即将推出,但是目前NGUI等UI插件大行其道并且已经非常成熟,所以我们还是先看眼前吧. 一.实现思想 商城的功能是很多游戏都拥有的,按下一个界面按钮,弹出一个窗体 ...

  4. Unity Shader 学习笔记(33) 全局光照(GI)、反射探针、线性空间和伽马空间、高动态范围(HDR)

    Unity Shader 学习笔记(33) 全局光照(GI).反射探针.线性空间和伽马空间.高动态范围(HDR) 参考书籍:<Unity Shader 入门精要> [<Real-Ti ...

  5. Unity DOTS 学习笔记1 - ECS 0.50介绍和安装

    Unity DOTS 学习笔记1 - ECS 0.50介绍和安装 为什么学习这个技术 ECS的全称为Entity Component System,是最早由暴雪在GDC2017上提出的一个新的游戏设计 ...

  6. Unity Shader 学习笔记(3)URP渲染管线带阴影PBR-Shader模板(ASE优化版本)

    此 Shader 已经不是最新版本,最新版本见本专栏的第四篇文章: Unity Shader 学习笔记(4) 材质面板截图: 功能实现(URP渲染管线下): PBR材质.投射和接收阴影. 代码展示: ...

  7. Unity Shader 学习笔记(27)渲染轮廓线(描边)方法、卡通风格渲染、素描风格渲染

    Unity Shader 学习笔记(27)渲染轮廓线(描边)方法.卡通风格渲染.素描风格渲染 参考书籍:<Unity Shader 入门精要> 渲染轮廓线(描边) 五种方法: 基于观察角度 ...

  8. homeassistant mysql_HomeAssistant学习笔记docker安装的ha更换数据库

    HomeAssistant学习笔记docker安装的ha更换数据库 用了一段时间之后发现日志和历史打开的速度越来越慢,在论坛里查了半天发现是因为HA官方所用数据库导致,官方也给出了相关文档,https ...

  9. homeassistant mysql_学习笔记 篇三:HomeAssistant学习笔记docker安装的ha更换数据库

    学习笔记 篇三:HomeAssistant学习笔记docker安装的ha更换数据库 2018-11-15 12:06:58 4点赞 18收藏 3评论 是返乡过年?还是就地过年?最新一届#双面过节指南# ...

最新文章

  1. 第十六届全国大学生智能车竞赛全国总决赛获奖排行榜
  2. CountDownLatch 的使用小例
  3. Xmind笔记之HTML5+CSS
  4. 音视频技术开发周刊:FFmpeg内置的一个无中生有的音视频输入数据 | 214
  5. Ajax 的乱码问题(2)
  6. wx:for双层循环
  7. JS与PHP向函数传递可变参数的区别
  8. win11如何下载游戏版 Windows11下载游戏版的步骤方法
  9. Atitti.数字证书体系cer pfx attilax总结
  10. 《大数据技术原理与应用》林子雨(第二版)--总结
  11. 2014 年移动设备界面设计有哪些趋势?
  12. excel锁定行,锁定列,同时锁定行和列
  13. nginx实现均衡负载、nginx第三方模块的添加
  14. ChucK初步(13)
  15. 电商订单后台管理系统
  16. 《痞子衡嵌入式半月刊》 第 20 期
  17. 怎么做百度360今日头条1688搜狗下拉词?宙斯下拉、54小超人下拉、超人2下拉
  18. 秋招总结|阿里转正失败,到拿到10个大厂产品offer
  19. USB Type-A/Type-B/Type-C/mini-AB/micro-AB接口简介
  20. arm-linux-g++: command not found,解决Linux “g++: Command not found”报错问题 | 老左笔记

热门文章

  1. Java实验-02 模拟扑克牌游戏的洗牌
  2. codemix java,CodeMix入门基础知识
  3. 计算机图形学 | 实验三:绘制一个四边形
  4. 一场婚礼上,新郎的话(经典)
  5. ORCALE 当表中某个字段存在重复数据时,在它后面加序号
  6. kettle使用Windows任务计划程序定时执行
  7. Scintilla如何自定义语法分析器-VS2010
  8. 个人理财第十二课-掌握定投技巧,学会智能定投
  9. 怎么高效批量调整视频的尺寸大小
  10. SQL 三表关联查询