blender

blender2.63でimprter/exporterプラグインに必要な修正

Blender2.63でBMeshが組み込まれて4角形より多いNゴンが可能になった。 その影響でAPIが変更されているようだが、インポータ/エクスポータは少し修正するだけで対応できる。 まず、Meshクラスの変数名が変更になったところ。 mesh.faces -> mesh.tessfaces …

久しぶりにビルド・・・

Windows7(64bit)上のVC2010express editionでcmakeを使ってビルド。http://wiki.blender.org/index.php/Dev:2.5/Doc/Building_Blender/Windowsに書いてあるとおりでおおむねいけるが微妙に手を入れる必要があった。 cmakeでsvnでチェックアウトしたソースか…

blender importer/expoterの2.55向けを放流した

http://sourceforge.jp/projects/meshio/wiki/FrontPage2.54が出たときに8割くらい作業していたのだが、放置していたのを手直しした。 残り2割がなんだったかは、全然覚えていないのでとりあえずアップしました。

久しぶりにblenderをbuildしてみた

2.54をまったく使わないあいだに2.55になってました。 GentooLinuxでビルド。 http://wiki.blender.org/index.php/Dev:2.5/Doc/Building_Blender/Linux/Gentoo/CMake 起動時にエラーでる。 found bundled python: /usr/local/blender-build/cmake/bin/2.55/p…

smoothingメモ

Autosmoothが使えるかと思ったらレンダリング専用機能だった。 モデリングでその結果を得たいのだ。 探してみたところ http://blender.jp/modules/news/article.php?storyid=80 経由で http://blenderartists.org/forum/showthread?t=24470 を発見。 長さか…

pmdエクスポートその6

とりあえず完成。 本家の基本モデルをimportしてからexportしたらほぼ、だいたい同じ状態にできるようになった(200kくらい増えるので怪しいが)。実用的にするにはもう一息必要な気もするがとりあえず更新。 http://sourceforge.jp/projects/meshio/wiki/Fron…

pmdエクスポートその5

少し前進して表示枠関連が終わった。あと、英語名関連とトゥーン設定部分をやったら一通り終わり(剛体関連以外)。 だが、まだMaterialの互換性とIKがおかしいのと頂点の属性による分離が未解決で残っている。終わらんなー。

pmdエクスポートその4

shape keyの問題がだいたい解決。複数の三角形に共有される頂点で三角形の個数回数モーフィング移動するミスをしていたのを修正した。 今問題になっているのは、前にも遭遇したBlenderとpmdの頂点の扱いの違いに関する部分。Blenderでは、面に付属する法線を…

pmdエクスポートその3

ボーン、IK周りが済んだので表情の作業にとりかかった。 意外と難航している。 blenderへのインポート時に何故か目の動き(ウインクとか)だけ動かなくなっているのに気付いたり。謎だ。インポータから一度見直す必要があるなー。あと、エクスポート時にワンス…

pmdエクスポートその2

末端ボーン(xxx先に当たるボーン)とIKを途中まで進めた。 http://sourceforge.jp/projects/meshio/wiki/FrontPage 現状だと、IK接続先ボーンをインポート時に無くしているのでエクスポート時に復活させる必要がある。復活させるよりもインポート時に残した方…

pmdエクスポートその1

pmdエクスポートの原型を作成。頂点、面、マテリアル、ボーンまで。 http://sourceforge.jp/projects/meshio/wiki/FrontPage (まだ、IK、表情その他諸々が未実装です) 途中swigのstd::vectorに頂点情報を充填するところで罠にはまった件について。 std::vect…

エクスポータ作業開始

予定通りエクスポータ作業を開始した。既存のc++でのmqoとpmd読み込み機能にそのまま書き戻す機能を追加して動作を確認した。ロードよりセーブの方が簡単なので特に問題なし。 次にblender2.4の方のmqoエクスポータをリファクタリングした。最初はc++のライ…

python bindingをアップ

python bindingのwindowsビルドの体裁が整ったのでアップました。 http://sourceforge.jp/projects/meshio/wiki/FrontPageWindows xp上のblender2.49bで動作確認しております。meshio-0.1.win32-py2.6.exeの中にblender2.4向けのmqo, pmd, vmdインポータを同…

2.49b向けのマルチバイトパッチ更新

レンダリング結果書き込みに日本語パスを指定できるようにした。 (連番、avi, ffmpegで確認) http://gunload.web.fc2.com/blender/download.htmlとりあえずパッチを本家に投げてみた。 当初の予定よりだいぶ長くなったのでつらいような気がするが通ればいい…

面張り

どうも思っているのと違ったようなので確認してみた。 テキストエディタで次のコードを実行してから3D viewで法線を確認してみると、 import Blender scene=Blender.Scene.GetCurrent() def createRectangle(): mesh = Blender.Mesh.New("MeshName") mesh.ve…

vmdの回転読み込みが分かった

