Unity中UI系统2——NGUI

NGUI概述

基础知识

Ngui下载和导入

Ngui基础

三大基础组件

Root------控制分辨率自适应模式的基础
Panel------控件显示的基础
EventSystem(UICamera)输入事件监听的基础

图集制作

练习:

三大基础控件

Sprite------精灵图
Label------文本控件
Texture------大图控件

其他组合控件

Button------按键

练习:

Toggle------单选多选框控件

练习:

先添加音效代码

创建音效数据类

游戏面板添加监听

Input------文本输入控件

练习:

GamePanel ------ 添加按钮和文本

ChangeNamePanel ------ 脚本

Popuplist------下拉列表控件

练习:

Slider------滑动条控件

练习:

GamePanel 添加控件

MusicData 添加数据

TankObj 中开火时改变音量大小

Scrollbar 和 Progressbar------滚动条和进度条

练习:

GamePanel 添加控件

Tank 添加逻辑

ScrollView ------ 滚动视图

练习:

GamePanel 添加按钮

添加------BagPanel 面板

Anchor锚点组件

练习:

NGUI进阶

Eventlistener 和 EventTrigger 特殊事件监听相关

练习:

拼界面:

GamePanel 添加逻辑

Tank 移动逻辑

DrawCall

练习:

NGUI字体

方法一:

方法二:

练习:

NGUI缓动

练习:

NGUI中模型和特效

其他

练习:

GamePanel添加逻辑

总结

登录面板

注册面板

服务器选择面板

服务器面板

提示面板

实践小项目

需求分析

流程分析

UML类图

准备工作

提示面板

拼面板

提示面板功能制作

建立面板基类

提示面板逻辑

登录面板

拼面板

登录面板功能制作

注册面板

拼面板

注册面板功能

服务器面板

拼面板

服务器面板功能

选服面板

选服面板配置文件

拼面板

选服面板左侧按钮功能

选服面板右侧按钮功能

选服面板功能

第一部分

LoginMgr 中添加Server管理相关代码

ChooseServerPanel 类

ServerItem 添加逻辑

第二部分 (进行一些逻辑的串联)

1.初始化选服面板的内容

ServerPanel 中调用

2.登录按钮 逻辑更改

3.点击 服务器选择面板 右侧服务器按钮时 要处理的逻辑

4.处理自动登录逻辑

但发现所有面板都没有显示

因为各面板几乎同时初始化,但有面板先初始化然后跑完了自己的逻辑把自己隐藏了,而互相调用后顺序不对导致所有面板都隐藏了!

解决:设置脚本执行的时间先后

5.在 ServerPanel 面板添加退出按钮

6.注册成功后 重置登录面板信息

完成

视频展示:

视频上传出问题了,等能上传在补上。

总结

面向对象的编程,面向抽象!

测试

试着自己实现一遍!

自己实现视频:

视频上传出问题了,等能上传在补上。

相关推荐
丁小未2 小时前
Unity AssetBundle商业化项目资源方案
unity·游戏引擎·assetbundle·unity框架
unityのkiven6 小时前
通过 Unity 实现杀戮尖塔2式卡牌系统与机制
unity·游戏引擎
郝学胜-神的一滴6 小时前
中级OpenGL教程 020:巧用数组与循环实现多点点光源渲染,告别冗余代码重构方案
c++·unity·游戏引擎·godot·图形渲染·unreal
春卷同学7 小时前
HarmonyOS掌上记账APP开发实践第29篇:条件渲染与 ForEach — 动态 UI 的构建策略
ui·华为·harmonyos
Duo1J8 小时前
【UE】Slate 编辑器工具开发01 - Slate语法 & 常用控件
ue5·编辑器·游戏引擎·ue4
qq_170264758 小时前
unity的锁帧和垂直同步
unity·游戏引擎
小小测试开发8 小时前
Midscene.js:14K Stars 视驱 UI 自动化框架,用截图替代 DOM 选择器写测试
javascript·ui·自动化
不吃辣4908 小时前
从0-1学习导航页面布局优化和搭建
ui·平面·前端框架
承渊政道9 小时前
飞算Java炫技赛:Java×Unity数字孪生园区平台的从零落地记录
java·开发语言·unity·技术分享·vibe coding·飞算javaai·飞算java ai炫技赛
unityのkiven19 小时前
Unity 共享材质修改问题与 MaterialPropertyBlock 解决方案
unity·游戏引擎·材质