如何在unity3d的UGUI中给Text添加材质和艺术字

如何在unity3d的UGUI中给Text添加材质和艺术字,第1张

添加艺术字体:

将下载好的艺术字体放到Unity中,选中Text 在Inspector—>Text(script)—>character—>Font处可以看到加载好的艺术字体

添加材质:Inspector—>Text(script)—>character—>Material可修改材质

在Unity中,我们可以这样理解:Material(材质)包含Map(贴图),Map包含Texture(纹理)。

首先在工程中创建一个Terrain(地形)和一个Cube(立方体),然后我们基于这两个物体来深入学习什么是纹理、贴图和材质。

下面我们添加一个地形纹理和一个LOL泳池派对纹理。(其实就是图片)

我们来学习一下纹理的Inspector视图中都有什么属性功能,以“泳池派对”为例。

效果如下:

详情如下:

Texture:纹理

Normal map:法线贴图

(游戏场景中譬如雕刻这种3D细节,如果做3D模型的话,就会浪费显示芯片,使游戏性能下降,便会用法线贴图,既不影响玩家体验游戏又不影响游戏性能)

Editor GUI and Legacy GUI:编辑器的GUI和传统的GUI

Sprite(2D and UI):图片精灵

Cursor:设为光标

Cubemap:立方体贴图

Cookie:聚光灯贴图

Lightmap:光照贴图

Advanced:高级选项(当你想要有纹理的具体参数并想拥有纹理的完全控制的时候选择该项)

UV坐标:水平方向是U,竖直方向是V。因为图片(纹理)是一个二维的平面,所以只需要UV坐标便可以确定图片的位置。(当然也有三维贴图,要用到UVW坐标,暂时还接触不到。)

贴图:一种就是就是把纹理通过UV坐标映射到3D物体的表面,另一种就是把纹理加入一些功能,这两种都是贴图。贴图具有 UV 坐标属性或者一些功能,而纹理没有。

我们把Terrain加上纹理,此时这个名为“地形”的纹理就成为了Terrain的贴图。

Shader负责将输入的Mesh(网格)以指定的方式和输入的贴图或者颜色等组合作用,然后输出。绘图单元可以依据这个输出来将图像绘制到屏幕上。

将输入的贴图或者颜色,加上对应的Shader,以及对Shader的特定的参数设置,将这些打包在一起就是一个材质了。之后,我们便可以将材质赋予合适的renderer(渲染器)来进行渲染。

点击Create,添加一个材质和一个物理材质。

选色:

上色:

Dynamic Friction:动摩擦系数

Static Firction:静摩擦系数

Bounciness:d性系数

Friction Combine:联动摩擦

Bounce Combine:联动反d

Average:取平均值。

Minimum:取最低值。

Multiply:取相乘值。

Maximum:取最大值。

下面是详细的步骤。

第一步:

打开Unity开始导入插件,首先在Project视图中右键选择ImportPackage->Custom

Package->ngui_free.unitypackage(刚刚下载至本地的插件)导入完毕后,请刷新一下你的工程

确保Unity导航菜单栏中出现NGUI的菜单项,Unity的版本不同可能导致NGUI导入时不存在菜单

项,也可以退出Unity在重新进入即可。

第二步:

在新创建的Unity工程中删除Hierarchy视图中原有的摄像机对象,在Unity导航栏菜单中选择

NGUI->Create aNewUI。可以理解为创建摄像机,并且这个摄像机直直的照射在平面中,该平

面就是我们的UI平面。点击CreateaNewUI 菜单项后d出UITool工具栏。

Layer:下拉列表表示摄像机的显示层。

当你选择最后一项AddLayer时,灰色的表示系统默认的,可双击可用层的右边对层进行重命名。

Camera:下拉列表设置摄像机的朝向是2D还是3D。

最后直接点击CreateYourUI即可创建一个新的界面。

接着NGUI会自动帮我们在Hierarchy视图中生成如下的对象关系。

UIROOT(2D):界面根节点、入口点。

Camera:NGUI生成的摄像机对象,它将直直的照射在锚点面板。

Anchor:界面的锚点,影响UI的显示位置。它下面会挂着面板。

Panel:面板,摄像机照射着它,它下面会挂一些控件,比如标签、按钮、精灵、拖动条等等。

第三步:

创建界面组件,在Unity导航菜单栏中选择NGUI->CreateaWidget创建小部件

Atlas:图像集合

Font:字体

Template:模板

P:X、Y、Z坐标//z越小越先绘制

R:X、Y、Z轴的旋转

S:X可理解为图片宽,Y理解为图片高

刚刚我们创建的模板为SimpleTexture,NGUI会帮我们绑定UITexture脚本。

Material:添加的材质对象,为了让材质显示的更加清晰,我们设置材质的着色器为Unlit/Texture

Depth:表示深度,就好比UI绘制的先后顺序,数值越高越先绘制,它主要应用于Sprite精灵(后面

详细说),

在SimpleTexture中设置无效,不过可以通过修改Z轴坐标的形式来更改绘制顺序。

ColorTint:设置颜色,用于没有贴图的材质。

Correction:自动设置图片宽高,就好比本例中我的图片宽高是128X128,点击该按钮后会自动修

Transform中S的X=128与Y=128。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11764042.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-18
下一篇 2023-05-18

发表评论

登录后才能评论

评论列表(0条)

保存