位置: 编程技术 - 正文

Unity3D游戏开发之GUI的使用(Unity3D游戏开发基础)

编辑:rootadmin
GUI是图形用户界面(Graphical User Interface)的缩写和简称,又叫图形用户接口。听起来好像很专业的感觉,其实我们每天都在接触。比如浏览器上面的前进、后退、收藏按钮、地址栏、右键菜单,甚至整个浏览器窗口都可以叫GUI。而通常人们&#;中的黑客高手,都是喜欢在一个全是字符的屏幕上啪啪啪飞快地键入一些晦涩难懂的字母,然后自称极其安全的某某防火墙系统就被攻破了。这种界面正好与GUI相对,叫做命令行界面,CLI(Command-Line Interface)。作为次世代游戏引擎,制作的游戏当然不会用字符界面来显示各种信息。虽然曾经的文字类的MUD游戏被誉为一代经典,MUD – Multiple User Domain,多用户交流领域,现在北大还开着此类游戏服务器。但这样的游戏已经小众化了,并不符合人们日渐增长的对图形界面的高要求。正如现在很少有家庭用户再用DOS/Linux系统了,Windows/MacOSX已经成了标配,甚至Linux都有了ubuntu,接下来还有可能是iOS、Android、Win8这类以触摸为主要操作的系统。因此GUI组件就应运而生了,Unity中有两个常用的GUI组件,GUI Text和GUI Texture。顾名思义前者是用来显示文本的,后者则是用来显示贴图。以魔兽世界里的头像为例,如果我们要制作这样的效果,那么玩家的名字和等级都可以用GUI Text来表现,而头像和血条,还有那些边框则都可以用GUI Texture来表现。于是用Wow Model Viewer挖了半天,找到以下素材,准备开工山寨一个^_^。原型头像一枚,懒得再上游戏里截图再修改了。血条纹理一枚,游戏里的进度条都靠它来表现了。头像框体一枚,嗯,它就是一个框而已。等级框体一枚,嗯……同上。将资源井然有序地分类存放是个良好的习惯,也是项目的第一步。把这几个贴图全都拖到”Textures/GUI“目录下面,并选中它们把Texture Type更改为GUI(可以按住Ctrl多选,一并更改)。这个步骤必不可少,否则待会显示出来的图片会模糊掉。至于原理我也搞不明白,每每遇到这种连谷歌度娘都查不到答案的问题,也就只能不求甚解,只好作罢了。素材准备就绪,可以开始创建GUI了。选择主菜单的”GameObject→Create Other→GUI Texture“,就会在屏幕正中间出现一个Unity的官方Logo水印,当然这并不是我们想要的。在层次面板中找到UnityWatermark-small并选中,将Texture属性的贴图修改为刚刚导入的头像框体。更多精彩请点击【狗刨学习网】此时在设计视图正中间应该已经可以看到头像框体了,不过还需要几个步骤。点开像素设置(Pixel Inset),其中XY表示横纵坐标的偏移,设置为0,Width和Height表示图片的宽度和高度,设置为原图大小(我这里是×)。最后剩下的工作就是修改GUI在屏幕上的位置了。由于GUI其实只是一张平面图形贴在屏幕上,不管我们怎么旋转镜头,它始终不会改变位置。所以GUI的坐标定义与我们常见的3D游戏对象的坐标定义不一样,借用一下官方对GUI的说明:从图中可以看出来,Unity对GUI坐标的定义是基于比例的,也就是说不管屏幕的长宽如何,GUI贴图所在的位置始终为:(屏幕宽度×transform.x,屏幕高度×transform.y),并且坐标系与数学上最常见的坐标系相同。而transform.z则表示GUI在屏幕上显示的优先级,优先级小的会被大的遮挡。另外一旦一个GUI成为另外一个GUI的子对象,横纵坐标就无效了,需要调节像素设置里的XY来控制偏移。将其余的几种素材贴图也如法炮制地制作成GUI,结构如上图所示。其中使用的素材分别是3、2、1、2、4,对照一下上文即可。需要注意的不多,调整好遮挡关系,并且在创建血条的时候需要修改Color来产生不同的颜色效果。剩下的工作就是添加上玩家名称和等级的文本了。点击主菜单”GameObject→Create Other→GUI Text“,与GUI贴图一样,GUI文本的坐标系也是按照比例的。为了制作得更像WOW里的效果,我决定还是按照之前的方式把GUI Text的属性逐一研究一下:更多精彩请点击【狗刨学习网】Text(文本):需要显示在屏幕上的文字内容;Anchor(锚点):可以设置绘制文本的起始位置,想像一下九宫&#;就能明白了;Alignment(对齐):文本的对齐方式,可以设置左对齐、右对齐、居中;Pixel Offset(偏移):文本相对于起始位置的XY方向上的偏移像素;Line Spacing(行间距):两行文本之间的空隙;Tab Size(制表符宽度):所谓制表符就是在平时输入的时候按TAB键打出的那个空白字符;Font(字体):文本使用的字体,默认为Arial;Material(材质):文本使用的材质;Font Size(字体大小):就是字体的大小,如果为0则使用字体的默认大小设置;Font Style(字体样式):可以设置字体的粗体、斜体样式;Pixel Correct(像素修正):启用这个选项后字体大小的设置才会有效,否则得通过调整Transform.Scale来修改。默认开启。需要解决的有两个问题,第一个是自定义字体,由于我的WOW客户端字体已经被我修改过了,找不到默认字体就随便找个字体导入将就一下。第二个则是需要修改字体的颜色(仔细看WOW的字体其实是有投影的,方便起见这个效果就不做了)。询问完谷哥度娘后整理了一下思路,按照以下步骤操作即可:更多精彩请点击【狗刨学习网】将一个字体文件拖入到工程面板,我使用的是”汉仪综艺体简“,命名为HanYiZongYi;新建一个材质,取名叫做WowFont,设置Shader为”GUI/Text Shader“,并设置好相应的Text Color;展开第一步导入的字体,会发现有个Font Texture,把这个纹理拖放到第二步材质的纹理框中;将WowFont材质拖到GUI文本的材质属性上;将HanYiZongYi字体拖到GUI文本的字体属性上;如法炮制将等级的GUI文本也搞定后,将名字和等级一并拖入PlayerPortrait,最后调整一下位置和字体大小,大功告成!唔……运行一下游戏,感觉上还有模有样的,哈哈。当然这只是实现了大概的界面而已,实际上游戏中并没有生命和魔法&#;的设定。

