NGUI裁剪模型和粒子

效果预览

model_scrollview

注:Cube上附着的绿色是我添加的粒子效果。

 

软件环境

NGUI 3.9.x

Unity 5.1 x64

 

相关知识

RenderTexture

       RenderTexture是一种特殊的纹理,它是在运行时创建和更新。

文档:http://www.ceeger.com/Components/class-RenderTexture.html

ScrollView

      ngui的一个滑动组件

UITexture

    ngui显示贴图组件

 

原理

用一个相机单独照射3D模型和粒子 ——> 把相机的图形映射到RenderTexture上 ——> 把RenderTexture的图形UITexture ——>通过NGUI的Clip对UITexture进行裁剪

 

步骤

1、创建一个RenderTexture,命名为ModelTexture wpsEF4C.tmp

2、创建一个新的场景,添加NGUI的2D UI

3、修改场景中的渲染模型的Camera名为:3DCamera,并把ModelTexure赋给它的Target Texture

4、添加模型和粒子,我这儿以原型替代,把它排成一横排

wpsEF5D.tmpwpsEF5E.tmp

5、修改3DCamera的size,调整模型根节点的位置,直到Camera中能全部显示出场景中的模型和粒子,我这儿把3DCamera改为2D镜头

wpsEF5F.tmpwpsEF60.tmpwpsEF61.tmp

6、在UI中创建一个ScrollView和UITexture,UIPanel的的裁剪区域,根据需要调整到合适值。

wpsEF62.tmpwpsEF72.tmp

7、把步骤1创建的ModelTexture,拖给UITexture,并修改Texture的Size为1000x1000,同时给UITexture添加BoxCollider和Drag ScrollView

wpsEF73.tmpwpsEF74.tmp

8、同时修改ModelTexture的size也修改为1000x1000

wpsEF75.tmp

9、运行,调整视觉效果

整体结构

wpsEF86.tmp

注意点

根据需要调整RenderTexture的Size和Camera的Size,达到最佳视觉效果。

源码

附件:https://files.cnblogs.com/files/zhaoqingqing/ClipModel.zip  需要手动导入NGUI3.9.x,基于Unity5.1

posted @ 2016-03-25 11:46  赵青青  阅读(3108)  评论(0编辑  收藏  举报