3DMGAME 3DM首页 新闻中心 前瞻 | 评测 游戏库 热门 | 最新 攻略中心 攻略 | 秘籍 下载中心 游戏 | 汉化 购买正版 论坛

注册 登录

QQ登录

只需一步,快速开始

查看: 21650|回复: 21
打印 上一主题 下一主题

[推荐] [mod制作教程][翻译]kf动作文件制作教程

 关闭 [复制链接]

0

主题

412

帖子

475

积分

高级玩家

Rank: 4

贡献度
54
金元
2594
积分
475
精华
0
注册时间
2006-10-2
跳转到指定楼层
主题
发表于 2010-1-9 12:10 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
--------开篇废话----------
小弟高中英语水平,不会3DMAX,不会Blender..翻译质量请容忍…若有问题,别找我……
PS:国外的上古mod制作界貌似blender比max热门很多,网站上面的教程几乎都是blender的,也许是max只有8.0可用而blender则不断地更新吧,毕竟blender是免费软件
----分割线-----------------------
工具准备:
Nif skope:http://sourceforge.net/projects/niftools/files/nifskope/
以下请按顺序安装
1.Blender:http://www.blender.org/download/get-blender/
2.Python 2.6(安装第4项的必需品,貌似2.6以上或以下的版本都不行):
http://www.codepub.com/d/downpage.php?n=1&id=12776::1216477367
3.PyFFI(安装第4项的必需品,插件比软件本体还大牌,无语):http://sourceforge.net/projects/pyffi/
4.Nif scripts for blender:http://sourceforge.net/projects/niftools/files/blender_nif_scripts/
---------分分分分分分分分分分分分分分-------------
以下内容摘自http://cs.elderscrolls.com/constwiki/index.php/Blender/Creating_a_Character_Animation
如果看不懂我写的中文,可以自己去看。。
----------正文---------------
Part 1: 准备工作
本教程是在2.48版的blender,2.1.13版的 NIF scripts环境下制作的。首先我们要有一个骨骼文件(skeleton.nif或skeletonbeast.nif),还有身体文件(femaleupperbody.nif等)。
接下来我们将以Robert's Average Male V4的身体文件为例。


首先,点files—import-- netimmerse/gamebryo,导入头部模型文件head.nif(我们用的beautiful people,头部文件储存在MeshescharactersRenHead里)接着就是身体模型文件upperbody.nif, lowerbody.nif, hand.nif and foot.nif(储存在Meshescharacters_male里),接着,右键一一点选画面中的骨骼(黑色粒状),狠狠地按下del键。(这一步导入模型时按照默认设置导入即可,不用选择"import skeleton only and parent to selected")


运用shift键和鼠标右键点选所有的肉体模型,按下ctrl+J,这会让各部分身体拼凑/结合在一起,让你更好地给小人摆pose。


点选你拼凑好的肉体,用同样方法导入meshes/characters/_male里的skeletonbeast.nif(skeleton.nif应该没区别)。如图所示,一定要点上"import skeleton only and parent to selected"。



然后你将会看到以下一副景象



制作动作最重要的就是时间轴
我估计你现在正挣扎在blender那凌乱的界面中,其实,只要弄的好,画面是可以很直观的。例如,要弄一个时间轴面板,首先右键点击已有的面板的左边界或右边界,然后选择 “split” ,划出一个新区域。新区域的左上角有一个图标,点击它,选择timeline,那么,一个时间轴面板就横空出世了。(你可以多创造几个面板玩玩,熟悉下blender的界面。如果多了,右键点面板边界,选择join,就可以删掉它了)



经过上一步的挣扎,我想你也对blender的界面略知一二了。那么,看看最下面的buttons面板,它很有用。



关键来了,如图所示,像刚刚那样,点击buttons面板的上边界,创造出一个 text editor面板



然后,点击text---new 如图所示,将那里改成anim,这样傻傻的blender娘才知道我们要制造kf动作文件。



Now type what you see here.
如图,在文本中框输入如下内容
[img]
/[/img]


