2015年11月10日

(Sims3)もっと子供が楽しめるシム世界にしよう その3

子供が〜出来るシリーズ、次の作品が出来ました。今回はネクター作りと彫刻、スキル表示MODです。
今までにそこそこ数を作ってきて、だいぶ慣れてきたり資料も集まってきたので割と早く出来るようになりました。

と言っても、いい加減作りたい物も無くなってきたので、これからどうしたものかと。
現状で子供だけの家庭で困ることと言えば、料理が出来ない事でしょうか。
対処にはCoreMODが必要になりそうなので、AwesomeMODとは競合します。NRaasは競合しないようです。他にはスキューバダイビングとか、以前にあったガーデニングの「手入れをする」なども同じ状況です。まあ、私はAwesomeMODは使っていないので困らないんですが。



それはともかく、今回のMODはこちらになります。

nector_chd01.jpgnector_chd02.jpg
・子供がネクターを作れる、ネクターラックを使える
 ネクターを作ることは出来ますが、飲むことはできません。残念。
 モーションの尺の都合上、ちょっと無理しているので忙しない感じになってます。他にいいアイデアが出ませんでした。

sculpture_chd01.jpg
・子供が彫刻を作れる
 高さがあっていませんが特に違和感はないと思います。ていうか、彫刻する前の素材、大きすぎだろ…

skillview_chd01.jpg
・子供でもスキルが表示されるようにするMOD
 ガーデニングやネクター作りでスキルが上がっても、そのままだと表示されないのを表示されるようにします。
 他の「隠しスキルを表示するMOD」や、「スキルの習得速度を変更するMOD」とは競合します。
 ※スキルブックを読む速度を変えるMODとは競合しません。スキルが上がる行動をした時の習得速度を変更するMODとは競合します。

ダウンロードはこちらのページから



では今回はこれで。



.
タグ:SIMS3
posted by kapaer at 13:43 | Comment(0) | Sims3 子供が色々出来るMOD | このブログの読者になる | 更新情報をチェックする

2015年11月07日

(Sims3)もっと子供が楽しめるシム世界にしよう その2

子供が〜出来るシリーズその2です。

laundry_chd01.jpglaundry_chd02.jpg
今回は洗濯を出来るようにしてみました。さすがに大人用のモーションそのままでは色々無理があるので、一部モーションを変更してあります。モーション作るのはやっぱり大変ですね…
音声も適当な別イベント用の物を流用しているので、ちょっと尺が合わなかったりします。
あまり気にならない所(洗濯籠とか)は放置していますが仕様です。

ダウンロードはこちらのページから



.
タグ:SIMS3
posted by kapaer at 14:35 | Comment(0) | Sims3 子供が色々出来るMOD | このブログの読者になる | 更新情報をチェックする

2015年10月29日

(Sims3)もっと子供が楽しめるシム世界にしよう

最近、といっても2ケ月ほど前ですが、Sims3を始めました。普通のプレイもしていますが、版権キャラなどで遊ぶのもまた楽しいです。
ですが、子供が出来ることが少なくて困ることもあります。通常プレイならそうでもないですが、版権キャラだと見た目は子供、中身は〜的なキャラが少なくないので。

Sims3では子供のモーションが用意されていないことをやらせると、大人のモーションが再生されて体が伸びてしまいます。
逆に言えば、子供のモーションを用意して正しいIDで追加すれば、他は書き換えなくても自動的にそのモーションが使われます。

なので、大人用のモーションを子供用に変換するツールを作って、出来そうなものをいくつか作ってみました。


今の所は以下の事ができます。適当にダウンロードしてください。

gardening_chd01.jpggardening_chd02.jpg
・子供がガーデニング出来る
 各種ガーデニングが出来ますが、「手入れをする」コマンドは別途CoreMODの導入が必要です。
 ガーデニング以外に、子供は拾えなかった種も拾えるようになったり、スーパーでまとめ売りが出来るようになります。
 ゲージが出ていなくてもスキルはちゃんと上がります。

