幻想森林

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
楼主: judem

耽误点时间,关于眼部动画

[复制链接]

125

主题

288

帖子

1387

积分

⑥精研

积分
1387
发表于 2005-8-16 20:14:20 | 显示全部楼层
以下是引用toz在2005-8-16 19:34:32的发言:

哦,原来说的是这个……

……我的话还是会纯手动完成吧……(眨眼也是表现人物个性的演出手段之一啊,总觉得不能搞得这么自动……)

d san 的方法很浪费资源(素材体积无端的增大了许多……我总觉得这是种罪孽啊……[em01]……唉,想法跟不上时代了……)……不过我的做法……浪费代码……吧[em17]?


除了COUNTD说的那种我也想不到其他方法了,麻烦你写一段吧,我一点头绪都没有

本帖子中包含更多资源

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

x
回复 支持 反对

使用道具 举报

122

主题

3954

帖子

24万

积分

超级版主

传说中的Bunny坑神~!

Rank: 8Rank: 8

积分
244543

声命组铜赏

发表于 2005-8-16 20:53:22 | 显示全部楼层
一张眼睛图片(JPG格式)占用的空间可能只有几K而已...
与其花时间在写眨眼代码的同时增加出BUG的可能性,不如挑选最简洁易读的办法.
本来在可读性和效率之间我就是偏向可读性的一方...= =
至于\"表现人物个性的演出手段\"...眨眼是比较无意识的行为...除非撒谎之类的情绪变化,和人物性格估计关系不大.
一句话中间眨几次眼换三四个表情...orz...我想起日本的动画,人物说话普遍下巴从来不动...难道...这罪孽可就大了...
如果不是做动画的话,通过台词来表现会更合适...在显示文章的过程中,会注意到人物的表情细微变化的玩家...= =这是拥有猎手般的眼神么?
http://www.nvlmaker.net/
回复 支持 反对

使用道具 举报

3

主题

5

帖子

1313

积分

⑥精研

积分
1313
 楼主| 发表于 2005-8-17 02:56:19 | 显示全部楼层
谢谢各位热心的大人!(本以为没人理的)我搞成功了,原本以为会很复杂……再顺便问一下,那里面的效果动画除了大晴天之外,那些樱花啊,雨天,下雪什么的为什么我显示出来周围都有黑块呢,是我机子的问题还是普遍存在的?
回复 支持 反对

使用道具 举报

12

主题

225

帖子

2396

积分

开发组

三心二意魔人

积分
2396
发表于 2005-8-17 10:07:38 | 显示全部楼层
老实说我得承认,我昨天一直到做完这个例子为止都只以为讨论的是演出过程中的眨眼……完全没意识到一般的avg还有当玩家扔下鼠标去吃个便饭什么的时候角色会自己眨啊眨的……这种功能……(废!)
不过后来意识到了赶紧加了个公共事件……ns里lsp的动画时间制定是可以具体到每一祯的,写成lsp 0,\":c/3,<20,20,2400>,0;11.jpg\",124,224这样就行了,我刚从手边一个同人游戏里学来的,笑。后面的动画播放方式参数写的是0,不知有什么特殊含义……写2--循环播放好像也一样……
http://ngzh.51.net/download/zy.rar
回d san,因为刚玩了个网王的同人游戏(就是上边提到的那个),那里面眉毛眼睛嘴巴什么的全是切开来的分别作的,然后在对话时被华丽的组合到了一起……完全是动画的做法呢……用来控制表情的代码长度(将近100k……)比全部的对话长度还要长(只是个5分钟短剧而已……)……我被这种极端重视演出效果的有着同人女狂热感的做法深深的震撼了呀……
回楼主,真是不好意思,完全跑题到别的制作软件上去了……[em01]
回复 支持 反对

使用道具 举报

122

主题

3954

帖子

24万

积分

超级版主

传说中的Bunny坑神~!

Rank: 8Rank: 8

积分
244543

声命组铜赏

发表于 2005-8-17 12:04:13 | 显示全部楼层
显示出来有黑块的问题似乎是由于系统的RP问题而存在的...
然而目前越来越多的玩家反映这个问题...我们只好华丽的归结为LM2的RP实在太严重了...
回toz 桑:
我倒是没想过\"演出过程的眨眼\"这个很汗的问题...毕竟那类型的我只有在非PC游戏上看到呢...一般来说一句话变一个表情基本上就是偶的极限了...(想都不敢想表情代码比对话还长...那五分跳票的时间估计还得延长个一年半年的....XDDD)
那个网王的游戏有下载的么?[em01]闪着星星眼期待中...这世界真是充满了华丽的BT们啊...[em08]
http://www.nvlmaker.net/
回复 支持 反对

使用道具 举报

12

主题

225

帖子

2396

积分

开发组

三心二意魔人

积分
2396
发表于 2005-8-17 18:12:19 | 显示全部楼层
果然是说岔了呢……我就觉得接不上茬…[em01]…那个游戏也是一句一变……只不过它句子很短……[em08]
这是那位作者的地址:(!bl有!不喜者慎入)
http://otome5.cool.ne.jp/
可免费下载游戏有三个,不光是短剧,也有趣味性很强的小游戏,这位作者思路非常灵活呢……
演出过程的眨眼不就跟口型动画一样么?带配音的游戏基本都有口型动画吧?那种的是怎么做的呢?除了一字字的手动对口型……还真想不出有什么方便的方法……
回复 支持 反对