“/start”前面的数字为起始帧,那么end前面的的就是结束帧。一般的动作文件是不可能只有2帧的,除非你铁了心做一个雕像式定格动作。
(根据我一天的blender使用经验,貌似每9帧为0.3秒,也就是3帧0.1秒,也就是1帧0.033333秒,也就是30帧1秒)





那么,下一步就是给你的动作加一个优先权,这会决定在游戏中是不是优先做这个动作。

在模型面板中转换至 pose mode,接着按下A键,选中所有骨骼。

接着将我们的button面板转换至script面板,看图,选择scripts—object里的Set Bone Priority,一般来说设置30的priority(优先权)即可。



最后将scripts面板再换回buttons面板,并且确认模型面板依然处在pose mode下

好了,一切妥当,我们要开始蹂躏面前的小人了。










Part 2: 捏动作


要确认时间轴里的始末帧与text面板里设置的始末帧相吻合,并将时间拖到第一帧,本例中唯一两帧的其中一个。

这一段我就不必放太多图了,最主要的是靠你们自己动手。动作制作中,最简单的骨骼调节方式是右键选择骨骼,然后按R,进行调整,多多利用小键盘1 3 7和ctrl+1 3 7更换视野,你可以很方便地调整人物的体态。


现在看到button面板,点选“x-ray”可以让你穿越小人的肉身看见骨骼,同时点掉“names”和“axes”可以使界面更简洁



上图可见,你可以在时间轴里自由穿梭,但前提是最终输出的动作只有text面板里写的始末帧之间的段落(怎么感觉老外这么啰嗦)。


用最少的调整量来完成你的动作,如果调的太多,善后工作将会十分繁琐,所以尽量使用Rotation(旋转)而不是translation