band_chd01.jpg
・子供がギター・ドラム・ピアノ/キーボードを演奏できる
 単独で弾く他、ジャムセッションを行っておひねりをもらうことが出来ます。バンドは組めません。

post_chd01.jpg
・子供が郵便物を受け取れる、請求書を払える

buy_chd01.jpg
・子供がレジで買い物、バーなどで食べ物を買える
 各種レジや屋台カー、バーや喫茶カウンターで買い物が出来ます。飲み物は買えません。

skillbook_chd01.jpg
・子供がスキルブックや楽譜を読める

ダウンロードはこちらのページから


一応テストはしましたが、何かおかしなことがあれば教えてください。
MODのインストール方法などはこちらでは解説しないので、各自調べてください。



大人のモーションをポーズそのままで子供用に変換しているので、
・地面の上で何かするのは割と簡単。何かの上に乗るものは位置の調節があるので難しい
・ガーデニングの様に手の位置が変わっても気にならないものは簡単。料理の様に手の位置が重要な物は難しい
・ベースを弾く、といった相手が大きすぎる物は体が対象に埋まるのでさすがに無理
といった感じです。

暇が出来たらまた何か作るかもしれませんが、取りあえず今回はここまでで。


.
タグ:SIMS3
posted by kapaer at 21:38 | Comment(0) | Sims3 子供が色々出来るMOD | このブログの読者になる | 更新情報をチェックする

2015年09月02日

(SimPeople)オブジェクトを3Dで修正しよう - 一発自動修正もあるよ -

さて、Zバッファについて色々と書いてきましたが、一番の問題は「直観的でない」という事でしょう。白黒の画像を見て3次元をイメージしろと言われても無茶ぶりすぎます。
自作のオブなら初めから3Dで作るという手もありますが、3Dモデルを作るのは結構大変ですし、既に完成しているオブジェクトを修正しようとなると手の出しようがありません。

それならオブジェクトを3Dで見れるようにしてしまえば良いじゃない、という事で、オブジェクトの画像から3Dモデルを復元、移動や編集を出来るようにしてみました。

3Dモデルを扱うのでBlender用のプラグインとなっていますが、基本的な操作は専用のパネルから行えるのであまり詳しくなくても手順通りにやれば大丈夫だと思います。



まあ、とにかくどんなものか見てみましょう。静止画だと分かり辛いので動画にしてあります。
後半は使用法となっているので、とりあえず最初の部分だけ見てもらえればどんなものかは分かるかと思います。
字が細かいので、全画面で最高画質にしてご視聴ください。重いかもしれませんが。


作成したプラグインですが、見ての通り"The Sims Transmogrifier"(以下トラモグ)の表示、移動を3次元にした様なものです。
干渉するオブジェクトの修正用に、簡易的な自動修正を行うことも出来ます。



まずはインストールです。いつも通り、Blender2.49b用となっています。
プラグインのダウンロードはこちらからどうぞ。
シムピープル用オブジェクト3Dインポータ・エディタ v0.1

Blender2.49bをインストールした後、
\Users\<ユーザー名>\AppData\Roaming\Blender Foundation\Blender\.blender\scripts\

以下に、ダウンロードした import_sims_3Dedit.py を入れてください。
なんか面倒な場所ですが、Vista以降のUACのせいでこんな場所になっています。
※ "AppData"フォルダが隠しフォルダになっているので、エクスプローラの設定で"隠しファイルを表示する"設定にしないと見えないので注意してください。

また、画像処理用にPIL(Python Image Library)を使用しているので、こちらもインストールが必要です。
PILは長らく更新が無いので、互換性のあるPillowというライブラリから、Windows用のPython2.6-32bit版をダウンロード、インストールするのがいいでしょう。Blender2.49は32ビットなので、32ビット版が必要です。

Pillowのダウンロードはこちらからどうぞ
配布ページ
Windows用インストーラ版