slerpで短い方の弧で補完させるためには2つのクォータニオンの内積が非負になるようにしてやる必要があった。 今フレームと1つ前のフレームの回転クォータニオンの内積をチェックして負だったときにフラグを立てて以降のフレームのクォータニオンを[-w, -x…

GLSLマテリアルにもバックカリングが必要だ

ちょっと改造しよう。 改造した source/blender/src/drawview.c void drawview3dspace(ScrArea *sa, void *spacedata) ↓ source/blender/src/drawobject.c draw_object ↓ draw_mesh_object ↓ draw_mesh_fancy 2287行付近 if(draw_glsl_material(ob, dt)) { g…

lensが視野角だとなぜか思っていた

30(度のつもり)に設定してやけにパースがきついのにずっと頭をひねっていたw 焦点距離なのかな。http://je-pu-pu.jp/blog/archives/2005/04/blender_2.html

2.49b向けのマルチバイトパッチ更新

http://gunload.web.fc2.com/blender/download.htmlシーケンスエディタのフォント対応、シーケンスエディタのaudio読み込み、前からある不要な日本語翻訳をしてしまうバグの修正をした。シーケンスエディタでFTGLを使うのが予想外に面倒(特殊な投影になって…

2.49b向けのマルチバイトパッチ更新

MSGOTHIC以外の描画が遅い件を修正した。原因は、文字列の幅を指定幅まで削る関数で末尾1文字を削るたびに文字列のをピクセル幅をFTGLに問い合わせていることだった。これがMSGOTHIC以外だと遅かった。プロポーショナルフォントだからかもしれない。元はた…

MSGothic以外だと日本語の描画が遅い件

を調べていたのだけど、辿っていくとsource/blender/src/drawimasel.c:draw_file source/blender/src/language.c:BIF_DrawString source/blender/ftfont/intern/FTF_Api.cpp:FTF_DrawString source/blender/ftfont/intern/FTF_TTFont.cpp:FTF_TTFont::DrawSt…

2.49b向けのマルチバイトパッチ更新

ファイル名の長さを80byte(utf-8全角で26文字)から240byte(同80文字)に延長した(ファイルセレクタと、Image Browser上部の選択中ファイル名表示) 一部の新しく作ったファイルがreadonlyになってしまい書き込み時にエラーになるのを修正した gettextを間違っ…

2.49b向けのマルチバイトパッチ更新

ffmpegにまつわるビルド問題が解決したのでその辺りを修正。 ffmpegのファイルオープン関数av_open_input_fileをラップした。 内部的に、BKE_untildefines.hの #define FILE_MAXFILE 80 の長さが不足する場合にファイル名の後ろがぶつ切りになるが渡されてく…

2.49b向けのマルチバイトパッチ更新

コメント欄で指摘のあった不具合を一部修正。 http://gunload.web.fc2.com/blender/download.html FFMPEGに関わる部分はWITH_FFMPEGでビルドするとBlenderが一切起動しない状態になってしまったため作業できない状態に。たしか起動時に0xC000005e0xC0000005…

pmdエクスポータ途中

いくつかのしょうもない(故に見つけにくいw)バグに悩まされながらもなんとかメッシュの出力に成功。とりえあず読み込んでみた図。なんかエッジが出ないがGeForce6200のせいなのか。 今回の作業で発見したのがmmdでは、マテリアルのDiffuseをちょっと抑え目…

そこそこ稼動するようになった

ボーンをモデルに合わせるんじゃなくて、モデルがボーンに合わせた方がいい。特に首ボーンの角度は下手に変えない方がよかった。あと、すり抜けたりめり込んだりするのは妥協が必要だ。適当なところでよしとしないときりが無い。細かいところは全然作ってい…

2.49b向けのマルチバイトパッチ

2.5での日本語表示を調べていて、内部的には2.49bとあまり変わっていないことがわかった。なので、むしろ2.49b向けに日本語パスを扱えるようにパッチを書いた。 http://gunload.web.fc2.com/blender/download.html に置いております。自前で2.49bをビルドし…

シェーディング調整

uimacさんのところのエッジ付き3Dviewで見たところ。 http://sites.google.com/a/render.jp/vmdimporter/基本的にシェーディング無しにして、髪と服だけマテリアルノードでトゥーン風味の陰が付く様にした。 ボーンを入れる前のモデルを修正しながらやったの…

マテリアルノード開始

GLSLマテリアルというかマテリアルノードを調べ始めた。 GLSLマテリアルっていうからVertexShaderとかFragmentShaderをゴリゴリ書くのかと思っていたがそういうのは無かった。ゲームの方のサンプルではあったのだが。マテリアルノードの繋がりから動的にシェ…

骨名一覧

2.49bArmatureの骨名確認スクリプト。使い方 1. blenderのテキストエディタにコピペ 2. object modeで一覧したいArmatureを選択 3. テキストエディタ - text - run python script Dosプロンプトに結果表示。Dosプロンプトの左上のアイコンをクリックする。メ…