近期热门
粉丝15
关注 3
获赞 2
Unity3D之挥动武器产生的剑痕特效

[U3D] Unity3D之挥动武器产生的剑痕特效

[复制链接]
5223 8 0 4 11年前 举报
雨松MOMO 最近超级忙,好久没写东西啦。前几天学习了一下如何实现剑痕特效。用公司的模型写例子不太好,所以我还是用以前那个小牛头人 嘿嘿。如下图所示,你懂得蛤蛤。
目前已知3种方法可以做这种剑痕特效
1.跟随特效
2.程序实现动态面来处理剑痕动画。
3.美术实现剑痕动画,直接坐在模型动画里面 (因为我不会美术所以这个忽略 嘿嘿)
所谓剑痕特效就是跟随武器挥剑轨迹。那么我们需要在模型上找到武器挥剑轨迹的根节点。如下图所示,首先找到武器模型的根节点。如果你找不到就问问给你模型的美工,他肯定知道。
然后在创建一个空的对象a(随便起一个就行),挂在武器模型的下面。TransformPosition Rotation 都改成 0 0 0 Scale 都改成 1 1 1
1.跟随特效
Unity自带了一个叫Trail Render的组件,就是跟随特效、它可以跟随无题移动产生拖尾的效果。然后使用Component ->Effects->Trail Render把拖尾组件添加至刚刚创建的空模型中。Time是一次跟随的时间,Start Width End Width可以调节拖尾的宽度。
直接运行,怎么样?剑痕特效出来了吧?不过这样做的效果有点局限,因为武器在挥动的时候自身是会旋转的,然而这个粒子效果不会应用武器旋转的角度。它只是根据武器上的一个点始终保持跟随而已。我们需要的是不仅跟随还有和原模型保持同一个角度,所以我放弃了这种方式来制作剑痕。
2。通过程序来动态生成面来实现剑痕特效
原理的话大家可以看我以前写过的一篇文章Unity3D研究院之与根据动态的两个轨迹点绘制面详解(二十)
后来我发现在Unity AssetStort中有剑痕的免费例子,直接搜索Pocket RPG Weapon Trails 即可看到,下面我就来说说怎么把这个例子的剑痕特效快速加到你的工程中,把组件a重新改一下。
然后把AnimationController 绑定在需要播放剑痕特效的模型上,在写一条测试脚本Test.cs
Test.cs
using UnityEngine;
using System.Collections;
public class Test : MonoBehaviour
{
public WeaponTrail a;
protected AnimationController animationController;
void Start ()
{
animationController = GetComponent<AnimationController> ();
animationController.AddTrail (a);
//设置拖尾时间
a.StartTrail(0.5f, 0.4f);
//设置播放时间
a.SetTime (0.5f, 0.2f, 0.2f);
animation.Play();
}
}
另外,记得一定要修改动态网格的坐标,在本例就是对象 a。修改的时候你可以按帧来播放游戏(快捷键Command + shift + p ),直到向下面这样,剑痕网面的角度始终跟对武器。不同的模型可能角度会有点不同,这里需要调一调。
还有Unity4增加了新的动画系统,此时你在把老的模型动画托放在工程中会发现已经不是Animation组件了, 而是Animator 。用以前的方法是播放不了动画的,除非手动修改一下模型的类型为 Rig -> Legacy 、但是如果你的模型和动画非常的多,程序绝对不能手动的一个一个来修改。所以我写了下面这个简单的脚本,当模型拖入Project视图时自动修改类型。把下面脚本放在Project视图 Editor文件夹下,没有的话创建一个即可。
using UnityEditor;
public class EditA : AssetPostprocessor
{
public void OnPreprocessModel()
{
ModelImporter modelImporter = (ModelImporter) assetImporter;
//这里是模型的缩放比例,默认为0.01 这里我改成了1
modelImporter.globalScale = 1f;
//这里修改模型类型
modelImporter.animationType = ModelImporterAnimationType.Legacy;
}
}


Unity3D之挥动武器产生的剑痕特效.wps 已购买

1.13 MB 售价: 2 张CG券  [记录]
下载
0
点赞
0
打赏
4
添加到收藏夹

0

点击复制链接

使用微信扫码分享
一次扣10个券
全部评论8
您需要登录后才可以回帖 登录

很好。。学习了。。。
10年前
回复

使用道具 举报

请问请问请问请问
11年前
回复

使用道具 举报

感谢分享,先标记再慢慢学{:7_268:}
11年前
回复

使用道具 举报

用动画烘焙的uv动画,效率很高
11年前
回复

使用道具 举报

留名收藏以及感谢
11年前
回复

使用道具 举报

雨松MOMO的技术帖写的质量一向很高
很多不太懂得unity问题都是在他那里找到答案的
11年前
回复

使用道具 举报

不明觉厉
11年前
回复

使用道具 举报




不错不错!

11年前
回复

使用道具 举报

您当前使用的浏览器IE内核版本过低会导致网站显示错误

请使用高速内核浏览器或其他浏览器