さて、使用法ですが、大体の事は動画で分かると思います。
この後では動画には書ききれなかったことを含めてもうちょっと詳しい解説をしていきますが、動画で力尽きたのでこの後は画像とか無しです。動画と大体同じ流れなので、そちらを見ながらでもどうぞ。面倒なら読まなくてもたぶん大丈夫です。



トラモグからの出力とBlenderでの読み込み


まずは読み込むファイルを用意しなくてはいけません。このプラグインはトラモグからExportしたXMLと画像を読み込むようになっています。
必ず修正したいオブのバックアップを取ってから、トラモグでそのオブを選択して、"Export Object File..."を実行、オプションは動画と同じにして下さい。

出力できたら、Blenderを起動して左右どちらのサブウインドウでもいいのでScriptウインドウに切り替えて、Script->Import->Sims3DEdit で起動します。
上のFileメニューのImportからでも起動できますが、このスクリプトは起動しっぱなしで使用する & 縦長のサブウインドウを前提でレイアウトしているので、サブウインドウを指定して起動した方がいいです。


起動するとファイル選択ボタンが出てくるので、先程出力したxmlを開けばオブジェクトが3Dで表示されます。

テンキーの"0"でゲーム上で見た視点の固定カメラで見ることが出来ます。当然ながらゲームでの表示と大体同じはずです。固定カメラなので、そのままだと視点移動できないので、もう一度"0"を押すとフリーカメラに戻ります。
他に、テンキーの"1" で左前、"3" で右前、"7"で上から、"5"でパースのON/OFFができます。"2468"は上下左右の回転なので、好きな方向から見てみて下さい。

表示される方向から見たデータしかないので、影の部分や裏側は表示されません。
また、仕様上マルチタイルのオブジェクトを表示するとつなぎ目の部分に隙間がありますが、ゲーム上では繋がっているので移動して繋げたりはしないでください。
画像上の1ピクセルを1頂点に変換しているので、面積のあるピクセル→面積の無い点になり、結果つなぎ目部分が空いているように見えています。1ピクセルを四角の面にすれば繋がって見えますが、頂点数が4倍になるので重くなりますし、色々不都合があるのでこうなっています。


画像の方向やDrawGroup(ベッドメイク済み・寝てる時・使用後などの切り替え)の選択はトラモグと大体同じですが、マルチタイルのオブジェクトの場合はトラモグと違い全タイルをまとめて移動できます。個別に移動したい時は、上の方の"All Tiles"ボタンで切り替えることが出来ます。

一応チェックはしていますが、万一何かのエラーでプラグインが終了してしまった時は、そのままプラグインを再実行してください。エラーで落ちる直前の状態に戻ります。おかしなことになったら、ResetボタンかBlenderを再起動してください。



初級編 - とりあえず干渉を自動修正する -


さて、Blenderなんて触ったことが無い、3Dなんてやったことが無い、でもオブどうしの干渉や壁へのめり込みを何とかしたいという方。
オブが読み込めたら、右下の方にある"Full AutoFix"ボタンを押しましょう。
確認のポップアップが出るので、"Yes"を押すと勝手に読み込んで修正、勝手に保存します。
終了のポップアップが出ればBlenderでの作業は終了です。もうBlenderは閉じて構いません。
後はトラモグで先ほど選択したオブを選んで、"Import Object File..."で読み込めば壁や隣のオブジェクトへの干渉は直っているはずです。ゲーム上で確認してみてください。

余程おかしなことをしていなければ、大抵はこれで直るはずです。



中級編 -トラモグの3D版 -


自動修正は壁への干渉は直してくれますが、シムがオブを使う時にめり込むのは直してくれません。簡単な物なら、オブ全体を移動することで直すことが出来ます。
自動修正は何をやっているのかよくわからないから嫌だ、見た目で分からなくてもきちんとした場所に置きたい、という几帳面な方もこちらです。

