NGUI裁剪模型和粒子
效果预览
注: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 
2、创建一个新的场景,添加NGUI的2D UI
3、修改场景中的渲染模型的Camera名为:3DCamera,并把ModelTexure赋给它的Target Texture
4、添加模型和粒子,我这儿以原型替代,把它排成一横排


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



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


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


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

9、运行,调整视觉效果
整体结构

注意点
根据需要调整RenderTexture的Size和Camera的Size,达到最佳视觉效果。
源码
附件:http://files.cnblogs.com/files/zhaoqingqing/ClipModel.zip 需要手动导入NGUI3.9.x,基于Unity5.1
NGUI裁剪模型和粒子的更多相关文章
- Unity NGUI UIPanel下对粒子的剪裁
使用 unity 做游戏开发时,有时需要在scroll view下使用粒子,但粒子是不会被 UIPanel 所裁剪的,本人提供了脚本 ParticleSystemClipper,用来处理这种情况.思路 ...
- Unity3D Shader 按百分比裁剪模型
Shader Shader "Unlit/Disappear" { Properties { _MainTex ("Texture", 2D) = &qu ...
- Unity NGUI和UGUI与模型、特效的层级关系
目录 1.介绍两大UI插件NGUI和UGUI 2.unity渲染顺序控制方式 3.NGUI的控制 4.UGUI的控制 5.模型深度的控制 6.粒子特效深度控制 7.NGUI与模型和粒子特效穿插层级管理 ...
- Python爬取CSDN博客文章
0 url :http://blog.csdn.net/youyou1543724847/article/details/52818339Redis一点基础的东西目录 1.基础底层数据结构 2.win ...
- Cesium专栏-裁剪效果(基于3dtiles模型,附源码下载)
Cesium Cesium 是一款面向三维地球和地图的,世界级的JavaScript开源产品.它提供了基于JavaScript语言的开发包,方便用户快速搭建一款零插件的虚拟地球Web应用,并在性能,精 ...
- 算法(三)粒子群算法PSO的介绍
一.引言 在讲算法之前,先看两个例子: 例子一:背包问题,一个书包,一堆物品,每个物品都有自己的价值和体积,装满书包,使得装的物品价值最大. 例子二:投资问题,n个项目,第i个项目投资为ci 收益为p ...
- 『高性能模型』HetConv: HeterogeneousKernel-BasedConvolutionsforDeepCNNs
论文地址:HetConv 一.现有网络加速技术 1.卷积加速技术 作者对已有的新型卷积划分如下:标准卷积.Depthwise 卷积.Pointwise 卷积.群卷积(相关介绍见『高性能模型』深度可分离 ...
- 『高性能模型』卷积复杂度以及Inception系列
转载自知乎:卷积神经网络的复杂度分析 之前的Inception学习博客: 『TensorFlow』读书笔记_Inception_V3_上 『TensorFlow』读书笔记_Inception_V3_下 ...
- 【智能算法】粒子群算法(Particle Swarm Optimization)超详细解析+入门代码实例讲解
喜欢的话可以扫码关注我们的公众号哦,更多精彩尽在微信公众号[程序猿声] 01 算法起源 粒子群优化算法(PSO)是一种进化计算技术(evolutionary computation),1995 年由E ...
随机推荐
- Logstash时区、时间转换,message重组
适用场景 获取日志本身时间 日志时间转Unix时间 重组message 示例日志: hellow@,@world@,@2011-11-01 18:46:43 logstash 配置文件: input{ ...
- mysql数据库开发常见问题及优化
mysql 数据库是被广泛应用的关系型数据库,其体积小.支持多处理器.开源并免费的特性使其在 Internet 中小型网站中的使用率尤其高.在使用 mysql 的过程中不规范的 SQL 编写.非最优的 ...
- zeptojs-跑马灯效果
去年的时候了解学习了一下zeptojs,因为是移动js框架嘛还是必须要学习下的,里面封装的方法和jquery很类似,但是底层原理当然是不同的,这里展示的就是一个跑马灯效果,直接上代码和效果图: 样式不 ...
- 如何在Zabbix上安装MySQL监控插件PMP
PMP,全称是Percona Monitoring Plugins,是Percona公司为MySQL监控写的插件.支持Nagios,Cacti.从PMP 1.1开始,支持Zabbix. 下面,看看如何 ...
- Chrome调试中的奇技淫巧
网上有关Chrome调试的文章一搜一大堆,本文主要记录一下自己平时经常用并且又比较冷门的一些技巧. 打开Chrome调试工具 1.打开控制台的情况下,长按页面的“刷新”按钮可以选择按何种方式刷新(有正 ...
- 13.JAVA之GUI编程将程序打包jar
jar基本命令: 目标:将下列MyMenuDemo.java代码打包成jar. 方法如下: 1.把java代码放到d:\myclass目录下. 2.按下快捷键ctrl+r,打开运行窗口,输入cmd后回 ...
- Kafka0.8.2.1删除topic逻辑
前提条件: 在启动broker时候开启删除topic的开关,即在server.properties中添加: delete.topic.enable=true 命令: bin/kafka-topics ...
- 为Guid数据类型的属性(property)赋值
先来看看数据库表中的字段设计: 在数据库的数据类型为uniqueidentifier. 而在程序中对应的数据类型为GUID. property有get和set,也就是说能获取值也可以赋值.
- C++ map的基本操作和使用
原文地址:http://blog.sina.com.cn/s/blog_61533c9b0100fa7w.html Map是c++的一个标准容器,她提供了很好一对一的关系,在一些程序中建立一个map可 ...
- python学习笔记(字符串操作、字典操作、三级菜单实例)
字符串操作 name = "alex" print(name.capitalize()) #首字母大写 name = "my name is alex" pri ...
