欢迎您,请 登录 或 注册会员

偶久网

楼主: 无冕之王

自定义技能制作教程

  [复制链接]
无冕之王
 楼主| 发表于 2008-8-20 16:29:10
第六章 进阶知识

经过前边几章的讲解和演练,相信各位已经对自定义技能有了初步的了解了,同时也能做出一些简单的自定义技能来了。但是,这些对于一个想在自定义技能,尤其是T技能上有进一步发展的人来说,还是远远不够的。下边我们就一起来聊聊进阶知识。
首先说一下编程习惯,也许有人会说这都是细枝末节的问题,但是如果不注意,恐怕很难跻身高手行列。
一.变量类型和变量命名
WE中用到了很多类型的变量,当然有许多变量类型本质上是一样的,但是我们尽量还是要在命名上把他们区分开。按照大部分编程语言的惯例,使用3个字母的英文缩写来做变量名前缀,以便区分。另外该变量代表什么,就用拼音或者英文来命名它,而不要胡乱打几个字母。比如,布尔型的通用后缀为bln,假如有一个布尔型变量用于纪录单位是否存活就可以这样命名:blnCunhuo或者blnLive;又如一个纪录英雄的单位类型变量可以命名为 untYingxiong或者untHero等等。这样做是为了方便日后自己修订地图,也方便别人看懂自己的代码。如果命名没有规则,很可能时间长了自己都不知道该变量代表什么了。
下边是变量类型的中英文对照和建议前缀表。
英文名称
中文名称
建议前缀
boolean
布尔型(用于真/假判断)
bln
destructable
可破坏物
des
dialog
对话框
dlg
button
按钮
btn
texttag
漂浮文字
txg
integer
整数
int
item
物品
itm
leaderboard
排行榜
lbd
player
玩家
ply
force
玩家组
frc
location
位置(点)
loc
real
实数
rel
rect
地区
rec
effect
特效
eff
string
字符串
str
terraindeformation
地形
tmt
timer
计时器
tmr
timerdialog
计时器窗口
tdg
unit
单位
unt
group
单位
grp
playerscore
玩家积分
pls
二.触发器的整合
有不少人在刚接触WE的时候基本去注意触发器的整合,想到几个动作,就去新建一个触发器。甚至光初始化就有好几个,为阅读增加难度不用说,还因为执行顺序不可预料而增加了出现BUG的机会,想去修正有很难找出毛病所在。为了让自己的触发器变的有条理,就需要把多个触发整合到一个上边,这样做还有一个好处就是,可能有几个不同作用的触发器组他们有一个或几个触发器事件相同,那么使用条件判断依次去执行各动作,不但条理清楚,而且为维护提供了方便。当然,如果触发器本身条件判断过于复杂,那么还是让他们分着吧,弄到一起反到容易出错误。
三.尽量排除内存泄漏
什么是内存泄漏呢?简单来说,我们在WE中要用到很多数据,这些数据有时候不用变量纪录,或者使用变量纪录了没有清除,那么这些数据就可能堆积在内存中,内存中的有效空间越来越少,游戏就越来越卡,甚至跳出来。对于单个技能的示例来说,内存泄漏显的微不足道。但是我们做技能最终目的还是应用的成图中,大量技能反复使用,内存泄露就成了大问题,所以应当养成排漏的习惯。
要想知道怎么排漏,就先明白那些数据需要清理,那些不需要。一般来说,基本的数据类型不用特别清理。








我们都知道,自定义技能除了实际效果要新颖、没有严重BUG之外,最重要的就是特效要漂亮了。当然,这里所说的漂亮不仅限于华丽,还包括素雅,灵动,简约等等。实际上,在成图中,太华丽的技能反而不多,因为在照顾视觉感
受的同时,更应该考虑到运行速度、触发器冲突等问题。
在前边已经提到过,特效可以用原模型的固有效果,也可以使用多个模型一点、线、面的方式拼凑出新效果。使用原模型的固有效果创造优秀的特效需要很扎实的基本功,多看,多学,多做,尽可多能的掌握原有的模型,包括直接使用时的效果,经过缩小、放大、旋转之后的效果,静止时是什么样子,缓慢移动是什么样子,快速移动又是什么样子。没有长期的浸淫是很难做到这一点的。
使用多个模型拼凑特效,相比较而言需要基本功少一点,但是需要一定的数学和编程基础,总的来将也不简单。在这一章了我们简单介绍一下使用固有模型效果的基本方法,着重讲解一下拼凑特效。

评分

1

查看全部评分

冰蓝幻想
发表于 2008-8-26 19:53:33
额..

LZ好辛苦..

我个看的昏..
狂风
发表于 2008-8-28 18:45:45
我要学学......
发表于 2008-9-10 22:18:38
深熬[p12]
炽阳
发表于 2008-10-6 01:48:54
你这么说我不晕是我运气
❀sunshin
发表于 2008-10-8 16:10:05
[p16] 眼睛花
炽阳
发表于 2008-10-9 04:22:51
没用的....你写得那么复杂
wzt2438805
发表于 2008-11-16 09:26:48
[p17] 谢谢楼主
ly34352
发表于 2008-12-8 22:11:38
啊   好详细

比自己研究好多了

能做我师傅吗???[p13]
dagoner
发表于 2010-5-19 08:44:21
{:6_375:}膜拜楼主
快速回复 返回顶部 返回列表