まずは読み込んだオブを見てみましょう。明らかに場所がおかしいなら、ここで移動するだけで修正できます。
マウスなりテンキーなりで表示を回転させて見やすい位置にしたら、右の"+Z" "-Z"ボタンで移動します。"X" "Y" は普通使用しません。なぜなら、XYはトラモグで修正できるので、大抵はすでに正しい位置になっているからです。
"+-Z"ボタンで移動すると、オブが斜めに移動していきます。これで正しい位置に移動してください。
ゲーム視点の固定カメラで見ると、Zを変えてもオブには何の変化も見られません。視線の方向に沿って移動しているので、遠い近いの分からないモニター上では同じに見えるんです。これがZバッファが難しいことの一因でもあります。


この時、オブの表示されている3Dウインドウはクリックしない方がいいです。誤って右クリックすると、オブジェクトの選択が解除されてしまうことがあります。プラグインのボタンは選択されているオブジェクトのみを移動するので、マルチタイルだと一部分しか移動しなくなります。
一度別な方向などに切り替えて戻すと、再度すべて選択された状態に戻ります。
理解しているなら、マルチタイルの一部のみを選択して移動することも出来るので、必要に応じて利用してください。

移動の際は、"View SampleWalls"ボタンを押しておくと壁を表す枠線が表示されるので、基本はみ出さないように移動してください。オブの形がおかしい・大きすぎてはみ出す時は、壁への干渉は後で修正できるので、シムが干渉しない事を優先して移動しましょう。

もし、この移動で壁や床からはみ出しているときは、下にある"Wall Fix"ボタンを押してください。壁からはみ出している部分が、自動的に壁の前/後 に移動します。
3Dで見るとすごい形になっているかもしれませんが、カメラ視点にすると普通に見えるので心配しないでください。


移動が終了したら、"Save Changes"ボタンで保存します。トラモグと違い、自動保存はされません。また、方向やDrawGroupごとに毎回保存する必要があります。保存せずに切り替えようとすると警告が出るので、保存するか変更を破棄するか選んでください。

Blenderの操作になれている方なら、オブのモデルを直接3Dウインドウで移動しても構いません。この場合も、ゲーム上での位置を変更したい場合でない限り、XYは変更しません。移動モードになったら、キーボードの"z"キーを2度押せばオブのローカルZ軸に沿って移動できます。



上級編 - オブジェクトの形を変更する -


さて、壁へのめり込みや場所の移動で直せるものは修正できましたが、これで直せないものも中にはあります。寝ると体がはみ出してしまうベッドが一番多いパターンでしょうか。この場合は、直接オブの形状を変更する必要があります。
Blenderをそれなりに使える知識が必要ですので注意してください。

ここでは、ベッドの修正を例に解説します。
まずは、付属の修正用.blendファイルを開いてください。中には、いくつかのマネキンが用意してあります。立ち姿、座った姿、寝ている姿です。必要なもの以外は削除するか非表示にするといいでしょう。

この状態で、修正したいベッドを読み込みます。表示は当然 "Sleeping" にして下さい。マネキンを移動してベッドに寝かせるんですが、その際にマネキンの高さを変えないように注意してください。テンキーの"7"で上から見た状態で移動するなりすれば良いでしょう。回転も90度単位で回して下さい。

寝ている位置まで移動させると、当然体がはみ出しているはずです。はみ出している部分のオブを選択して、EditModeに入ります。
EditModeにしたら、はみ出している部分の頂点を選択して移動すれば良いんですが、その際にXY座標を絶対に変えないように注意してください。XY座標はそのまま画像上のXY座標となるので、移動するとZ画像自体がおかしくなってしまいます。
ショートカットで言うと、頂点選択後に "G"(移動モード) "ZZ"(Zを2回でローカルZ座標に沿って移動)となります。移動時に3Dウインドウ左下に "〜 along local Z"と表示されていればOKです。

3D上で凸凹していても大丈夫です。しつこいようですが、Zを変えてもゲーム上の見た目は変わりませんから。ただ、壁は超えないようにして下さいね。

修正が終わったら、忘れずに"Save Changes"で保存してください。これを4方向すべてで行えば終了です。
Blenderの操作が出来れば、手間は多少かかりますがそれほど難しくはないと思います。





