首页
Python
Java
IOS
Andorid
NodeJS
JavaScript
HTML5
unity地面反射效果
2024-09-02
Unity使用反射探头实现地面的镜面反射
最近在看之前的愤怒机器人demo,它的反射通过一个反射相机实现 我尝试在unity5里用反射探头做出镜面反射,但想要调的准确倒是比较难.. .. 后来朋友发我一份反射探头实现镜面反射的文章,解决了这个问题 地址:http://nn-hokuson.hatenablog.com/entry/2016/10/17/202135 首先设置探头参数,打开实时反射的参数设置如下: (必须设置LayerMask,否则反射画面会被地面挡住) 脚本我稍作修改: public ReflectionProbe pr
Unity Shader之使用Cubemap实现反射效果
1.Cubemap是啥 Cubemap,即立方体纹理,包含6张图像,每张图像对应立方体的一个面,跟二维纹理不同,我们使用三维坐标去对这种纹理进行采样, 在unity中,可以使用Cubemap来实现天空盒子以及环境映射,环境映射可以模拟出场景中周围的环境,使用了环境映射材质的物体可以反射出周围的环境,就像反光镜或者反光金属一样. 2.制作Cubemap 通常,制作Cubemap的方法大概有三种,第一种是提供一种具有特殊布局的纹理,类似全景图,然后将该纹理的Texture Shape设置为Cub
SpriteBuilder实现2D精灵光影明暗反射效果(一)
其实不用3D建模,用2D的图像就可以模拟3D场景中光照反射的效果. 这里我们不得不提到一个normalMap(法线图)的概念,请各位童鞋自己度娘吧,简单来说它可以使得2D表面生成一定细节程度的光照方向和反射效果. 我们首先要制作精灵的法线贴图,至于怎么做,懂3D制图的童鞋应该都知道,有专门的软件.不过对于本猫猪这种图痴来说,也有简单容易上手的工具,名字为SpriteIlluminator,可以到其官网下载: https://www.codeandweb.com/spriteilluminator
unity实现玻璃效果
一.使用Cubemap,做一个假反射 shader代码如下: Shader "Custom/glassShader" { Properties { _MainColor("Main Color",Color)=(1,1,1,1) _MainTex ("Base (RGB)", 2D) = "white" {} _Cube("Cube",CUBE)=""{} } SubShader { T
C# vb .net实现透视反射效果
在.net中,如何简单快捷地实现Photoshop滤镜组中的透视反射效果呢?答案是调用SharpImage!专业图像特效滤镜和合成类库.下面开始演示关键代码,您也可以在文末下载全部源码: 设置授权 第一步:在引用了SharpImage.dll之后,调用SharpImage方法之前,一定要先通过下面代码来设置授权信息,如果是试用版,直接输入Test即可. KeyMgr.SetKey("Test"); 初始化一个ImageEngine 从之前的一篇博文中,我们介绍了一张图看懂SharpIm
Unity - 求反射向量 (2d)
求反射向量 https://www.cnblogs.com/graphics/archive/2013/02/21/2920627.html 上面是大佬的公式可以去看一下 借的大佬的图 1.求入射向量 向量IO 入射向量就是圆球当前位置到四个柱子的位置的向量 代码: private Vector3 CurrentPos;// 记录当前坐标 void Start() { CurrentPos = transform.position //记住最开始坐标 } //碰撞的时候 CurrentPos -
U3D 实现地面碰撞效果
前面讲了如何让两个刚体碰撞: 现在来细细讲解一下, 首先,精灵刚体后就好比物理世界的物体,是受到重力所用的, 然后两个物体要添加碰撞系数才能实现碰撞, 这种情况下,碰撞后会使得另一个刚体也会随之运动,就如同自然界的惯性一样: 如果需要实现两个精灵能够碰撞,并且其中一个物体不会随之运动,就要加把它添加一个碰撞检测(如同地面): 这样就可以实现如果碰撞到地面一样的效果. 例子二:球体和倾斜的地面发生碰撞: 将一个刚体设为球体碰撞 另一个不设置为刚体,就设置为矩形碰撞就行了 结果如图: 就可以实现,球
unity传送门类似效果实现
简述 在传送门中,核心的玩法是在地上或者墙上打开2个可以联通的洞来实现传送的效果.以此扩展加入解谜要素构成游戏的核心. 这里尝试使用unity来实现传送门的核心功能,具体功能分析如下: 1.传送门的模型 2.传送门的贴图 3.传送门的传送功能 这里我们需要以下软件:3dmax 2014,unity3d 5.4.0,visual studio 2015 一.传送门的模型和uv 打开3dmax,确认系统单位和显示单位都为米,如果不为米,改成米 建立一个圆柱体,高度段数1
Unity Shader - 消融效果原理与变体
基本原理与实现 主要使用噪声和透明度测试,从噪声图中读取某个通道的值,然后使用该值进行透明度测试. 主要代码如下: fixed cutout = tex2D(_NoiseTex, i.uvNoiseTex).r; clip(cutout - _Threshold); 完整代码点这里 边缘颜色 如果纯粹这样镂空,则效果太朴素了,因此通常要在镂空边缘上弄点颜色来模拟火化.融化等效果. 1. 纯颜色 第一种实现很简单,首先定义_EdgeLength和_EdgeColor两个属性来决定边缘多长范围要显示
unity,荧光效果(bloom)实现过程
两个月前,刚接触unity的时候费了半天劲儿做了个荧光效果(见:http://www.cnblogs.com/wantnon/p/4430749.html),今天终于抽空整理了一下,把过程写下来. 荧光效果截图: 一,接口: 整理完以后得到三个东西:AE_GroupBloom.cs,Camera_renderBloomRT.prefab,bloomEmitter.shader. 使用方法: 1,将AE_GroupBloom.cs添加到Main Camera上. 2,将Camera_rende
关于Unity中粒子效果的使用
粒子效果1: 游戏中会有很炫酷的特效,比如爆炸,水花,火焰等;2: unity提供粒子编辑器,方便特效人员来开发很炫酷的特效;3.粒子效果一般有专门的粒子特效师来做,我们只需要拿来用就好了,很多参数没必要掌握. Particle System组件面板 1: 粒子系统主体;2: 喷射(Emission);3: 形态(shape);4: 生命周期内的速度偏移(velocity over lifetime);5: 生命周期内的限制速度(limit velocity over lifetime);6:
unity 图片 粉碎效果 破碎效果
效果: 点击按钮后: 这些碎片具有物理碰撞效果,下面会有隐形的支柱垫着碎片,n秒后支柱消失,碎片落下 当然你也可以控制生成的碎片,让他们从下而上一块一块地落下 插件源码: https://github.com/mjholtzem/Unity-2D-Destruction 基本使用说明 导入Unity 2D Destruction包 将精灵拖入场景中 添加Explodable组件和PolygonCollider2D或BoxCollider2D 设置参数并单击Generate Fragments(重
Unity光晕剑效果的Shader简单实现
最近遇到了一个需求,想要一种在刀剑上带有光晕的酷炫效果,甚至是还想要有闪烁呼吸效果,于是就写了一个简单的叫LightSwrod的Shader去实现,先上图看看效果吧. 简单展示 这是剑本身的样子 这是用了LightSword后的效果 (原谅我的审美吧~~~调了半天也就这难看的样子T_T) 这是Inspector里面Material的参数 参数的解释将在后面进行细致讲解 创建流程 来讲述一下创建光剑效果的流程吧 1.准备两张贴图: 一张是剑体本身的贴图,是真正要显示出来的剑体 一张是要展现光晕效果
Unity Shader 玻璃效果
一个玻璃效果主要分为两个部分,一部分是折射效果的计算,另一部分则是反射.下面分类进行讨论: 折射: 1.利用Grass Pass对当前屏幕的渲染图像进行采样 2.得到法线贴图对折射的影响 3.对采集的屏幕图像进行关于法线方向上的扭曲和偏移,以模拟折射效果 反射: 主要利用环境贴图产生反射的残影,并和主贴图采样结果混合 得到反射和折射的结果后,以一个插值变量控制最终效果(类似于玻璃的透光率): 脚本如下: // Upgrade NOTE: replaced '_Object2World' with
Unity音乐喷泉效果
本文参考了该文,其素材也取之于该处 效果 实现效果(根据音乐的高低会产生不同的波纹): 可以观看视频来获得更好的体验. 波纹的实现 先模拟出如下效果: 通过鼠标的点击,产生一个扩散的圆圈. 如上图所示,这个效果主要通过Displatment Shader实现,首先创建Shader,Matrial,在Scene视图尝试我们的想法. Shader可参考,Unity官网教程 这样我们就可以通过改变DispTexture这张贴图的圆环就能产生大小不同的隆起效果,再通过每帧刷新的方式继而可以参数波纹扩散的
Unity 实现橡皮擦效果
我所实现的橡皮擦效果是设置图片某点的像素的透明度为0,来简单实现擦除效果的: 下面是效果 首先需要注意两点:1:设置 Main Camera 的 projection 属性为Orthographic 2:设置Canvas 的Render Mode 为 Screen Space - Camera 然后找一张图片,导入Unity 中并修改它的读写权限,创建Raw Imager 这样启动之后就可以测试效果了. 附上代码:(代码中有解释) using AYUI.UIFrame; using DG.T
Viking Village维京村落demo中的地面积水效果
效果如下: 似乎是通过高光贴图实现的,查找后发现具体在这: 它使用了基于Standard的TerrainSurface自定义Shader,关闭该帖图后效果消失: 这个TerrainSurfaceShader放置在项目中,可以直接拿来使用
Unity 屏幕震动效果实现
要实现震屏效果其实并不难,所谓的震屏在PC端可以简单地理解为相机(MainCamera)的抖动. 代码实现如下: using UnityEngine; using System.Collections; public class ScreenShake : MonoBehaviour { private float shakeTime = 0.0f; private float fps= 20.0f; private float frameTime =0.0f; private float sh
SpriteBuilder实现2D精灵光影明暗反射效果(二)
使用SpriteBuilder新建一个项目,将默认MainScene.ccb中的内容统统删掉,此时场景应该是一片漆黑. 将官网中的2张图片以及我自己做的2张图片全部拖拽到其文件视图中去: 其中加_n后缀的图片表示原图的法线贴图. 将2张不带_n后缀的图片分别拖到黑黑的场景中去,调整到合适位置. 分别将2个精灵的Normal map设置为_n后缀的对应图片: 分别打开2个精灵的Lighting特效.这时已经可以看到光影效果,可惜这时SpriteBuilder给你的"假象",如果此时编译运
unity 实现流光效果
1.通过一些简单效果可以让我们更好的去理解shader,具体都在代码注释中: Shader "Unlit/MoveLightImage" { Properties { //主纹理 _MainTex ("Texture", 2D) = "white" {} //灯光纹理 _LightTex("Light Texture",2D)="white"{} //遮罩纹理 _MaskTex("Mask Tex
热门专题
python 中 pdfplumber读取pdf文档出现叠字
ios post 请求body前面多个等号
shiro-550反序列化漏洞复现
java jsoup获取省市区最新数据
Sublime_text 停留上次页面
定义条件,定义处理程序
TextBlock 制表符
.使用tk界面操作网页
ipv6首选生存时间
unity 输入管理器 自定义按键
判断一组数据出现的次数,当有一次没出现,重新开始计算出现次数
jmap -histo gc实例数很大
ABAP 反查物料层级
java 将图片以流的方式导入exel
echarts 柱状图 按比例展示
python def -> 是什么意思
Kohana 获取 get
eclipse安装pydev出现错误
postgresql json转字符串
DS1302中写程序初始化的作用