推荐整理分享Unity3D游戏开发之GUI的使用(Unity3D游戏开发基础),希望有所帮助,仅作参考,欢迎阅读内容。

Unity3D游戏开发之GUI的使用(Unity3D游戏开发基础)

文章相关热门搜索词:Unity3D游戏开发毕业论文,Unity3D游戏开发(第2版),Unity3D游戏开发(第2版)pdf,Unity3D游戏开发毕业论文,Unity3D游戏开发毕业论文,Unity3D游戏开发(第2版),Unity3D游戏开发标准教程,Unity3D游戏开发(第2版),内容如对您有帮助,希望把文章链接给更多的朋友!

【Unity3D基础教程】(一):GameObject,Compoent,Time,Input,P... 【狗刨学习网】Unity3D重要模块的类图Unity3D是一个Component-Based的游戏引擎,并且为GamePlayProgrmmer提供了很多游戏性层上的支持。比如可以在图形界面上设

unity自带LightMapping和3Ds Max烘焙贴图的小对比 对于做虚拟现实的朋友来说,烘焙贴图应该不是一个陌生的东西。想要在有限性能的电脑上面即时运算较好的光影效果,一般都会采用烘焙贴图的方法

Unity3D游戏开发之如何减少安装包大小 第一步要做的就是:看看哪些文件是最占空间的,那么它们就是首选优化对象了。你可以在刚刚完成一次build之后在EditorLog中找到这些信息。如何打开Edi

