【ぬるぬるMMD】たこアリスで WAVEFILE【カメラTEST】

D


を使ってみるテスト。
本来は、最後の「ありがとう」のシーンみたく軸線を固定する必要がある場面ではあらかじめ余計にキーを打っておく必要があるのでしょうが、テストということでそのままに。

このツール、この動画みたく補完曲線を入れること前提のカメラモーションでなく、これ用に補完曲線無しで作ったカメラに適用しないとうまく行かない感じ。

でも同一方向で速度だけが変わるようなシーンでは上手くなめらかに調整してくれるみたいだから充分有用。全体にかけるよりもシーン毎にカメラ作ってそれにかける方が使い勝手が良さそうですね。(反射するような動きの部分にかけると台なしだから、いずれにしろ分割して適用する必要は出るわけですし)

動画コメントにも書いた「視野角が45度にリセットされてしまう」というのの他にも、近いシーンがより近くなってしまう(これはこの動画だけでなくツール配布動画の比較場面でもそうなっていた)というバグ(だか仕様だか)があるみたい。今後の改良に期待です。

元のカメラモーションを公開しておきます

これに「カメラもぬるぬるMMD V0.90」かけたものを動画で使用しています。
(VMDConverterCSV にしたものです。好きに流用してください)

Vocaloid Motion Data 0002,0
カメラ・照明
0
0
53
0,-23,-3.89048,6.0163,5.88862,16.0428,-101.986,0,0x146B146B146B146B146B146B146B146B146B146B146B146B1300000000
166,-23,-3.4548,17.5462,2.59284,6.30254,-64.1713,0,0x2D442A7F2D442A7F2D442A7F2D442A7F2D442A7F2D442A7F1300000000
200,-23,-0.867845,16.8076,-3.54525,-6.20704,-86.3256,0,0x2C52007F2C52007F2C52007F2C52007F2C52007F2C52007F1300000000
250,-23,0.426808,18.2034,-4.56555,-13.751,-7.44847,0,0x146B146B146B146B146B146B146B146B146B146B146B146B1300000000
292,-11,0.512557,17.4272,-4.90137,-24.0642,14.3239,0,0x2E43297F2E43297F2E43297F2E43297F2E43297F2E43297F1300000000
352,-11,0.364582,16.5989,-1.30543,-0.572958,24.0642,0,0x3643007F3643007F3643007F3643007F3643007F3643007F1300000000
393,-9.4,0.359892,17.7489,-1.29493,9.74028,13.751,0,0x3643007F3643007F3643007F3643007F3643007F3643007F1300000000
430,-9.4,-2.51561,17.5025,-1.95507,9.74028,-4.5837,0,0x3643007F3643007F3643007F3643007F3643007F3643007F1300000000
471,-33.4,-2.51561,17.5025,-1.95507,18.3346,-13.1781,0,0x3643007F3643007F3643007F3643007F3643007F3643007F1300000000
511,-33.4,-2.51561,17.5025,-1.95507,-8.02141,-346.067,0,0x364A004A364A004A364A004A364A004A364A004A364A004A1300000000
559,-39.4,-2.52574,17.2034,-1.85274,4.58366,-433.729,0,0x146B146B146B146B146B146B146B146B146B146B146B146B1300000000
600,-39.4,-1.8353,17.6453,-0.18825,-5.15662,-464.096,0,0x3643007F3643007F3643007F3643007F3643007F3643007F1300000000
640,-33.4,0.237825,17.5966,0.807883,12.6051,-334.608,0,0x146B146B146B146B146B146B146B146B146B146B146B146B1300000000
670,-33.4,0.237825,17.5966,0.807883,0.572956,-319.138,0,0x146B146B146B146B146B146B146B146B146B146B146B146B1300000000
701,-33.4,0.768642,17.5966,0.43274,26.3561,-575.25,0,0x3643007F3643007F3643007F3643007F3643007F3643007F1300000000
731,-15.4,-2.9459,17.2233,-2.40421,18.9076,-715.052,0,0x3643007F3643007F3643007F3643007F3643007F3643007F1300000000
837,-15.4,0.598139,9.77916,-13.6788,25.7831,-722.5,0,0x3643007F3643007F3643007F3643007F3643007F3643007F1300000000
879,-3.4,0.895562,9.50774,-13.4544,25.2101,-703.02,0,0x3659005436590054365900543659005436590054365900541300000000
930,-1.5,-1.23237,9.91842,-13.2209,24.6372,-734.532,0,0x146B146B146B146B146B146B146B146B146B146B146B146B1300000000
996,-7.5,-0.373329,10.5971,-10.6139,59.5876,-740.262,0,0x146B146B146B146B146B146B146B146B146B146B146B146B1300000000
1070,-7.5,-0.480448,11.5423,-10.6184,5.72956,-779.796,0,0x3643007F3643007F3643007F3643007F3643007F3643007F1300000000
1139,-7.5,-0.480448,11.5423,-10.6184,-23.4913,-703.593,0,0x3650005236500052365000523650005236500052365000521300000000
1203,-25.5,-0.0486385,11.6906,-7.34675,-1.71889,-627.389,0,0x146B146B146B146B146B146B146B146B146B146B146B146B1300000000
1253,-25.5,-1.14808,11.3377,-6.62795,-28.075,-564.936,0,0x2E43287F2E43287F2E43287F2E43287F2E43287F2E43287F1300000000
1318,-13.5,3.17638,16.2303,-10.0119,-2.86482,-360.39,0,0x3643007F3643007F3643007F3643007F3643007F3643007F1300000000
1411,-19.5,-3.84384,20.155,-7.59094,-30.3668,-368.412,0,0x3643007F3643007F3643007F3643007F3643007F3643007F1300000000
1463,-19.5,-8.79669,18.6473,-3.71995,-2.86482,-415.394,0,0x3643007F3643007F3643007F3643007F3643007F3643007F1300000000
1562,-19.5,-0.473976,15.5991,0.287766,6.30251,-717.916,0,0x3643007F3643007F3643007F3643007F3643007F3643007F1300000000
1588,-37.5,-2.59009,17.959,1.77416,-52.7121,-751.148,0,0x496B026B496B026B496B026B496B026B496B026B496B026B1300000000
1667,-13.5,1.73243,17.182,-1.26251,8.02139,-809.017,0,0x3643007F3643007F3643007F3643007F3643007F3643007F1300000000
1734,-7.5,0.914882,17.6301,-1.02638,-5.15664,-733.386,0,0x3643007F3643007F3643007F3643007F3643007F3643007F1300000000
1784,-55.5,0.681038,18.0783,-0.929151,-20.0535,-775.785,0,0x3651004F3651004F3651004F3651004F3651004F3651004F1300000000
1838,-109.5,0.681038,18.0783,-0.929151,-48.1285,-1029.61,0,0x146B146B146B146B146B146B146B146B146B146B146B146B1300000000
1874,-157.5,-4.18126,17.2379,-4.93717,8.59435,-1039.35,0,0x146B146B146B146B146B146B146B146B146B146B146B146B1300000000
1941,-121.5,7.42415,14.9587,-4.96118,-1.82494e-005,-1127.58,0,0x3643007F3643007F3643007F3643007F3643007F3643007F1300000000
1993,-73.5,7.42415,14.9587,-4.96118,16.0428,-1157.95,0,0x3643007F3643007F3643007F3643007F3643007F3643007F1300000000
2053,-31.5,6.80535,12.1119,0.448142,-16.6158,-1167.69,0,0x1450147F1450147F1450147F1450147F1450147F1450147F1300000000
2102,-31.5,6.33566,14.9523,3.12125,-17.7617,-1119.56,0,0x3643007F3643007F3643007F3643007F3643007F3643007F1300000000
2154,-19.5,6.33566,14.9523,3.12125,-11.4592,-1151.07,0,0x3643007F3643007F3643007F3643007F3643007F3643007F1300000000
2178,-19.5,-2.26488,15.7571,8.33398,-11.4592,-1082.32,0,0x3651004E3651004E3651004E3651004E3651004E3651004E1300000000
2258,-25.5,-0.235153,15.4131,5.13626,10.8862,-1058.25,0,0x34432F7F34432F7F34432F7F34432F7F34432F7F34432F7F1300000000
2373,-13.5,-0.57706,15.8278,5.15549,3.43772,-1068.57,0,0x3654005836540058365400583654005836540058365400581300000000
2431,-13.5,0.397604,16.8343,4.08828,6.30251,-1094.35,0,0x33432E7F33432E7F33432E7F33432E7F33432E7F33432E7F1300000000
2477,-85.5,0.397604,16.8343,4.08828,-2.86481,-1082.89,0,0x3650005536500055365000553650005536500055365000551300000000
2513,-85.5,2.25114,17.0331,6.18707,-18.3347,-1006.12,0,0x146B146B146B146B146B146B146B146B146B146B146B146B1300000000
2553,-91.5,-0.950208,14.3539,-3.63759,-41.8259,-810.164,0,0x146B146B146B146B146B146B146B146B146B146B146B146B1300000000
2580,-37.5,-0.587243,13.8287,-3.75967,-36.0964,-648.59,0,0x31432F7F31432F7F31432F7F31432F7F31432F7F31432F7F1300000000
2647,-13.5,-1.33018,16.4952,0.13011,-36.0964,-648.59,0,0x3643007F3643007F3643007F3643007F3643007F3643007F1300000000
2689,-19.5,-1.33018,16.4952,0.13011,25.7831,-713.334,0,0x3643007F3643007F3643007F3643007F3643007F3643007F1300000000
2750,-13.5,-1.33018,16.4952,0.13011,-9.74031,-711.615,0,0x3643007F3643007F3643007F3643007F3643007F3643007F1300000000
2807,-109.5,-1.99186,15.2632,-0.181186,-3.43778,-708.75,0,0x3653004E3653004E3653004E3653004E3653004E3653004E1300000000
2870,-475.5,-68.5912,14.6968,-9.52214,-20.6265,-708.177,0,0x5B671A7F5B671A7F5B671A7F5B671A7F5B671A7F5B671A7F1300000000
3000,-475.5,-68.5912,14.6968,-9.52214,-20.6265,-708.177,0,0x146B146B146B146B146B146B146B146B146B146B146B146B1300000000
0