今回の記事はここまでです。
後半は投げやり感がすごいですが、まあ動画見れば大体行けるでしょう。
ではまた次回に。



.

2015年08月21日

(SimPeople)Blenderでシムピのモーションを作ってみよう 番外編 -MMDからモーションを借りてくる-

さて、今回はちょっと息抜きがてらのお遊び企画です。
モーションが出力できるようになったので、既存のモーションで遊んでみましょう。

というわけで、MMDのモーションをシムピに持ってきて踊らせてみます。
ボーン構造や各部のサイズが違うので完全に正しくとは行きませんが、シムピの表示サイズならそれなりに見られるものにはなります。



記事の公開にあたって、Blender用プラグインを更新しました。15/8/21以前にダウンロードした方は、新しいバージョンに更新する必要があります。
変更したのはMMDに関する部分だけなので、MMDから変換しない方は問題ありません。

更新される方はこちらからどうぞ。
シムピープル用 Skin/Motion 作成セット Ver.0.3a



さて、MMDからの変換ですが、直接読み込ませるのは色々しんどいので、他の方が作成したインポーターをお借りします。
今使えるインポーターでは2.6用のものが使い勝手も互換性もいいので、Blender2.69をインストールします。Blenderは複数バージョンを同時にインストールして使えるので、2.49bを入れていても問題ありません。私はメインに使うのは2.49bなので、ファイルの関連付けは2.49bのままにしてあります。

その後mmd_toolsをインストールしてやれば、MMDのモデルとモーションが読み込めるようになります。
mmd_toolsのダウンロードはこちらです。
https://github.com/sugiany/blender_mmd_tools

インストール方法はリンク先に書いてあります。注意事項として、ファイルをコピーした後Blenderの設定メニューで有効にしないとメニューに出てきません。私が作成したプラグインでも同様の設定があるので、次で詳しく述べます。



2.6でモーションを読み込んだら、そのモーションを2.49に持ってこないといけません。手ごろな方法が見当たらなかったので、モーションをそのまま書き出すプラグインを作成しました。モデルを選択して実行すると、モーションを.csvテキストファイルとして書き出してくれます。

というわけで、データ移動用のプラグインをインストールします。
Blender2.69 64bit版をインストールしたなら、
Program Files\Blender Foundation\Blender26\2.69\scripts\addons\

以下に io_raw_keyframeフォルダをフォルダごとコピーしてください。その他のバージョンなら適宜読み替えてください。


anim3-1.jpg
anim3-2.jpganim3-3.jpg
その後、Blender内でユーザー設定ウインドウを開いて、アドオン→インポート/エクスポート内にある"Export raw keyframe (.csv)"にチェックを入れれば有効になります。
mmd_toolsを有効にしていないときは、ここで同様の設定をしておきましょう。


anim3-4.jpganim3-5.jpg
また、この後読み込むMMDのモデルは日本語が使われているので、設定で日本語化しておきましょう。Systemタブの右下にある"International Fonts"にチェックを入れると、各種翻訳が選べます。InterfaceとTooltipsをONにすれば、メニューとツールチップも日本語になるのでお好みで。以下の画面では日本語メニューで解説しています。

設定した後は、「ユーザー設定の保存」ボタンを押して保存しておきます。設定は自動保存されないので、保存せずに終了すると元に戻ってしまいます。



Blenderの設定はここまでで終了です。続いてMMD用のモデルとモーションを用意しましょう。
MMD本体をダウンロードしてきて展開すると、
UserFile\Model\

内にデフォルトでモデルが入っています。今回はその中の初音ミクVer2を使用します。
理由は単純に、デフォルトモデルで多く使われているので大体の配布モーションはそれなりの互換性があると思われるからです(MMDはモデルによって体型が違うので、対応したモーション以外は微妙にモーションが変わります)。
あまり妙なモデルでなければ使えると思いますし、シムの体型に近いほど正確に変換できるので、別のモデルの方がいい結果が出るかもしれません。まあお遊びですしあまり細かいことは気にしない方向で。

