摘要: 基本原理:被遮挡的部分关闭深度写入, 显示透明效果;未被遮挡的部分不关闭深度测试,显示正常贴图效果,即使用两个Pass即可。 Pass1:关闭深度写入(ZWrite Off),深度测试渲染较远的物体,即模型被物体遮挡的部分(ztest greater)。 Pass2:开启深度写入,正常渲染。 阅读全文
posted @ 2018-12-15 17:23 Mr. Ant 阅读(1061) 评论(0) 推荐(0) 编辑
摘要: 基本原理:使用Projector和Camera结合实现的动态阴影,使用Camera渲染出一张模型轮廓图,再用Projector投射到场景的接收物体上。 思路: 1、创建一个GameObject用来挂载Projector和Camera。 2、生成一张RenderTexture贴图,命名为mShadow 阅读全文
posted @ 2018-12-15 16:43 Mr. Ant 阅读(513) 评论(0) 推荐(0) 编辑
摘要: 基本思路:Shader用两个Pass,一个渲染描边部分,一个渲染物体部分。 Pass1:剔除正面,渲染背面,把顶点延法线方向外围扩展一定宽度,用来表现描边的粗细,这部分用自己设定的颜色。 Pass2:剔除背面,渲染正面,正常渲染所看到的物体模型。 阅读全文
posted @ 2018-12-15 15:25 Mr. Ant 阅读(1116) 评论(0) 推荐(0) 编辑
摘要: 基本思路:unity有一种很容易实现光影效果的神器,那就是unity自带的projector。 首先需要用到两张贴图: 一张投影需要的光圈贴图,如下: 一张根据远近距离显示暗淡的贴图(左至右,白渐变黑),如下: 主要用到两个参数:_Projector 和 _ProjectorClip mul(_Pr 阅读全文
posted @ 2018-12-15 15:18 Mr. Ant 阅读(1120) 评论(0) 推荐(0) 编辑
摘要: Shader深度渲染队列Queue预定义值:Background(1000)、Geometry(2000)、AlphaTest(2450)、Transparent(3000)、Overlay(4000)。 渲染优先顺序: Queue值越小越先渲染,后渲染的物体会覆盖先渲染的物体。 测试:我想让远处的 阅读全文
posted @ 2018-10-24 20:55 Mr. Ant 阅读(6157) 评论(1) 推荐(1) 编辑
摘要: 实现原理:雨和雪的实现基本类似,天空中飘的雨和雪,地上的水花和雪花,增加一个下落速度和风速,就形成了天气了。 天气雪实现步骤: 1、预生成Mesh:随机生成多个空中飘落的雪网格和地面上的雪花网格。 2、预生成雪shader和雪花shader,雪shader支持雪的显示,雪花shader支持序列帧动画 阅读全文
posted @ 2018-06-25 11:59 Mr. Ant 阅读(970) 评论(0) 推荐(0) 编辑
摘要: 实现原理:主要思想是设置显示uv纹理的大小,并逐帧修改图片的uv坐标。 实现步骤 1、我们首先用_Time.y和速度属性_Speed相乘得到模拟的时间。 2、然后我们用time除以_HorizontalAmount的结果值作为当前的行索引,除法结果的余数则是列索引。 3、接下来,我们根据行索引和列索 阅读全文
posted @ 2018-06-23 10:45 Mr. Ant 阅读(1920) 评论(0) 推荐(0) 编辑
摘要: 一、模型打包流程 二、模型创建流程 三、模型API框架 阅读全文
posted @ 2018-06-21 15:09 Mr. Ant 阅读(572) 评论(0) 推荐(0) 编辑
摘要: Mesh概念:Mesh是Unity中的一个组件,称为网格组件。通俗的讲,Mesh是指模型的网格,3D模型是由多边形拼接而成,而多边形实际上是由多个三角形拼接而成的。所以一个3D模型的表面其实是由多个彼此相连的三角面构成。三维空间中,构成这些三角形的点和边的集合就是Mesh。 Mesh组成: 1、顶点 阅读全文
posted @ 2018-06-21 14:32 Mr. Ant 阅读(4171) 评论(0) 推荐(0) 编辑
摘要: 前提:本文默认你安装了unity5.6版本,不是这个版本的没有Gradle(new)选项,也默认你安装了Android Studio并配置好了环境变量。 Gradle(new):打包Android Studio工程。 ADT(legacy):打包Eclipse工程。 1、按下图所标注进行工程设置: 阅读全文
posted @ 2018-05-15 20:56 Mr. Ant 阅读(2933) 评论(0) 推荐(0) 编辑