2011-03-25 追加: 歌詞表示用ニコスクリプト出力する Python スクリプト張っておきます

Python 2.6.6 用。

data = u"""147 ぴぴぴ 返信ください
238 回線絡めた 手が触れるように
364 夢を 駆けて差し伸ばす
459 不意につまづいた
519 眩い景色に見慣れて
592 一言交わして おはよう
772
817 すべてを塗り替えて 何かも無くした
937 そう思っていたの まだ
1027
1045 たった一つだけ 力が残された
1141 光が溢れて
1231 君に伝えられないの
1352 たくさん抱えすぎて何を言えばいいの
1443 いつの間にか変われたのかな
1564 遠い空がこんなに浅く感じた
1685
1695 ぴぴぴ 聞こえますか
1785 今走るよ 風掴むために
1912 弾んだ音を生み出して
2003 振動の波寄せて
2064 愛の形よ舞い上がれ
2130 前が歪む 涙が邪魔臭くて
2310 それならば笑顔で行こうと
2431 まっすぐに決めたの
2552 ラララほら明日へと ありがとう
2822"""

color = '#FFFFDD'  # 文字の色
offset = -2  # 表示タイミングをずらすフレーム数

d = []
maxtext = 0
for i in data.split('\n'):
    a = i.split(' ')
    if len(a) == 1:
        time = int(a[0])
        text = ''
    else:
        time = int(a[0])
        text = a[1]
    maxtext = max(len(text), maxtext)
    d.append((time, text))
