bf-Blender / Windows (2005/01/13) New Splash

投稿日時 2005年01月15日 | カテゴリ: テストビルド

訳注: 今回ミスが多いと思いますがご勘弁下さい。唯一の暖房器具が壊れた所為で寒さに震えながら翻訳してました…。
とりあえず寒さをどうにかしたいので、後で直します。

元記事:bf-Blender / Windows (2005/01/13) New Splash

ZanQdo氏による1/13付bf-blender Windows版のビルドの配布です。
以下はGabio氏による機能の記事です。
概要
- バグ修正 (#2006, #2068, #2119, #2061, #2118)
- borderレンダリングがプラグインを通じてサポートされるように。(yafray)
- Quicktimeムービーエクスポート機能の改良。(スピード)
- Softbody。
Python:
- Jonathan Merritt氏によるパッチ: 新しい関数、Blender.Draw.Image()とそのドキュメント。
- Campbell Barton氏のパッチ: 多くのタイプで.users アトリビュートが追加。
- nmesh.hasVertexUV()メソッドの内部に少し変更。
- 新しいメソッド: Curve.isCyclic()、CurNurb.isCyclic()。
- Blender.UpdateMenus()とドキュメントの追加。
- Blenderモジュールから、長らく異論があった関数を削除(release dict)。

Commit
kester氏
Log:
バグ修正 #2006:

浮動小数点数のあいまいさが、MT_Quaternion::angleでacos(x)が|x| > 1の時にNaNを返す所為により、NaNを返すようにしていました。

NaNがfloatの計算により増殖して視点の位置が[NaN, NaN, NaN]になることにより、グレースクリーンが表示される結果になりました。

ton氏
Log:
Zバッファのintでのオーバーフローテストの違いがmist+wireのバグの原因となっていたため、Interlのプラットフォームでは問題が解決していなかったようです。

以前は、正のsigned intへの加算によるオーバーフローが負の値になると仮定してチェックしていました。このバージョンではチェックが「安全」になりました。

if(vergz > 0x7FFFFFF0 - dz) vergz= 0x7FFFFFF0;
else vergz+= dz;

これがsigned intの使用がやっかいな理由です…unsignedのオーバーフローはもっと簡単にチェックできます。

Log:
VecAngle3でベクトルに混乱があり(私が引数の順序を変更したからです!)、その結果、特に3点で間違った角度が表示されていました。

jandro氏
Log:
borderレンダリングがYafRayプラグインを通じてサポートされるように。現在のCVS版YafRayで動作します。

ton氏
Log:
どうにか2.3xでFileWindowの縦表示がキャンセルできるようになりました。User Defaultでも同様に表示されていますが、これにはまだありません。

縦表示を復活。UserPreference内のオプションとするには厳しい不満が待たれます。

sirdude氏
Log:
これはバグ#2068へのものです。

前述(訳注:コミット時のファイル名、bmp、hamx、iff、iris、jpeg、png、targaのこと)の画像フォーマットのアウトプットファイルを開くのに失敗した時の返り値を標準にそろえました。

また、いくつかのWarningをクリーンアップ。

Kent

goofster氏
Log:
バグ #2119

CurveのToolBoxとヘッダーメニューからSeparateオプションがなくなっていました。両方とも追加しました。

最初のコミットがかな――――り前だったので、何か小さなことでもしなければと。

Roel

phase氏
Log:
Quicktimeムービーエクスポート機能の改良。
メモリ消費量が減り、少し早くなったと思います。

RGBAのエンディアンの問題がある、OSXでのテストが必要です。

ton氏
Log:
バグ修正 #2061

Mesh編集から出たとき、それが複数回リンクされ、さらに他のUser Objectがデフォームされている場合、displistが再計算されていませんでした。

Log:
バグ修正 #2118

Wireのレンダリングが以下で動作していませんでした。
- Faceを持たないEdgeで、SubSurfがONの場合。
- 新しいEdgesオプションを使用時では、SubSurf ON/OFF関係なく。

phase氏
Log:
OSXでQuicktimeムービーエクスポート方法を元に戻しました。

Log:
OSXでの、QuicktimeムービーのARGBからRGBAへの変更に挑戦。

Log:
OSXでのRGBA QuicktimeムービーはCodec圧縮でクラッシュします。
QuicktimeエクスポートをOSXとWindows両方でBlender出力上の一貫性を保つため、ARGBに戻します。

Log:
BlenderのMonkeyの叫び声(OoohOoohOooh!)を復活。

bjornmose氏
Log:
大きなsoftbodyコミット。
いくつかのVertexGroup、WeightPaint関係も。
もう壊れることがないよう祈るばかりです。

使用方法の詳細は以下を参照して下さい。
http://wiki.blender.org/bin/view.pl/Blenderdev/Softbodies
(訳注:最後に訳を書いています。参考にして下さい)

blendix氏
Log:
Softbodyのコミットがblenderplayerの編集を壊していました。blenkernel/からsrc/への依存がありました。blenkernelの衝突する関数を移動しました…。

ianwill氏
Log:
BPython:
- Jonathan Merritt氏によるパッチ: 新しい関数、Blender.Draw.Image()とそのドキュメント。
- Campbell Barton氏のパッチ: 多くのタイプで.users アトリビュートが追加。
- nmesh.hasVertexUV()メソッドの内部に少し変更。

Jonathan氏とCampbell氏のパッチと忍耐に感謝!

stiv氏
Log:
新しいメソッド: Curve.isCyclic()、CurNurb.isCyclic()。Curveがサイクリックかどうか(閉じているか)のチェック用。両メソッドともBooleanです。

Toni Alatalo氏提供のパッチです。感謝します。

sirdude氏
Log:
変数を使用しようとする前に、それが存在するかを何度かチェックしていました。
(Vidarino氏のircでの投稿です)

また、いくつかWarningをクリーンアップしました。

Kent

ianwill氏
Log:
BPython:
- Blender.UpdateMenus()とドキュメントの追加。スクリプトが登録される新しいスクリプトを作成(もしくはダウンロードなど)した時に、Blenderのメニューを自動的に更新できます。

- Blenderモジュールから、長らく異論があった関数を削除(release dict)。

Matt(broken)氏がUpdateMenus関数を数週間前に提案されていました。私はまた、Save Current Themeスクリプトをこれを使用するため更新しました。これはThemeの保存とリストア、レンダリングのプリセットなどにスクリプトを使用する、彼のアイデアとすべて関連しています。


以下はWikiのSoftbodyのページからの引用です。
SoftBodyの使い方
  1. EditButtons([F9])のLink and MaterialsパネルのObject名(OB:〜)をsoftで始まる名前にし、ObjectButtons([F7])のSoftbodiesパネルのSoftbodyボタンをONに。


  2. GSpringを0.999に(あまりGoalとの間の弾力性を持たせたくない場合)。(i.)


  3. ISpringでEdgeに沿った力を設定。(i.)


  4. GFrictIFrictMFrictでGoalに関連する摩擦、内部のばねの摩擦、Media(媒質)の摩擦をそれぞれ設定。


  5. ODEエンジンの設定
    a) R sol 1adaptive step size Heun(非常に堅牢な方法)を使用します。速度を上げるにはRKLimitをできるだけ高くすればいいのですが、物理エンジンを安定させるためにある程度低くする必要があります。実際にはこれはステップの統合を可能とするためのエラーの一つで、もしこれが限界を超える場合、このシステムは限界以下に押さえるため(より)小さなステップを試します。これがadaptive step size(適合ステップサイズ)の名前の由来です。

    b) もしくはexplicit euler(固定のステップサイズ)を使用します。Stepを調整して下さい…もしあなたのシステムの時間が爆発的に増えるなら、これを使用して下さい…スピードは遅くなりますが、物理演算がちゃんと動作し続けます。


  6. Vertex Groupを作り、名前をSOFTGOALとします。


  7. goalの値をこのGroup(SOFTGOAL)にWeightPaintします…1.0でTargetに移動、0.0でTargetを考慮しません(訳注:元の形に戻らない)。UIのパネルのGmin/Gmaxで留め金が作れるため、最初の実験には0と1をペイントするのがいいでしょう。非線形なコントロールカーブがこの機能を実現するために必要かもしれません(現在はx^4です。Mayaはユーザが指数を設定できたと思います)。

    [li]Stiff Quadsで4辺の対角線のばねを設定することにより、潰れて表面が0のエリアになる可能性のある四角形を強固な三角形にします(非常に物理的でない方法ですが、ローポリMeshでのクロスエフェクトがよくなります)。


  8. PostDefで、Softbodyの計算を他のDeformの後に行うことができます。特にObject/MeshがArmatureで変形している場合、これをONにする必要があります。


  9. 変形していないときのばねの長さの設定には、現在EditModeの出入りをする必要があります。


  10. 現在、3DViewヘッダにあるSoftボタンは以下のように働きます。
    - ON: time/frame軸がSoftBodyのObjectの計算に使用され、ODEエンジンは現在の位置と速度を初期状態として使用します。
    - OFF: SoftBodyの位置をゴールとし、SoftBodyの速度はゴールの移動と適合させます。


  11. 楽しんでください!


