blender2.5
[ctrl+l]と[p](Selection)を割れなくなるまで繰り返す。 import bpy s=bpy.context.scene o=s.objects.active def separate_object(o): if o.type!='MESH': return m=o.data # deselect all bpy.ops.object.mode_set(mode='EDIT', toggle=False) bpy.ops.mes…
http://www.blender.org/download/get-25-alpha/ さっそく試してみる。 残念ながらフォント設定が見つからない・・・。 久しぶりにsubversionを更新して再ビルドする。
Blenderの面法線の仕様についてのメモ。 Blenderのメッシュはデフォルトでは面法線を使う。 Python的にはMeshFaceクラスのnormal属性で、これを採用すると曲面がカクカクに見える。 だからUVSphereは初期状態ではカクカクになる。 で、MeshFaceはsmoothとい…
シーン内のマテリアル一覧を表示して、使っているオブジェクトを選択する機能と、使っているオブジェクトが無いマテリアルを削除する機能。 シーン内のマテリアルを掃除したかったのじゃよ。 .blender/scripts/ui に 適当なファイル名(z_my_material.pyなど)…
Blender2.5になってインタフェースがPythonで定義されるようになった。 定義するのはボタンの並び順とかレイアウト関連のもので、 .blender\scripts\ui ディレクトリに配置されている。 ファイル名がspace_XXXというのは、エリアが表示している内容(outliner…
結局、全部テクスチャやらずに骨入れた。 どうも、テクスチャを最後までやり切れたためしが無くても困る。 それにしてもボーン入れは、やり方がわかっていても時間かかるなぁ。 やっとこさ剛体を入れる準備ができた。
pmd_exportのボーンの親子問題とボーンウェイトのバグと剛体のバグを修正した。 http://sourceforge.jp/projects/meshio/wiki/FrontPageやっとベータ版くらいのクオリティになったかな。 ただし、動けば。 開発版向けに作っているから動作する本体のバージョ…
予定していた機能を一通り実装し終えた。 http://sourceforge.jp/projects/meshio/wiki/FrontPage 前回入れ忘れていたファイルの追加もしたので多分動くと思います。 一応完成したとはいえ、まだ本家の基本モデルをインポートして即エクスポートするのしか試…
blender2.5のIDを継承したオブジェクト(Object、Mesh、Materialなど)とBoneとPoseBoneがpythonのdictionaryのインタフェースを実装していてpythonの値が入る。 わりとなんでも入るみたいなのでこれは強力そうな気がする。 カオスを招きそうでもあるが。 以下…
フォーマットの仕様はもうわかっているので順調。 blender2.5のカスタムプロパティも想像通りの機能だったので案外早くできるかもしれん。
2.4pmdエクスポータの2.5への移植作業を完了した。ついでにshapekeyでおかしかったところなどをいろいろ修正。 http://sourceforge.jp/projects/meshio/wiki/FrontPage次から剛体の作業に入る。 剛体は2.5だけに実装する予定です。
別々に管理するのがめんどくさいのでblender2.4版とblender2.5版を統合する作業を開始した。のだが、余り面白くないのもあって捗りませぬ。 とりあえず、mqo_import, mqo_export, pmd_importまで終わったのでアップしてみた。 ためしにblender2.5版もアップ…
モーションのインポートは、io/import_anim_bvh.pyが参考にできるので簡単かと思ったが思わぬところで難航。 mathutilsのQuaternionのコンストラクタ引数ではまる。 (float, float, float), floatに対して(x, y, z), wを渡してうまくいかないのに悩む。これ…
shapeKeyのインポートは、先日発見していた http://www.daniel3d.com/pepeland/misc/3dstuff/blender/anisculpt/add_AniSculpt.py のソースを参考にして比較的簡単にできた。 とりあえずgitは更新したがalpha2ではmathutilsが無い?などの問題があるのでバイ…
ようやくpmdインポータでメッシュ、shape key、Armatureの読み込みまでができた。blender2.5向けのスクリプト情報が不足していて一部難航したがなんとかなった。夜に今バージョンを整理してアップロードする予定。 特に頂点選択からオペレーション(不要頂点…
Blender2.5向けのスクリプト情報。 主に http://wiki.blender.org/index.php/Doc:2.5/Manual/Extensions/Python から辿れるところ。 Scripting examples http://blenderartists.org/forum/showthread.php?t=164765 Blending Into Python/2.5 quickstart Cont…
2.4系と互換性が無いのでバージョンアップじゃなくて移植。 python2がpython3になったことでいろいろ変えないといかん。 文法的に必要だった変更は、 print文がprint関数になった exceptの書き方が変わった(as) xrangeが無くなった くらいだったが、strがpyt…
alpha2だが、 日本語が入っているパスだと文字化けするのみならずエラーが出て動作しないっぽい。 UnicodeDecodeError: 'utf8' codec can't decode byte 0x90 in position 24: unexpected code byteこれはたぶん、python3のstrがutf-8を仮定しているのにファ…
blender2.5への乗り換え訓練を兼ねてまたこんなものをモデリング開始。 斜めの面を揃えるのに良い手は無いものか。 2.4系とそんなに違わないがところどころ違うところで戸惑うのでメモ。 画面分割・統合方法 各分割領域右上の三角地帯を左ドラッグする。 外…
また、2.5に戻ってきた。 で、スクリプトなんだがテキストエディタから実行するとメッシュの状態が更新されていないことがあった。 obj=(bpy.context.object) mesh=obj.data # mesh.verts.selected()は無くなった for v in mesh.verts: print(v.selected) 頂…
へっぽこテクスチャを貼ってみた。 字が書いてあると左右対称でなくなるからミラーリング解除が必要だな。 あと車輪UV展開失敗。あとでやりなおす。
描画周りの設定。少し軽くなる。 User Preference - System - Window Draw Method をOverlapにする。もっといいのがあるかもしれないがデフォルトのfullよりは速い。
とりあえずできた。 外部とのアクセスの前後でutf8とローカルの文字コードとを変換するようにした。FindFirstFile, FindNextFile, stat, chdir, gzopenあたりのファイルパスを引数に取る関数や、SHGetSpecialFolderPathなどのパスを返す関数が対象。 内部をu…
Blenderで作業していたらやっぱり2.5を使いたくなったのでビルドしてみることにした。 http://wiki.blender.org/index.php/Dev:2.5/Doc/Building_Blender/Windowssvnのチェックアウト中・・・。 これがかなりかかるのよね。 あっさり完了 windows/libの方が2…
やはりソースを弄る必要があった。 LANG=ja_JP.UTF-8としているUnix系OSというかX11環境ではフォント設定さえすればだいたいOKとなるが、WindowsではCP932からUTF-8に変換するコードをいろいろなところに分散して書く必要がありそうだ。UNIX系でも文字列の幅…