一般Game的左上角都有一个玩家基本信息显示栏,包括玩家的图像。这种图像,一般有两种方式,其一:将玩家的图片集中制作成一个图集,利用NGUI/UGUI的sprite加入相应玩家的图片。当然,也可利用Texture。这种方式比较简单,这里不做详细说明。其二,即是利用Render Texture 实时地从Camera中获得图像渲染。现在讲解第二种。

①:导入一个3D的动画 , 这里我用的是NGUI里面的3D模型。并把这个模型的Layer设置成Player。

Unity3D 角色Face的显示_3D

②:在这个Go小添加一个Camera作为Go的子类。这个Camera专门用于渲染主角的Face。

这里先创建一个Render Texture命名为FaceTexture。在Project中创建。

Unity3D 角色Face的显示_角色_02


设置Camera的各种属性:让此Camera只渲染Player层。另外将Target Texture设置为FaceTexture,即让FaceTexture实时接收此Camera拍摄的图片。

Unity3D 角色Face的显示_3D_03Unity3D 角色Face的显示_3D_04

③:在左上角实时显示玩家Face图片

本人用NGUI的Simple Texture

Unity3D 角色Face的显示_Unity_05

设置Simple Texture的属性如下图:将FaceTexture指定给Texture,这样的话渲染出来的是个矩形。如果要想得到圆形,可使用其Material,找一个遮罩的shader,本文不做深入介绍。

Unity3D 角色Face的显示_Unity_06

结果:

Unity3D 角色Face的显示_Unity_07