标签: Unity3D游戏开发基础

本文链接地址:https://www.jiuchutong.com/biancheng/373048.html 转载请保留说明!

上一篇:Unity3D游戏开发之[三国杀传奇]单月双平台流水近5000万(Unity3D游戏开发引擎)

下一篇:【Unity3D基础教程】(一):GameObject,Compoent,Time,Input,P...(unity3d初学者教程视频)

  • 小规模纳税人销售农产品税率是多少
  • 未办理税务登记的个体户怎么注销营业执照
  • 城市配套费的用途
  • 季度亏损还需要计提所得税吗
  • 围挡属于什么类型
  • 税务局代个人开发票交什么税
  • 印刷宣传册是违法吗
  • 个人出租商业用房
  • 什么叫复式记账凭证
  • 出售生产线计入哪里
  • 生产企业出口货物可享受免税并退税
  • 个体工商户生产经营所得税率
  • 现代服务业营改增前后税率对比表
  • 建筑类没收入怎么填
  • 企业计提福利费时,贷记应付职工薪酬
  • 代购的货可以退吗
  • 公司购买银行理财产品会计分录怎么写
  • 地税印花税怎么算
  • 工程领用工程物资180万元
  • 老版普通增值税发票还能用吗
  • 计划成本法如何计算材料成本差异率
  • 所得税季度申报营业收入填什么
  • 行政单位需要缴税吗
  • 创新券兑付怎么操作
  • 服务性行业受气
  • 员工受伤报销
  • 小型纳税人个人所得税
  • 出纳人员怎么核对现金日记账?
  • 周围的材料分为哪几类
  • 职工薪酬核算的内容
  • 债券到期收回本息的会计分录
  • 货没到申请退款玩付邮费吗
  • 房地产企业困境
  • 所得税汇算清缴退税会计分录怎么做
  • 标书装订费用分录
  • 核定征收的小规模纳税人要做账吗
  • 买保险公司的养老保险合适吗
  • PHP:imagecreatefromgif()的用法_GD库图像处理函数
  • 营改增允许从销售额中扣
  • php制作网页
  • php curl_init
  • 角点检测算法
  • 计算机视觉项目文档
  • ip6tables-save命令 保存ip6tables表配置
  • 个税专项附加扣除具体怎么操作
  • css选择器怎么用
  • 红冲费用如何处理
  • 给销售人员的返点怎么做账
  • 自然人专项扣除填报
  • 本期转让不动产的销售额是什么意思
  • 删除mysql57服务
  • sql2000数据库怎么删除数据
  • 个人申请代开发票流程怎么操作?
  • 员工误餐费是否缴纳个人所得税
  • 珠宝行业会计核算流程
  • 航信服务费减免怎么填
  • 哪些情况不属于农户
  • 为什么到期一次还本付息要用债权投资利息调整
  • 其他应收款收不回来了,如何核销
  • 中小企业做账
  • ubuntu mysql 5.6版本的删除/安装/编码配置文件配置
  • linux下mysql 5.7.16 免安装版本图文教程
  • kms激活的弊端
  • 苹果mac系统怎么截屏快捷键
  • centos6.10安装
  • linux指定格式显示日期
  • ie10变成ie8
  • 在linux中使用什么命令可以执行shell脚本
  • oracle12c怎么卸载
  • linux常见的启动方式
  • cocos2dx开发的游戏有哪些
  • apktool破解应用内购
  • 在shell命令行方式下,一行只能
  • 大学的python选修课好学吗
  • 详解Javascript事件驱动编程
  • Android自定义动画
  • 税务举报偷税漏税电话
  • 别人给公司开的普票,怎么查询
  • 电子税务局房产税原值怎么改
  • 企业税务人员岗位竞聘报告怎么写
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设