使用道具 举报

125

主题

288

帖子

1387

积分

⑥精研

积分
1387
发表于 2005-8-17 19:53:10 | 显示全部楼层
以下是引用toz在2005-8-17 10:07:38的发言:

老实说我得承认,我昨天一直到做完这个例子为止都只以为讨论的是演出过程中的眨眼……完全没意识到一般的avg还有当玩家扔下鼠标去吃个便饭什么的时候角色会自己眨啊眨的……这种功能……(废!)

不过后来意识到了赶紧加了个公共事件……ns里lsp的动画时间制定是可以具体到每一祯的,写成lsp 0,\":c/3,<20,20,2400>,0;11.jpg\",124,224这样就行了,我刚从手边一个同人游戏里学来的,笑。后面的动画播放方式参数写的是0,不知有什么特殊含义……写2--循环播放好像也一样……

http://ngzh.51.net/download/zy.rar

回d san,因为刚玩了个网王的同人游戏(就是上边提到的那个),那里面眉毛眼睛嘴巴什么的全是切开来的分别作的,然后在对话时被华丽的组合到了一起……完全是动画的做法呢……用来控制表情的代码长度(将近100k……)比全部的对话长度还要长(只是个5分钟短剧而已……)……我被这种极端重视演出效果的有着同人女狂热感的做法深深的震撼了呀……

回楼主,真是不好意思,完全跑题到别的制作软件上去了……[em01]


看完演出效果和脚本后小小的寒了一下,为什么不是一直使用一个公共事件,而是在说话中插入图片切换语句??眨眼的动作和是否说话是没有联系的,这个你应该知道吧orz
现在看上去就是说话的时候猛眨眼,然后说完才恢复正常(如果连续SKIP的话岂不是要放电波了[em04]……口型同样存在这个问题)

网王那个还没看,不知道是怎样处理的
回复 支持 反对

使用道具 举报

12

主题

225

帖子

2396

积分

开发组

三心二意魔人

积分
2396
发表于 2005-8-17 20:23:22 | 显示全部楼层
\"眨眼的动作和是否说话是没有联系的,这个你应该知道吧orz\"……就是不知道啊~~~orz
skip的王道解决方法:  禁止 skip!!
(无赖啊……暴露本质了……-____-|||)
网王那个眨眼也是公共事件…2秒半一眨…不用看了……

[此贴子已经被作者于2005-8-17 21:15:05编辑过]
回复 支持 反对

使用道具 举报

5

主题

43

帖子

1428

积分

⑥精研

活·潑·可·愛

积分
1428
发表于 2005-8-17 21:04:25 | 显示全部楼层
禁止skip……
那么如果剧本庞大如air,memorise off……恶梦啊……恶梦……
回复 支持 反对

使用道具 举报

125

主题

288

帖子

1387

积分

⑥精研

积分
1387
发表于 2005-8-17 21:25:33 | 显示全部楼层
其实我想到的方法是这样的,用ISSKIP来确认执行状况,SETTIMER并在输出每个文字后GETTIMER,在EADV里面我也是让它这么干的,不过全部交给引擎来处理
写成NSCR的脚本大概就是:
*Prepare

mov %nTotalTimer,total motion timer
*BeginDraw

cl c,\"mychara.graphic\"
*BeginTextOutput
isskip %bIsSkipModeOn
notif %bIsSkipModeOn gosub *EnableFaceMotion


gosub *CheckMotionTimer

gosub *CheckMotionTimer

gosub *CheckMotionTimer

gosub *CheckMotionTimer

gosub *CheckMotionTimer

gosub *CheckMotionTimer

gosub *CheckMotionTimer
呀\\

*CheckMotionTimer

if %bIsSkipModeOn return

gettimer %nTemplateTimer

while (%nTemplateTimer - %nMotionTimer - %nTotalTimer > 0) {
add %nOriginalTimer,%nTotalTimer
}

mov %nIndexOfMotion,0
sub %nTemplateTimer,%nOriginalTimer
for(mov %i,0 : %i < %nTotalMotionNumber : inc %i) {
if (%nTemplateTimer > %nMotionTimer)  mov %nIndexOfMotion,%i
}

cell %hValidBuffer,%nIndexOfMotion
return

*EnableFaceMotion

resettimer
mov %nOriginalTimer,0
lsp %hValidBuffer,\"myface.graphic\",pos x,pos y,alpha
mov %nTotalMotionNumber,total motion number
mov %nMotionTimer[0],first action
mov %nMotionTimer[1],second action
....

return
我几乎没用过NSCR,所以也不知道个别指令是怎么书写的,希望不会有阅读障碍[em01]
回复 支持 反对

使用道具 举报

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

本版积分规则

Archiver|手机版|小黑屋|幻想森林

GMT+8, 2025-6-18 10:22 , Processed in 0.013772 second(s), 20 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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