変換するモーションはお好きなものをダウンロードしてきてください。ニコニコ動画などで探せば色々公開されています。モーションのライセンスはそれぞれですから、よく確認して使用してください。



anim3-6.jpg
さて、では読み込んでみましょう。
設定でmmd_toolsを有効化していれば、3Dウィンドウの左にmmd_toolsのメニューが出ているはずですから、そこからImportボタンで"初音ミクVer2.pmd" を読み込みます。日本語化していないと文字化けしているかもしれません。その場合は先程解説した日本語化を行ってください。
いくつか設定がありますが、すべてデフォルトのままでインポートしてください。


anim3-7.jpg
上手く読み込めれば、ミクのモデルが表示されるはずです。


anim3-8.jpg
モデルが読み込まれたら、続いてモーションを読み込みます。モデルを選択してから、下の方に表示される"Import Motion"ボタンで読み込みます。上にも同じ名前のボタンがありますが、微妙に動作が違うので上のボタンは使用しないでください。


anim3-9.jpg
上手く読み込まれたら、タイムラインウィンドウの再生ボタンで見てみましょう。大体は正しく読み込まれているはずです。特殊なモデル用モーションだとmmd_toolsが対応していないかもしれませんが。
時々しゃがむモーションなどで足がおかしくなっていることがありますが、これはMMDとBlenderの仕様の違いによるものなのでどうにもなりません。それほど多くはないと思うので、どうしても気になるところは手作業で直してください。


anim3-10.jpg
Blender上で上手く再生できれば、あとはこれをシムピ用に出力するわけですが、残念ながら2.6から直接シムピ用に保存するエクスポーターはありません。なので、一旦テキストにRawデータとして保存して、2.49で読み込んで出力することになります。

初音ミクのモデルを選択して、
ファイル→エクスポート→Raw keyframe(.csv) で一旦保存します。
ここで2.6上での作業は終了です。必要なら.blendファイルを保存しておきましょう。



続いて2.49上での作業になります。Skin/Motion 作成セットに入っている設定済み.blendファイルを使います。対応しているのは大人モデルのみなので、そちらを開いて下さい。
自分でアニメーション用モデルを読み込んだファイルがあればそれでも構いません。


anim3-11.jpg
ここで一つ注意事項が。読み込み前に、ActionEditorウィンドウは別のウィンドウ、TimeLineなどに変えておきましょう。
キー数がとんでもなく多いので、キーを表示させようとすると数秒〜十数秒に1度しか操作を受け付けなくなるほど重くなります。
キーを表示させるとしても、読み込み後にスクリプトで不要なキーを削除した後にして下さい。

後は通常のモーションの読み込みと同じように、モデルを選択して
File→Import→"Sims Skin/Motion File (.skn .cmx .csv)" から先程保存した.csvを開きます。
モーションの長さにもよりますが、読み込みに数分かかるかもしれません。Dosウィンドウの方に進行状況が出ているので、あまりに時間がかかるようならそちらを見てみて下さい
無事読み込みが終了したら、一度保存しておきましょう。後で泣かなくて済みます。

もしキーフレームを表示したいのなら、スクリプトで不要なキーフレームを削除してからにしましょう。
以前解説したように、ScriptウィンドウからScripts→Animation→Clean Animation Curves を選択、Object Action でOKです。これも結構な時間がかかるのでのんびり待ってください。
これで多少は軽くなりますが、それでも長めのモーションだと開いて後悔するレベルだと思います。

タイムラインの再生ボタンからモーションを再生してみてください。足の長さなどが違うので、どうしても多少の誤差が出てしまいます。まあこの辺は勘弁してください。



これでシムピ用への変換は終了です。後は通常のモーションと同じように保存すれば、ゲーム中で再生することが出来ます。
4分少々のダンスモーションで、大体800kb位のサイズになります。まあ、今時のマシンならゲーム中に再生しても特に問題はありませんでした。



試しに変換したモーションがこちらになります。なお、苦情は受け付けておりません。


では今回はこの辺で。


.