unity怪物攻击玩家减血_Unity3d 怪物死亡燃烧掉效果
效果
BurnToFadeOut.shader代码
Shader "BurnToFadeOut" {
Properties {
_StartColor ("Start Color", Color) = (1,1,1,1)
_EndColor ("End Color", Color) = (1,1,1,1)
_MainTex ("Base (RGB) Trans (A)", 2D) = "white" {}
_Cutoff ("Alpha cutoff", Range(0,1)) = 0.5
_Emit ("Emit level", Range(1,100)) = 0
_Range ("Range", Range(0,1)) = 0
}
SubShader {
Tags {"Queue"="AlphaTest" "IgnoreProjector"="True" "RenderType"="TransparentCutout"}
LOD 100
Lighting Off
Pass {
CGPROGRAM
#pragma vertex vert
#pragma fragment frag
#include "UnityCG.cginc"
struct appdata_t {
float4 vertex : POSITION;
float2 texcoord : TEXCOORD0;
};
struct v2f {
float4 vertex : SV_POSITION;
half2 texcoord : TEXCOORD0;
};
sampler2D _MainTex;
float4 _MainTex_ST;
fixed4 _StartColor;
fixed4 _EndColor;
fixed _Cutoff;
half _Emit;
half _Range;
v2f vert (appdata_t v)
{
v2f o;
o.vertex = mul(UNITY_MATRIX_MVP, v.vertex);
o.texcoord = TRANSFORM_TEX(v.texcoord, _MainTex);
return o;
}
fixed4 frag (v2f i) : COLOR
{
fixed4 col = tex2D(_MainTex, i.texcoord);
fixed a = dot(col.xyz, fixed3(0.3, 0.59, 0.11));
col.a = a;
clip(a - _Cutoff);
if(a < _Cutoff + _Range)
col.xyz = lerp(_StartColor.xyz, _EndColor.xyz, (saturate(a - _Cutoff) / _Range)) * _Emit;
return col;
}
ENDCG
}
}
SubShader {
Tags {"Queue"="AlphaTest" "IgnoreProjector"="True" "RenderType"="TransparentCutout"}
LOD 100
Pass {
Lighting Off
Alphatest Greater [_Cutoff]
SetTexture [_MainTex] { combine texture }
}
}
}
光晕效果需要把摄像机HDR打开并挂上这个脚本(Pro版导入Standard Asset里的)
//Bloom.js
#pragma strict
@script ExecuteInEditMode
@script RequireComponent (Camera)
@script AddComponentMenu ("Image Effects/Bloom and Glow/Bloom (Optimized)")
class FastBloom extends PostEffectsBase {
public enum Resolution {
Low = 0,
High = 1,
}
public enum BlurType {
Standard = 0,
Sgx = 1,
}
@Range(0.0f, 1.5f)
public var threshhold : float = 0.25f;
@Range(0.0f, 2.5f)
public var intensity : float = 0.75f;
@Range(0.25f, 5.5f)
public var blurSize : float = 1.0f;
var resolution : Resolution = Resolution.Low;
@Range(1, 4)
public var blurIterations : int = 1;
public var blurType = BlurType.Standard;
public var fastBloomShader : Shader;
private var fastBloomMaterial : Material = null;
function CheckResources () : boolean {
CheckSupport (false);
fastBloomMaterial = CheckShaderAndCreateMaterial (fastBloomShader, fastBloomMaterial);
if(!isSupported)
ReportAutoDisable ();
return isSupported;
}
function OnDisable() {
if(fastBloomMaterial)
DestroyImmediate (fastBloomMaterial);
}
function OnRenderImage (source : RenderTexture, destination : RenderTexture) {
if(CheckResources() == false) {
Graphics.Blit (source, destination);
return;
}
var divider : int = resolution == Resolution.Low ? 4 : 2;
var widthMod : float = resolution == Resolution.Low ? 0.5f : 1.0f;
fastBloomMaterial.SetVector ("_Parameter", Vector4 (blurSize * widthMod, 0.0f, threshhold, intensity));
source.filterMode = FilterMode.Bilinear;
var rtW = source.width/divider;
var rtH = source.height/divider;
// downsample
var rt : RenderTexture = RenderTexture.GetTemporary (rtW, rtH, 0, source.format);
rt.filterMode = FilterMode.Bilinear;
Graphics.Blit (source, rt, fastBloomMaterial, 1);
var passOffs = blurType == BlurType.Standard ? 0 : 2;
for(var i : int = 0; i < blurIterations; i++) {
fastBloomMaterial.SetVector ("_Parameter", Vector4 (blurSize * widthMod + (i*1.0f), 0.0f, threshhold, intensity));
// vertical blur
var rt2 : RenderTexture = RenderTexture.GetTemporary (rtW, rtH, 0, source.format);
rt2.filterMode = FilterMode.Bilinear;
Graphics.Blit (rt, rt2, fastBloomMaterial, 2 + passOffs);
RenderTexture.ReleaseTemporary (rt);
rt = rt2;
// horizontal blur
rt2 = RenderTexture.GetTemporary (rtW, rtH, 0, source.format);
rt2.filterMode = FilterMode.Bilinear;
Graphics.Blit (rt, rt2, fastBloomMaterial, 3 + passOffs);
RenderTexture.ReleaseTemporary (rt);
rt = rt2;
}
fastBloomMaterial.SetTexture ("_Bloom", rt);
Graphics.Blit (source, destination, fastBloomMaterial, 0);
RenderTexture.ReleaseTemporary (rt);
}
}
原文:http://www.cnblogs.com/mrblue/p/5190536.html
unity怪物攻击玩家减血_Unity3d 怪物死亡燃烧掉效果相关推荐
- unity怪物攻击玩家减血_Unity3D 战斗系统中的怪物简单AI(简单AOI)
AI With Monster In Battle System Introduction 一款RPG的战斗模块中,怪物AI是又一基础单元.在经典的即时战斗中,比较简单的流程是角色进入怪物的仇恨范围- ...
- unity怪物攻击玩家减血_unity3d学习笔记(七)利用单例脚本实现英雄与怪物的攻击与受击...
本系列文章由Aimar_Johnny编写,欢迎转载,转载请标明出处,谢谢. http://blog.csdn.net/lzhq1982/article/details/12653945 我们的世界有了 ...
- unity怪物攻击玩家减血_利用Unity协程实现一个简单的怪物寻路与跟随AI
利用Unity协程实现一个简单的怪物寻路与跟随AI,通过分析怪物行为与逻辑,实现简单的平面怪物寻路与跟随效果. 分析 对于游戏中怪物的行为,简单归纳为如下几部分: 怪物在预设范围内随机移动. 玩家走入 ...
- unity怪物攻击玩家减血_Unity RPG游戏攻击的判定
在一个游戏里面,最重要的要数那些算法了.比如追击AI算法,寻路算法.一个优质的算法能让你的游戏体验更好.那么在RPG游戏里面,我们玩家角色的普攻一般情况下,如果选择的人物是那种剑士职业的(这里打个比方 ...
- unity怪物攻击玩家减血_热血传奇:游戏里要千万小心的小怪,玩家稍有不慎就要吃大亏...
热血传奇这款网游当中,除了形形色色的武器和装备之外,或许数量较多的就是地图当中的各式各样怪物了,在这其中有怪物也是大的BOSS,有的很容易就可以解决的.像新手任务的钉耙猫.鹿.半兽:还有像例如赤月恶魔 ...
- unity怪物攻击玩家减血_怪物猎人发布15周年 — 回顾历代封面怪之三大传奇怪物...
本文来自Jump用户投稿,作者:水熊 2019年3月正逢怪物猎人发布15周年之际,CAPCOM官方网站公布了本次15周年庆典的主题图片. (转自CAPCOM官网,本次15周年主题图片为历代怪物猎人作品 ...
- unity怪物攻击玩家减血_像素地牢开发(unity) 第一篇(并不是第一天)
像素地牢开发(unity) 第一篇(并不是第一天) 大二的时候就特别想制作独立游戏,每次逛b站刷到独立游戏制作的视频就十分羡慕,然鹅我却一直鸽着(别问,问就是刷视频,打王者),但我还是利用了一些空闲时 ...
- Unity吃豆人敌人BFS广度(宽度)优先算法实现怪物追踪玩家寻路
本人正在努力建设自己的公众号,大家可以关注公众号,此文章最近也会上线我的公众号,公众号将免费提供大量教学Unity相关内容,除了从Unity入门到数据结构设计模式外,我还会免费分享我再游戏开发中使用的 ...
- 实现敌人(怪物)的简单AI(自动巡逻、看到玩家攻击玩家、玩家离开恢复自动巡逻)
using UnityEngine; using UnityEngine.AI; /// <summary> /// 敌人自动巡逻 /// </summary> publ ...
最新文章
- java中静态是什么,java中静态和非静态有什么区别
- 标准输入/出与重定向
- 数据查询和业务流分开_数据仓库介绍与实时数仓案例
- 航空购票系统源码java_航空售票系统 - WEB源码|JSP源码/Java|源代码 - 源码中国
- Zabbix 3.0 配置企业微信报警(配置zabbix-web)
- 分数小数互换图_重复控制器学习心得(二)——超前环节的分数化和校正因子的引入...
- windows下注册和取消pg服务的命令
- 加服务器虚拟机软件,服务器虚拟机软件
- IT黑马成长之CSDN第一篇博客
- 猜一宋词名句 Java_宋词名句
- excel输入 正在计算机,在Excel中输入内容后如何自动填写日期和时间
- 机器阅读理解论文必读论文(二): Teaching Machines to Read and Comprehend
- oracle的ofs,OFS_Oracle11g_Windows2008R2
- 菜鸟教程JVM优化,看一篇就够了!
- 世界杯“诈骗杯”?小心这些就对了
- Rust: 基于 napi-rs 开发 Node.js 原生模块
- mac下查看隐藏文件夹
- Win8安装程序出现2502、2503错误解决方法
- 蓝牙智能窗帘(天猫精灵生态)方案
- 色散关系与等离子体色散函数的解析性质