zoukankan      html  css  js  c++  java
  • 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,达到最佳视觉效果。

    源码

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

  • 相关阅读:
    调用google地图
    jQuery放大镜效果
    jQuery拖到效果
    jQuery制作相册
    jQuery ui插件用法
    jQuery写fadeTo方法
    jQuery实现动画效果
    jQuery的slideToggle方法
    控经纬度显示地图与卫星
    像百度那样的智能感知效果
  • 原文地址:https://www.cnblogs.com/zhaoqingqing/p/5318857.html
Copyright © 2011-2022 走看看