游戏开发之UGUI搭建UI界面
来源:互联网 发布:淘宝上发表论文多少钱 编辑:程序博客网 时间:2024/06/05 06:49
游戏开发之UGUI搭建UI界面
UGUI呢是Unity团队开发的unity软件里自己的GUI系统,其实呢,最早许多使用unity的公司很多并不是使用UGUI的,而是使用的NGUI,因为NGUI可能会更加方便,功能更强一点,渲染也比UGUI强一点吧,后来呢,随着Unity公司的壮大,Unity公司把这个NGUI的开发CTO从NGUI公司挖过来了,所以现在的UGUI设计者呢就是这个NGUI的领头羊,好了闲话就不多说,感兴趣的童鞋可以自己去了解历史。今天呢,我把我是用UGUI的一些经验分享一下。UGUI的控件介绍我就不一一介绍了,大家想学习的话,网上都有相应的学习视频,比如SIKI学院,游戏蛮牛都有提供的。
那么在做界面之前呢,大家首先要把发布的平台给定了,因为每个平台的分辨率是不一样的,因为我本人就吃过没设置好分辨率的亏,导致呢,在我发布的平台上呢,UI界面很不美观,所以呢,在最开始的使用一定要先设置分辨率,对应在unity里的Game视图中的左上角位置,那么我把分辨率的设置步骤通过截图演示一下:
点完加号之后呢,有两个选项 1.Aspect Radio根据屏幕的宽高比进行设置的,2.Fixed Resoulution是根据屏幕的分辨率进行设置的。
设置好分辨率之后,有待解决的另一个问题是:调整屏幕的自适应,这个呢,就对应的UGUI的每个控件都有的属性,汉语称锚点,
对应的是在UI中的这个图标:
我们用鼠标点击控件在Inspecter面板上的这个组件
会弹出一个九宫格的图标
按住shift键选中九宫格中的某个位置+鼠标左键 是设置锚点在屏幕中的位置;
按住 alt键选中九宫格中的某个位置+鼠标左键 是设置当前对应的UI控件在屏幕中位置。
然后调整控件在屏幕中的位置,当屏幕不改变分辨率的情况下,拉伸屏幕不会改变控件到锚点的位置,也就是控件距离锚点的宽高距离不会改变。通过对每个控件设置相应的锚点,这也就解决了屏幕的自适应性性问题。
还有一个需要注意的问题呢就是Canvas的设置,Canvas汉译为幕布的意思,每个UI控件都是它的子物体,那么它在Inspecter面板呢有个组件Canvas,这个组件呢,有一系列的属性:
RenderMode:将这个属性选为Screen Space-Camera,接下来呢这个组件会弹出一个属性:Render Camera,然后我们就可以往这个里面拖一个我们自己创建的Camera,这个摄像机呢专门负责向Game视图投射UI层的物体,所以呢,对于这个Camera物体的Camera组件,把它的Culling Mask设为UI层,如果要让一个角色模型或者其他的3d物体出现在Game视图中呢,把相应的物体的Layer也设为UI,还需要调整Camera组件的Projection属性,将其模式设为为Orthographic,Projection属性有两个选择属性,一个是透视Perspective,Game视图中的物体会随着相机Camera距离Canvas的距离而变化,另一个是Orthographic,在这个模式下,Game视图中出现的东西不会随着相机Camera距离Canvas的距离而变化。
这次总结了UGUI搭建界面的三个注意事项,关于NGUI的注意事项,往后会抽时间写的,关于draw call和NGUI图集的关系,会抽时间整理的。
- 游戏开发之UGUI搭建UI界面
- UGUI游戏UI开发的重用性
- 游戏开发之UGUI工具类
- Unity使用UGUI进行VR游戏的界面开发
- UGUI研究院之开始学习搭建界面自适应屏幕
- Ugui游戏开始界面 设置界面弹出
- Unity开发之 UGUI手游界面返回上一层
- Unity手游UGUI开发之背包界面(MVC)
- “音之国度”游戏UI界面分析(一级界面)
- Unity3D游戏开发之分页效果在uGUI中的实现
- [Unity3D] Unity3D游戏开发之UGUI实现伤害数值显示
- Unity3D游戏开发之分页效果在uGUI中的实现
- Unity游戏界面解决方案: PSD For UGUI
- iOS开发之iOS界面UI
- Unity游戏开发UI之Canvas
- unity手游UI界面开发之商店等界面
- Unity3d入门基础之UGUI-基本控件的学习-搭建界面的常规步骤
- UGUI研究院之UI的深度学习
- Java逆序排序
- java.util.concurrent包详细分析
- 1241532
- 1034:素数问题
- Git 仓库完整迁移
- 游戏开发之UGUI搭建UI界面
- 使用sudo命令,免输入密码的方法
- 如何理解“可靠性”和“可用性”?
- Mac OS X安装libevent库报Install libevent bufferevent_openssl.c:60:10: fatal error: 'openssl/bio.h' file
- 在 Docker 中使用 flannel
- OOAD学习笔记
- 洛谷[3879] [TJOI2010]阅读理解(trie树模板)
- codevs 1191 数轴染色 模拟? 解题报告
- Password UVA