print 'maxtext =', maxtext
print
out = []
for n in range(len(d) - 1):
    time, text = d[n]
    nexttime, hoge = d[n + 1]
    text = text + u' ' * (maxtext - len(text))
    s = (time - offset) / 30.0
    L, amari = divmod((nexttime - time) / 30.0, 1)    
    a = u'%.3f:shita big %s @%d:%s' % (s, color, L, text)
    out.append(a)
    print a
    print 'frame: %d, sec: %.3f' % (int(amari * 30), amari)
f = open('nicoscript.txt', 'w')
f.write('\n'.join(out).encode('utf-8'))
f.close()

data の部分に

MMDフレームNo[半角スペース]全角歌詞

の形で歌詞を書いておきます。

実行すると、

maxtext = 17

4.967:shita big #FFFFDD @3:ぴぴぴ 返信ください       
frame: 0, sec: 0.033
8.000:shita big #FFFFDD @4:回線絡めた 手が触れるように   
frame: 6, sec: 0.200
12.200:shita big #FFFFDD @3:夢を 駆けて差し伸ばす      
frame: 4, sec: 0.167
15.367:shita big #FFFFDD @2:不意につまづいた         
frame: 0, sec: 0.000
17.367:shita big #FFFFDD @2:眩い景色に見慣れて        
frame: 12, sec: 0.433
19.800:shita big #FFFFDD @6:一言交わして おはよう      
frame: 0, sec: 0.000
25.800:shita big #FFFFDD @1:                 
frame: 15, sec: 0.500
27.300:shita big #FFFFDD @4:すべてを塗り替えて 何かも無くした
frame: 0, sec: 0.000
31.300:shita big #FFFFDD @3:そう思っていたの まだ      
frame: 0, sec: 0.000
34.300:shita big #FFFFDD @0:                 
frame: 18, sec: 0.600
34.900:shita big #FFFFDD @3:たった一つだけ 力が残された   
frame: 6, sec: 0.200
38.100:shita big #FFFFDD @3:光が溢れて            
frame: 0, sec: 0.000
41.100:shita big #FFFFDD @4:君に伝えられないの        
frame: 0, sec: 0.033
45.133:shita big #FFFFDD @3:たくさん抱えすぎて何を言えばいいの
frame: 0, sec: 0.033
48.167:shita big #FFFFDD @4:いつの間にか変われたのかな    
frame: 0, sec: 0.033
52.200:shita big #FFFFDD @4:遠い空がこんなに浅く感じた    
frame: 0, sec: 0.033
56.233:shita big #FFFFDD @0:                 
frame: 10, sec: 0.333
56.567:shita big #FFFFDD @3:ぴぴぴ 聞こえますか       
frame: 0, sec: 0.000
59.567:shita big #FFFFDD @4:今走るよ 風掴むために      
frame: 7, sec: 0.233
63.800:shita big #FFFFDD @3:弾んだ音を生み出して       
frame: 0, sec: 0.033
66.833:shita big #FFFFDD @2:振動の波寄せて          
frame: 0, sec: 0.033
68.867:shita big #FFFFDD @2:愛の形よ舞い上がれ        
frame: 6, sec: 0.200
71.067:shita big #FFFFDD @6:前が歪む 涙が邪魔臭くて     
frame: 0, sec: 0.000
77.067:shita big #FFFFDD @4:それならば笑顔で行こうと     
frame: 0, sec: 0.033
81.100:shita big #FFFFDD @4:まっすぐに決めたの        
frame: 0, sec: 0.033
85.133:shita big #FFFFDD @9:ラララほら明日へと ありがとう  
frame: 0, sec: 0.000

みたく

ニコスクリプト
間の時間

という形の出力が出ますので、不自然にならない範囲でフレームNoをずらして間の時間ができるだけ少なくなるよう調整してください。*1

  • nicoscript.txt

というテキストファイルに貼付け用のニコスクリプトが出力されますから、それを投稿者コメントのエディタモード画面に貼りつければOK。

上記 Python スクリプトのコード部分は好きに流用してください。(歌詞部分はラマーズPの著作物なのでそちらでの指示に従ってください)

*1:文字の表示タイミングは 1/1000 秒単位で指定できるのに表示時間は秒単位でしか指定できないので調整が必要