Unity游戏基础-3(UI层)

本教程开始分享教学内容:Unity游戏基础,部分内容会包括Blender建模基础,Shader基础,动画基础等等,教程面向:建模、技术美术、游戏前端、游戏后端基础,适合美术与设计(数媒、环设、动画、产设、视传、绘画)专业、计算机(计算机科学与技术、软件工程、数媒)的同学学习。

引言

在很多游戏中,例如:原神,都会有一个2D的UI界面,或者说在一些3D应用程序中也会需要2D的UI界面,对游戏或者是应用程序进行设置

这一节教学分辨率设置,在Unity中,分辨率为Resolution类,然后分辨率有以下参数:Width、Height、FullScreenMode、FreshRate,参数名称不重要,重要是参数要什么,从左到右为宽度、高度、全屏模式、屏幕刷新率

所有的分辨率都会在Resolution类里面列出,完整代码在Unity游戏基础-2中有Unity游戏基础-2(初识场景~项目构建)-CSDN博客

设计UI

在Hierarchy窗口,点击UI,添加一个Button(Text Mesh Pro),系统自己加了一个Canvas(画布)作为UI层,点击Import导入这2个组件

将canvasScaler 的UI缩放模式改成:屏幕大小缩放

在Sence窗口切换2D,缩放到合理的大小

在Illustrator中快速画一个设置图标

描边可以粗一点,这里演示就简单搓下,导出,在Unity的Assets下新建文件夹,重命名为Texture、Materials,把图片导入Texture,在Materials里面新建材质球

把刚刚的贴图

拖到反射率左边的灰色框框,调整button的大小,删除Button的文字(你甚至可以直接加一个图片控件,因为图片可以添加Button组件)

回到Button,把button的属性改下,找到Inspector窗口的button,找到导航下拉列表,改成None(只能由鼠标激活事件或者脚本控制)这里是为了防止空格和Enter误触Button

好,接下来设置鼠标点击事件,我们要在点击设置的时候打开canvas,并且保持设置图标一直在前面,此时你的Hierarchy窗口的顺序应该是这样的

后续我们在Panel里面加自己想要的控件,重命名Panel为Setting Form

在Button的Inspector窗口中,你会发现

点击"+"添加处理事件,把上节课的ButtonEventHandler脚本拖到Button上,再把Button拖拽到None

打开No Function,最后一行就是我们的脚本,选择OnButtonPress()

因为这是自定义的函数名称,现在我们按照上面的流程添加其他控件,注意的是需要用到事件只需要在属性窗口的Button里面添加就行,不要重复挂载脚本(给Button挂一个就行了,不然会出现意想不到的BUG)!

重命名

butSetting的脚本挂载:

Button的导航要设置为None!

这里的Apply、Cancel、Close(图片,点击添加组件button模拟)按钮全部在事件里面挂那个设置图标的button,然后选对应的事件(Apply()、Cancel()、Close()),这里的事件在第二节的代码已经给出了!

成品

保存+构建并运行,完美!

相关推荐
丁小未16 小时前
基于MVVM框架的XUUI HelloWorld 新手教程
unity·性能优化·c#·游戏引擎
丁小未17 小时前
基于MVVM框架的XUUI MoreComplex案例
unity·c#
EQ-雪梨蛋花汤18 小时前
【Unity笔记】VR 一体机画面锯齿、模型边缘闪烁、接缝抖动排查:MSAA、Mipmap、Render Scale、Z-Fighting 全流程记录
笔记·unity·vr
前端H18 小时前
生成式 UI 实战:AI 如何重塑前端界面
前端·人工智能·ui
全栈开发圈20 小时前
新书速览|ComfyUI工作流赋能Photoshop
ui·photoshop
松树戈21 小时前
【Godot4精进之路】03~Godot编辑器常用界面介绍
编辑器·游戏引擎·godot
YigAin1 天前
Unity Spine 资源出现白边的解决办法
unity·游戏引擎·spine
招风的黑耳2 天前
从水电大屏到全行业通用方案:用Axure搭建可视化大屏原型的完整方法论
ui·axure·photoshop
郝学胜-神的一滴2 天前
中级OpenGL教程 013:渲染器类架构设计与逐帧渲染流程详解
开发语言·c++·unity·游戏引擎·图形渲染·opengl·unreal
vivo互联网技术2 天前
当 AI 进入推荐系统:从“推什么”到“怎么选”
人工智能·游戏·产品