もしSoftBody Zombieとコンソール(Dosウィンドウ)に表示された場合、SoftBody Objectは正しく初期化されていません(メモリに構造体が存在しない)。現在

このような構造が作成されるのは、そのObjectのEditModeから出たときのみです。これは中間のばねの長さをEdgeに沿って作成するためです。

(注i:力は0.999=ほぼ無限(1.0で無限)として機能します。0.0は力はなしです。ほぼ剛体に近いものについてはODE処理系で利用することができます。Goal Vertex(Goal=1.0)の固定では、不必要な堅さについての状態を無効にするため、固定されたVertexをODE処理系外で処理します。(コードは存在します…私は一貫性のあるハンドリング方法を探しています))


補足。
- 3DViewのヘッダをONにし、[Alt]+[A]でアニメーション。リセットと値の更新は[Tab]でEditModeを出入りして下さい。
- アニメーションキーをつけるか、NMASSをGravを少なめに設定すると動きだします。
- GMax、GMinともに1.0でObjectの重心との位置で固定され、完全に追従します。0.0で重心を無視します。
一部だけ動かしたい場合には、すべてのVertexを1.0にし、動かしたい部分だけを0.5ぐらいにして、GMinとGmaxをそれぞれ0.9、1.0に設定するといいでしょう。
- 恐らく大抵の場合で発散してしまうので、R sol 1は必須かもです。
- まだ当たり判定はありません。



Blender.jpにて更に多くのニュース記事をよむことができます
https://blender.jp

このニュース記事が掲載されているURL:
https://blender.jp/modules/news/index.php?page=article&storyid=1111