Remember, you can achieve more precision with your rotation of a bone by selecting x, y or z after pressing r. Pressing the ctrl key and holding it down while rotating insures you rotate in whole units and can be quite useful as well.
%……&@¥(¥@*&¥(*@这一段看不懂,貌似也没什么用吧。

多加练习,熟能生巧,久而久之你会很适应这种调整工作,但最难的还是手指的部分。


当你满意了这一帧的动作,按下I键并选择loc/rot,这样一个记录了当前动作的位移/旋转情况的关键帧就出现了。如果你制作的是跑步/走路动作,loc的关键帧数据就很重要。


转到第二帧,用同样的方法弄一个关键帧。


如果你制作了一个连贯的动作,拥有很多帧,你只要在几个关键的地方做关键帧就可以了,例如每五帧,十帧,因为blender会自动将两帧之间的动作连起来。做这种移动的动作需要更多的练习和规划,所以初学者还是做雕像式动作比较好。


当你满意了你制作完成的动作,你可以按播放键来欣赏你的劳动成果,如果你做的是雕像式定格动作还去按,那是你闲的蛋疼。

Part 3: 输出nif

如图
[img]
[/img]


一定要点选"animation only.",如果你要在CS里弄一个动作mod出来,就把它存到meshes/characters/_male/IdleAnims。否则就在meshes/characters/_male/


[edit] Part 4: Nifskope Alchemy

用nifskope打开你的宝贝kf文件,你将什么也看不到,因为kf文件不包含模型




在本例中,在顶部nicontrollersequence的右边你会看到"KNEELINGcower1."。改成"specialidle_"(如果是平常的待机动作就idle,如果是前进动作就forward,如此类推)如果不改,游戏将不会认出你的kf


选择了nicontrollersequence后,在下面block detail栏目里(打开nifskope上view里的show blockdetail)你会找到起始时间starttime,结束时间stoptime,循环方式cycle type。将循环方式设置为loop,起始时间为0,结束时间则要看你的kf文件实际情况。




设置好后,就可以保存了。进游戏测试吧


(译者注:我的实践中,到这里为止进游戏kf文件还是没法被认出,还有一个步骤需要完成:随便点击block list栏的空白处,将block detail栏拉到最底下,打开nitextkeyextradata,那里将有两个text key,分别对应始末帧,展开,我们将看到一个起始时间 0.0000和结束时间,例如0.6666,在它们这一行下面的一行分别改成start和end,保存,这样我的kf才表现了出来,不知道是不是我上面的操作漏了什么)


如果你的动作能成功表现,人物是站在地上而不是陷进地里,那恭喜你,这篇教程你已经毕业,但如果你的人物陷进地下,那你就继续看下去,我将教你用nifskope调整Bip01 NonAccum来解决这个问题


Part 5: 调整


你制造的动作可能使你的人物站在天上活着埋在地下,或者更可怕,这些起始都可以在blender里防止,但是,我还是觉得nifskope比较方便

上一张图片你可以看见NiControllerSequence.里有一个"Num Controlled Blocks",展开它。


这里就是所有在这个动作里被控制的骨骼列表,现在我们关注的是其中的"Bip01 NonAccum.",展开它
[img]
[/img]



点一下NiTransformInterpolater前面的箭头,然后再点NiTransformData前面的蓝色箭头


展开translation,我们将看到本例中有两个key,分别对应两个关键帧,你可以这样找到关于其他骨骼的关键帧的部分(?)。



现在你可以看到两个key,一个对应开始时段,一个对应结束时段,不要去修改它们的时间,没用。



现在看到这上面的X Y Z坐标,与飞天遁地有关的便是我们的Z,一般来说67.414的Z轴数据就能使我们的小人站在地上,如果不是,你就进游戏看着,调整这个数字,知道改好为止
(同理,如果你的动作使你的人物面向的方向出现错误,就更改Quayernion key中的R坐标)。



这就是为什么我说关键帧越少越好,要是你弄了一大串关键帧,现在就改死你了。



好了,这个教程到此为止,希望你们已经看到你的上古小人摆着你给它设置的动作了)

评分

2

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏5
回复

使用道具 举报

7

主题

3113

帖子

4896

积分

游戏精英

Rank: 8Rank: 8

贡献度
733
金元
19643
积分
4896
精华
0
注册时间
2009-1-3
舒服的沙发
发表于 2010-1-9 12:14 | 只看该作者
教程就要顶! 虽然界面是blender的, 但是胜在有提到nifskope的操作
回复 支持 反对

使用道具 举报

26

主题

1981

帖子

2469

积分

游戏达人

Rank: 7Rank: 7Rank: 7

贡献度
341
金元
11054
积分
2469
精华
0
注册时间
2009-12-3
硬硬的板凳
发表于 2010-1-9 12:14 | 只看该作者
技术文支持!!!!!!!
回复 支持 反对

使用道具 举报

0

主题

412

帖子

475

积分

高级玩家

Rank: 4

贡献度
54
金元
2594
积分
475
精华
0
注册时间
2006-10-2
冰凉的地板
 楼主| 发表于 2010-1-9 12:15 | 只看该作者
我晕图片出问题了!!!等我编辑!
回复 支持 反对

使用道具 举报

26

主题

1981

帖子

2469

积分

游戏达人

Rank: 7Rank: 7Rank: 7

贡献度
341
金元
11054
积分
2469
精华
0
注册时间
2009-12-3
5#
发表于 2010-1-9 12:16 | 只看该作者

回复 4# xosuperpig 的帖子

怪了。。。刚刚还好好的。。。。
回复 支持 反对

使用道具 举报

60

主题

5353

帖子

7435

积分

游戏精英

Rank: 8Rank: 8

贡献度
1137
金元
28666
积分
7435
精华
2
注册时间
2009-5-14
6#
发表于 2010-1-9 12:18 | 只看该作者
这个好~~看看,mark了
回复 支持 反对

使用道具 举报

60

主题

5353

帖子

7435

积分

游戏精英

Rank: 8Rank: 8

贡献度
1137
金元
28666
积分
7435
精华
2
注册时间
2009-5-14
7#
发表于 2010-1-9 12:21 | 只看该作者
看起来挺简单的,持剑的动作和相关物品怎么添加和设置呢?
(根据我一天的blender使用经验,貌似每9帧为0.3秒,也就是3帧0.1秒,也就是1帧0.033333秒,也就是30帧1秒)

lz果然是唐僧转世来着[em18]
回复 支持 反对

使用道具 举报

31

主题

3989

帖子

4152

积分

游戏精英

Rank: 8Rank: 8

贡献度
350
金元
27519
积分
4152
精华
0
注册时间
2007-12-11
8#
发表于 2010-1-9 12:35 | 只看该作者
很强的技术帖子!
回复 支持 反对

使用道具 举报

56

主题

1万

帖子

2万

积分

云游仙境

★=藍藍路=★

Rank: 12Rank: 12Rank: 12

贡献度
3808
金元
82002
积分
23432
精华
0
注册时间
2007-11-26
9#
发表于 2010-1-9 12:38 | 只看该作者
(´?????) 

太好了
配上另外一個BLENDER的教學
這樣應該夠了
(´?????)
回复 支持 反对

使用道具 举报

15

主题

2882

帖子

5944

积分

游戏精英

Rank: 8Rank: 8

贡献度
1008
金元
18821
积分
5944
精华
3
注册时间
2008-2-11
10#
发表于 2010-1-9 12:48 | 只看该作者
这个挺好,虽然不用Blender,也要支持一下。
想要有一个好看的空手待机和单手剑待机姿势,现在的都不好看。
回复 支持 反对

使用道具 举报

5

主题

1262

帖子

1776

积分

游戏狂人

Rank: 6Rank: 6

贡献度
248
金元
7843
积分
1776
精华
0
注册时间
2007-2-8
11#
发表于 2010-1-9 13:01 | 只看该作者
这个可以顶。。。

教程贴必支持。。。
回复 支持 反对

使用道具 举报

1

主题

1724

帖子

1942

积分

游戏狂人

Rank: 6Rank: 6

贡献度
249
金元
9456
积分
1942
精华
0
注册时间
2004-1-31
12#
发表于 2010-1-9 13:31 | 只看该作者
貌似blender让我更头疼。。。
回复 支持 反对

使用道具 举报

4

主题

772

帖子

1422

积分

游戏狂人

Rank: 6Rank: 6

贡献度
226
金元
5178
积分
1422
精华
0
注册时间
2009-9-18
13#
发表于 2010-1-9 22:24 | 只看该作者
好多东西要学啊,怎么办呢.
[em10]
回复 支持 反对

使用道具 举报

0

主题

1006

帖子

1163

积分

游戏狂人

Rank: 6Rank: 6

贡献度
169
金元
5471
积分
1163
精华
0
注册时间
2009-2-5
14#
发表于 2010-1-9 22:34 | 只看该作者
纯顶[em10]
回复 支持 反对

使用道具 举报

8

主题

1155

帖子

1823

积分

游戏狂人

Rank: 6Rank: 6

贡献度
289
金元
7271
积分
1823
精华
0
注册时间
2008-11-29
15#
发表于 2010-1-18 20:39 | 只看该作者
[em57]好贴要顶!!!

另外请教一个关于KF动作的问题 我在制作一些KF动作时 发现如果头转动的角度过大(比如身体不动 让头向左转90度) 导出的动作在游戏中会因为头转的角度太大 而导致上半身跟着向头的方向转动 这样就达不到预想的效果了

但是我发现11区的高人SPB做的动作就没这个问题 他能在身体向正前方的情况下 使头部向左/右转90度(具体参见SPB01 POSE 第5行第一个动作)[em46]

其实我这里到是已经实现了这个效果 具体方法是在制作KF文件时 故意让上半身往头转的相反方向转一定角度 这样进游戏里 虽然上半身会因为头的大角度转动而跟着也转过去 但是因为有了预先的反方向休整 所以正好达到效果 步骤是上半身先向左30度 头向右120度 进游戏正好上半身下半身都向前 而头向右90度 但是因为上半身动了 所以腰那里有一点扭曲形变 还是不完美..

而SPB的动作显然只是头转了90度 其他地方没影响 我猜想是不是SPB在骨骼节点的属性自定义里加了什么指令 还是跟骨骼节点的优先级 BIP01的参考什么的有关系 因为本人3D基础比较差 实在是找不出问题所在


另外今天群中给出了一个T网高手做的骨骼 http://tesnexus.com/downloads/file.php?id=28279说是可以解决头转90度 身体保持正直
但是我发现除非用他这个骨骼替换游戏本身骨骼才能达到这个效果 而他的这个东西本身也存在一些问题 另外SPB等人显然也没有依靠新骨骼来完成这个效果 所以这个东西还是治标不治本[em07]...

不知道论坛里有没有高人对KF 骨骼什么的有这方面的研究 恳请指点交流 [em67]

贴点最近做得玩的



万恶的上传又给压缩花了[em40]

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

136

主题

5163

帖子

1万

积分

版主

Rank: 18Rank: 18Rank: 18Rank: 18Rank: 18

贡献度
3649
金元
38163
积分
18412
精华
0
注册时间
2009-12-27
16#
发表于 2010-1-18 20:46 | 只看该作者
这个事怎么了呢,狂人也来了呀,呵呵
回复 支持 反对

使用道具 举报

12

主题

2534

帖子

2566

积分

游戏达人

Rank: 7Rank: 7Rank: 7

贡献度
157
金元
19383
积分
2566
精华
0
注册时间
2009-6-26
17#
发表于 2010-1-19 01:04 | 只看该作者
我也在学习制作自己喜欢的动作 但一直用的3DMAX 好象是输出的时候有问题 一直不满意 现在起跟你好好学下BLENDER
回复 支持 反对

使用道具 举报

28

主题

2376

帖子

1955

积分

游戏狂人

Rank: 6Rank: 6

贡献度
123
金元
14627
积分
1955
精华
0
注册时间
2005-5-8
18#
发表于 2010-1-21 22:14 | 只看该作者
有个问题,想问一下,假如我想制作像格斗的动作,如dr5,攻击方a一刀击中b头部,被攻击的b要做出头部被击中后昏眩的动作,但原来游戏中只有攻击的kf文件,可以用自己制作的攻击kf文件替换,并识别。但b被击中后的动作原来却没有,我要如何才能让游戏识别并执行这个动作呢?
回复 支持 反对

使用道具 举报

2

主题

228

帖子

196

积分

中级玩家

Rank: 3Rank: 3

贡献度
27
金元
1483
积分
196
精华
0
注册时间
2003-11-30
19#
发表于 2010-1-23 05:12 | 只看该作者
[em60] 晕,我导入的骨骼怎么是这个样子的?怎么解决啊???

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

4

主题

1960

帖子

2860

积分

游戏达人

Rank: 7Rank: 7Rank: 7

贡献度
450
金元
11195
积分
2860
精华
0
注册时间
2009-6-9
QQ
20#
发表于 2010-1-23 06:05 | 只看该作者
很好 很強大 以後可以自己做了~
回复 支持 反对

使用道具 举报

26

主题

1134

帖子

1743

积分

游戏狂人

Rank: 6Rank: 6

贡献度
262
金元
6947
积分
1743
精华
0
注册时间
2010-1-16
21#
发表于 2010-2-19 13:38 | 只看该作者
[em60] 晕,我导入的骨骼怎么是这个样子的?怎么解决啊???

kun7504 发表于 2010-1-23 5:12:00

怎么看怎么觉得你的骨骼貌似还有个翅膀的啥……
是不是用了啥mod,比如扇动翅膀的动作mod?

问一下,我的blender里只有object mode 没有pose mode是怎么回事?
回复 支持 反对

使用道具 举报

0

主题

19

帖子

-5

积分

游戏亡灵

贡献度
-1
金元
595
积分
-5
精华
0
注册时间
2010-4-23
22#
发表于 2010-4-24 00:44 | 只看该作者
这玩意对我这样的新手太有挑战性
还是漫漫来吧
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|咖绿茵|求知网|3DMGAME ( 京ICP备14006952号-1  沪公网安备 31011202006753号

GMT+8, 2024-9-29 05:38 , Processed in 0.117673 second(s), 18 queries , Memcache On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表