Unity3D -- 图形 -- 纹理和视频

纹理和视频

通常,物体的mesh几何体只有一个大概的形状,更多的细节要靠纹理,纹理就是应用于mesh表面的标准位图。我们可以认为纹理图片是一个拉伸了的橡胶板然后钉在mesh的合适的位置上。纹理的位置是用创建mesh的3D建模软件完成的。

Unity可以从很多常用的图片文件格式导入纹理,另外,专业版的Unity还可以导入电影文件,以创建动态的纹理,让它在物体表面播放。另一个专业版才有的功能是Render Textures,可以在游戏中从摄像机实时生成一个动态的纹理。

纹理是通材质应用到物体上的,材质使用一种叫做Shader的特殊的图形程序把纹理渲染到mesh表面上。Shader可以实现光照效果和着色效果来模拟耀眼或崎岖的表面。还可以同时使用多个纹理,组合成复杂的效果。

2D 图片

在2D游戏中,Sprite是通过把纹理应用到平坦的接近于物体形状的mesh上实现的。


2D游戏中的物体可能需要一组相关联的图片来表示动画或不同状态的人物角色,可以用 Sprite Editor 来实现。

视频

在专业版中,Unity可以在大多数使用静态纹理图片的地方使用视频文件。在桌面平台,这些电影纹理可以被用于播放在场景中的物体上,所以我们还可以用游戏中的电视屏幕,或一个抽象的动态图片在物体表面创建出“变色龙”效果。移动设备只能播放全屏视频,可以添加播放/暂停等控制。具体参考Movie Textures

特殊用途的纹理

纹理的大多数用途是添加细节到物体表面。但是,图片还可以有其他用途:

  • GUI
游戏的图形用户界面包括没有直接用在游戏场景中但是允许玩家选择和查看信息的图片。比如显示得分和选项菜单是典型的游戏GUI。这些图片与用在物体的mesh表面的图片截然不同,只是没有用标准的Unity纹理处理。具体参考 GUI Scripting Guide
  • 粒子
Mesh是表示固态物体的理想选择,但对于火苗,烟雾,魔法就不太合适了。一个粒子就是一张小的2D图片。


  • 地形的高程图(Heightmap
纹理甚至可以用于永远不能看全的图片,至少不能直接看全。在灰度图中,每个像素值都是一个简单的数字,对应其所在位置的明暗层次(0到1,0黑1白)。虽然像这样的图片是可以看到的,但是数值化的像素值可以用于其他用途,这些值是由地形高程图的完成的精确值。一块地形是用一个mesh表示一块土地上的区域,这块土地上的每个点都有一个高度值,地形的Heightmap保存了数值化的高度采样,就像图片中的灰度值,每个像素对应风格坐标中的一个点,这些值没有以图片显示在场景中,但是被转换成了生成地形mesh要用到的坐标。
有意思地是,甚至高程图不能像图片一样查看,这些高程数据还需要经过常用的图片处理技术。比如添加噪点到高程图中,可以创建出岩石地形,而添加模糊则可以创建出平滑的柔和的景观。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值