2011年01月06日

LuxFolio Application for the iPad

Luxology社より、ステレオスコーピックの3D映像をiPadで見るためのポートフォリオ・アプリケーションLuxFolio発表されました。

LuxFolioは、iTuneファイルシェアリングまたはiPadフォトアルバムからインポートしたステレオ可能なイメージを読み込み、読み込んだ画像を3Dステレオスコーピック効果を使って表示します。この画像は3D撮影可能なカメラやステレオレンダリングをサポートするLuxology社のmodoなどのソフトウェアで作成することができます。LuxFolioはMPOステレオスコーピック画像、サイドバイサイドステレオ画像、左右のペア画像を読み込むことができます。

また、iPadを外部モニターに使うことによってステレオスコーピック画像をプレゼンテーションの目的で使用することもできます。

LuxFolio Stereoscopic Portfolioは、iTuneストアで350円でお求めいただけます。

※ modo 501の新機能解説の記事の続きは、執筆者の都合によりこちらのブログに移行になりました。


投稿者 mars : 09:58 | コメント (0)

2011年01月04日

modo 501: キット

modo 501では、キットのコンセプトがワンランク上の存在としての取り扱われるようになりました。キットはコンフィグファイル、リソース画像、スクリプト、プラグイン、コンテントで構成されるパッケージでmodoに特定の機能を追加する物です。代表的なキットには、HDRESplashSLIKなどがあります。

icon_hdre02_landscape2.jpg

icon_splashkit.jpg

icon_SLIK.jpg

modo 501は、起動時に任意のディレクトリにキットがないか検索します。この検索ディレクトリにはuser:Configsとリソースディレクトリが含まれます。キットはindex.cfgというファイルを含むサブディレクトリです。これは一般的なコンフィグファイルですが、キットの名称を持つ宣言文があります。

<?xml version="1.0" encoding="UTF-8"?>
<configuration kit="kitName">
  [...]
</configuration>

キット名は内部名称でありグローバルかつユニークでなければなりません。このコンフィグファイルは自動的にキットを認識させるためだけのファイルです。その他の必要なファイルはこの場所から必要に応じて参照されます。キットは自動的にkit_<name>と呼ばれるキットのディレクトリを示すパスのエリアスを得ることができます。

<?xml version="1.0" encoding="UTF-8"?>
<configuration kit="kitName">
  <import>resrc</import>
  [...]
</configuration>

もしくは個々のリソースを名称を指定してインポートします。

キットにはプラグインを使うこともできますので、サブディレクトリにプラグインを配置し、32ビットと64ビットのプラグインを自動識別させて読み込ませることも可能です。

<?xml version="1.0" encoding="UTF-8"?>
<configuration kit="kitName">
 <atom type="Extensions32">
  <list type="AutoScan">extra</list>
 </atom>
 <atom type="Extensions64">
  <list type="AutoScan">extra</list>
 </atom>
 [...]
</configuration>

上記の例はキットが32ビット版と64ビット版のプラグインを持ち、正しいバージョンを"extra"フォルダにインストールされるように設定しています。もしくは、単一のキットが異なるディレクトリに入れた両方のバージョンのプラグインを同時に持つこともできます。

<?xml version="1.0" encoding="UTF-8"?>
<configuration kit="kitName">
  <atom type="Extensions32">
    <list type="AutoScan">x32</list>
  </atom>
  <atom type="Extensions64">
    <list type="AutoScan">x64</list>
  </atom>
  [...]
</configuration>

キットにアイコンやその他の目的の為に使用する画像を定義することもできます。アイコン画像は使用するコンフィグ自身のファイルパスからの相対位置が検索されます。この例では"icon.tga"ファイルは、コンフィグファイルと同じディレクトリに置かれます。画像リソースのキーはグローバルでユニークでなければなりません。

 <atom type="UIElements">
  <hash type="Image" key="testKit_icons">icon.tga</hash>
  <hash type="Icon" key="item.val.test.texture">
    <atom type="Source">testKit_icons</atom>
    <atom type="Location">0 0 13 13</atom>
  </hash>
 </atom>

スクリプトもキットから参照可能です。これはスクリプトへのエリアスを定義することで実現されています。画像の場合のように、スクリプトがキットディレクトリの中にある場合は、スクリプト名称以外なにも必要ありません。

 <atom type="ScriptSystem">
  <hash type="ScriptAlias" key="myScript">doit.pl"</hash>
  <hash type="ScriptAlias" key="myScript2">dir/doi2t.pl"</hash>
 </atom>

上記のように定義するとエリアスはスクリプトのある場所を参照するために使用されます。例えば、"@myScript"は上記の"doit.pl"を実行し、自動的にエリアスとキットの置かれている場所を認識します。これによってスクリプトを直接ユーザーが呼び出したり、キット自身から呼び出せるようになります。

キットだけでなく任意のスクリプトにエリアスを設定することが可能です。エリアスのパスは絶対パス、参照、エリアスパスもしくはユーザースクリプトフォルダのスクリプト名称でなければなりません。

 <atom type="ScriptSystem">
  <hash type="ScriptAlias" key="myScript">pathAlias:dir/doit.pl"</hash>
 </atom>

ユーザーがキーカスタマイズを確実に行えるように、キットで使用する全てのスクリプトにスクリプトエリアスを使用することをお勧めします。もしくはスクリプトをキットのパスエリアスの相対位置として直接実行する方法もあります。

キットを特定のシステムに対してのみに有効にしたり、逆に無効することができます。例えば、このキットはPCにだけにロードされます。

<?xml version="1.0" encoding="UTF-8"?>
<configuration kit="kitName" and="nt">
  [...]
</configuration>

こちらはMacの32ビット版のmodoにだけロードされます。

<?xml version="1.0" encoding="UTF-8"?>
<configuration kit="kitName" and="app32" or="mac">
  [...]
</configuration>

この論理値は読み込まれた順番に評価されます。グループ化はできません。"!x86"などの記述は負の論理値を表すために使うことができます。サポートされているキーには、pp32, app64, x86, x64, mac, osx, win, ntがあります。この規則には制限がありますので対応できない組み合わせもあります。

modo 501用には既にLaubwerk Plants(樹木のキット)などサードパーティのキットの開発も進んでいます。

このmodoのキットの仕組みと変幻自在なUIを使うことによってアイディア次第で特定用途向けのCGパッケージを作ることが可能です。キットは、modoを3DCGのツールキットとしてコンテンツパッケージを作る手段を提供しています。

投稿者 mars : 20:41 | コメント (0)

2011年01月02日

modo 501: レンダリング性能の改善

modo 501では、レンダリングに様々な改善が行われています。中でもレンダリング速度の大幅な改善は501の大きな改善事項の一つです。CPUの性能が幾ら高速化されてもレンダリング速度向上は重要ですね。

基本的にmodoのレンダリングは、GPUを使用せずCPUの機能のみを使ってマルチスレッディングの処理に最適化されています。CPUで必要な命令はSSE2ですので、最近のCPUでしたらほとんど問題なく動作します。レンダリングの単位であるバケットは各スレッドに割り当てられますのでコア数が増えるほど並列化され高速にレンダリングされます。下記はmodo 401とmodo 501のレンダリング速度を比較した結果です。もちろん、レンダリングするシーンの特性によりスピードアップのバラツキはありますが、1.5倍ぐらいは普通に速度アップしています。シーンによっては3倍以上のパフォーマンスを発揮します。

Room, modo 401: 66.3s
Room, modo 501: 44.1s (1.50x speedup)

8Spheres, modo 401: 64.6s
8Spheres, modo 501: 40.1s (1.61x speedup)

TeaTime, modo 401: 55.3s
TeaTime, modo 501: 32.2s (1.72x speedup)

AngerManagement, modo 401: 42.8s
AngerManagement, modo 501: 24.0s (1.78x speedup)

WMD_Full_Scene, modo 401: 111.4s
WMD_Full_Scene, modo 501: 58.1s (1.92x speedup)

TestTubes, modo 401: 44.0s
TestTubes, modo 501: 22.6s (1.95x speedup)


特にレンダリング速度がアップした物にMDDファイルを使ったアニメーションのレンダリングがあります。MDDはモデルデータの頂点座標の時系列情報を保存したファイルでLightWaveを始め、多くの3DCGソフトウェアがMDDファイルをサポートしています(※一部のソフトウェアはPointOvenなどサードパーティのソフトが必要になります)。他のソフトでアニメーションを作成し、modoでレンダリングをするフローで仕事をする方には特に恩恵が大きいのではないでしょうか。

また、ファーを使ったシーンではレンダリング速度の向上に加え、使用メモリーの節約も同時に行っています。レンダリングに不必要な視野外のファーを可能な限り除去することによってレンダリング速度とメモリー節約を同時に行っています。ファーを使用したレンダリングは時間が掛かる処理ですので効果は大きいと思います。リリース版ではありませんがMac OS版も64ビットになり、2Gバイトメモリーの制限からは解放されますが、使用メモリーの効率化もまだまだ重要です。


ファーカリング(オフ)


ファーカリング(オン)


その他、バンプマッピングの改善もレンダリング速度とメモリー節約に貢献しています。ディスプレースメント・バンプ(Displacement as Bump)は、同じ条件でのレンダリング効率がアップした物ではありませんが、ディスプレースメントを使用してレンダリングしたイメージと同じぐらいの品質のイメージをバンプで実現する機能です。条件によっては見た目でわからないディスプレースメントのレンダリングを高速かつ少ないメモリーで行う事が可能です。また、バンプマップそのもののアルゴリズムも改善されましたので、よりリアルな凹凸を表現できるようになりました。


通常のディスプレースメントでのレンダリング


ディスプレースメント・バンプを使ったレンダリング

投稿者 mars : 19:15 | コメント (0)

2010年12月30日

modo 501: カラーピッカー

modo 501の新機能の中では若干地味な存在ですが、非常に実用度の高い機能の一つにカラーマネージメントの改善があります。ヨーロッパのmodo Roadtripでも最もディスカッションが多かったテーマの一つです。


modo 501では、プリセットブラウザが拡張されカラーをプリセットとして取り扱えるようになりました。チームでCG制作をする場合や異なるコンピュータで仕事をする場合、そのシーンで使用するカラーを共有したい場合があります。カラーがプリセットファイルとしてファイルシステム上で個々に保存できるようになりましたので、LAN上の共有サーバーやDropboxなどのクラウドサーバーなどにカラープリセットを共有する事が可能です。カラープリセットのファイルは、下記のような単純なテキストファイルですので、他のシステムからも簡単にコンバートすることができます。

#LXColor#
RGB .365 .541 .659

カラーピッカーのインターフェイスも大幅に改善され、カラーモデルもRGB、HSV、ケルビンが用意されています。また、0.0-1.0の範囲外のハイダイナミックレンジのカラーもこのピッカーを使用して設定が可能です。カラー数値の単位も浮動小数点数、整数、16進数、パーセンテージなどを選択することができます。

HSVのオプションには、ルールという選択しているカラーに対応する関連カラーを同時に選択するオプションがあります。例えばこのHSVのルールオプションを補色(Complementary)にするとHSVパレットの円対称位置にある補色が同時に選択されますので、暖色とそれに対応する寒色が同時に欲しいときなどに便利です。その他、類似色相(Analogous)、3色配色(Triadic)、4色配色(Tetradic)、混合(Compaund)、明清(Tints)、陰影(Shades)などがあります。

カラーモデルは、RGB、HSV以外には色温度を指定するケルビン(Kelvin)が用意されていますが、modo 501ではカラーモデルをユーザーがカスタマイズできるようにSDKによる拡張を可能にしています。modo 501のSDKは、大幅にアップデートされています。SDKに関しましては、改めて解説していきたいと思います。

投稿者 mars : 09:32 | コメント (0)

2010年12月27日

modo 501: ワークフローとユーザーインターフェイス

modo 501で新しくなったワークフローとユーザーインターフェイスに関してはmodo 501 Tour に紹介されています。RayGLなどはmodo 501を入手して直ぐに試されたのではないでしょうか。レンダリングされた画面のポリゴンを直接モデリングができるのは不思議な感覚ですよね。プレビューウィンドウを開かずに作業画面上でレンダリング結果を見ながらモデリングやペイントの作業ができるのは便利です。RayGLに関しては、初期設定パネルにレンダリング方法の細かい設定オプションがあります。また、カメラビューで設定されているカメラがレンダリングで使用するカメラの場合、ビューの中央下に"Render Camera"のラベルが表示されますので、複数のカメラを持っているシーンではちょっと便利な機能です。

その他、modo 501で改善されたワークフローの幾つかを紹介します。

3Dトラッキング
前回のブログでも紹介しましたが、レイアウト中央下にあるマウスカーソルの位置情報などを表示する3Dトラッキングの情報が少し賢くなりました。modo 401までは、マウスカーソルの物理的なポジション情報だけを表示していましたが、modo 501では選択タイプごとにもう少し有益な情報を提供するようになりました。下図のビューはポリゴンモードでマウスカーソルをポリゴン上に移動したときの表示です。マウスカーソルの下にあるアイテム名称、ポリゴンの種類、ポリゴンのバウンディングボックスのサイズ、マウスカーソルが置かれているポリゴン上の座標値が表示されています。

その他の選択モードでは、下記のような情報が表示されます。
頂点モード
- マウスカーソルの下にあるアイテム名称
- マウスカーソルが置かれている頂点の座標値
エッジモード
- マウスカーソルの下にあるアイテム名称
- マウスカーソルが置かれているエッジの座標値
- マウスカーソルが置かれているエッジの長さ
マテリアルモード
- マウスカーソルの下にあるアイテム名称
- マウスカーソルが置かれているポリゴン上の座標値
- マウスカーソルが置かれているマテリアル名称(もしくはパート名称)
アイテムモード
- マウスカーソルの下にあるアイテム名称
- マウスカーソルが置かれているアイテムの名称
- マウスカーソルが置かれているマテリアルの種類

プロジェクトディレクトリ
プロジェクトディレクトリは、プロジェクトで使用するシーン、画像などのディレクトリを作成したり、切り替える機能です。システムメニューのFileメニューにある"New Project..."を使用すると新しいプロジェクトディレクトリを作成することができます。"Choose Project..."を使うと現在使用している違うプロジェクトに切り替えることができます。(※ 日本語メニューでは「プロジェクトを閉じる」になっていますが「プロジェクトの選択」の誤訳です)

"New Project..."で、Templateを"modo Standard"を選択して新しくプロジェクトを作成すると入力したプロジェクト名称のディレクトリが選択したディレクトリの下に作成され、その下にTemplateに基づいて"Images", "Moves", "Renders", "IrradianceCache", "Scenes"などのサブディレクトリが作成されます。これらはシーンで参照するテクスチャ画像の保存場所やレンダリング結果の保存場所などに対応しています。また、このプロジェクトディレクトリの下にはmodoが各サブディレクトリを認識するための情報が保存されている.luxprojectというテキストファイルが同時に作成されます。

Movies  (シーンで使用するムービーファイル)
Images  (シーンで使用する画像ファイル)
Renders/Frames  (シーケンスレンダリング結果)
Renders/Movies   (ムービーレンダリング結果)
IrradianceCaches  (放射照度キャッシュ)
Scenes  (シーンファイルの保存場所)

上記のサブディレクトリは、リソースディレクトリにあるprojdirstandard.cfgというコンフィグファイルに定義されています。カスタムのテンプレートを作成したい場合は、このコンフィグファイルを元にカスタマイズしたテンプレートをユーザーコンフィグディレクトリに置いておくと次回から"New Project..."のTemplateに出てきます。modo 501からユーザーコンフィグディレクトリは、システムメニューのSystemメニューにある"Open User Configs Folder"からデスクトップに開くことができるので便利です。

下記がカスタマイズしたテンプレートの1例です。残念ながらmodo 501ではテンプレートを作成するための専用エディタはまだ用意されていませんのでテキストエディタなどを使って編集する必要があります。"Association"は、modoが認識しているファイルの種類でデフォルトの検索場所を指定することができます。ちなみに"mdd"は、明文化されていませんがMDDファイルのディレクトリです。"Documents"などのように任意のディレクトリを定義することも可能です。

<atom type="ProjectTemplates">
<!-- User Strings -->
<hash type="TemplateInfo" key="mytemplate@en_US">
<atom type="UserName">My Projects</atom>
<hash type="PathInfo" key="scenes">
<atom type="FolderName">Models</atom>
</hash>
<hash type="PathInfo" key="images">
<atom type="FolderName">Images</atom>
</hash>
<hash type="PathInfo" key="docs">
<atom type="FolderName">Documents</atom>
</hash>
<hash type="PathInfo" key="mdd">
<atom type="FolderName">Mdd</atom>
</hash>
<hash type="PathInfo" key="irradiancecaches">
<atom type="FolderName">IrradianceCaches</atom>
</hash>
<hash type="PathInfo" key="renders">
<atom type="FolderName">Renders</atom>
</hash>
<hash type="PathInfo" key="renders/frames">
<atom type="FolderName">Frames</atom>
</hash>
</hash>

<!-- Definition and Hierarchy -->
<hash type="Template" key="mytemplate">
<hash type="Path" key="scenes">
<list type="Association">scene</list>
</hash>
<hash type="Path" key="images">
<list type="Association">image</list>
</hash>
<hash type="Path" key="irradiancecaches">
<list type="Association">irrad</list>
</hash>
<hash type="Path" key="mdd">
<list type="Association">mdd</list>
</hash>
<hash type="Path" key="renders">
<atom type="Path">Renders</atom>
</hash>
<hash type="Path" key="docs">
<atom type="Path">Documents</atom>
</hash>
<hash type="Path" key="renders/frames">
<atom type="Parent">renders</atom>
<list type="Association">image@render</list>
</hash>
</hash>
</atom>

投稿者 mars : 09:34 | コメント (0)

2010年12月25日

modo 501: Pixar サブディビジョンサーフェイス

Luxology社からmodo 501がリリースされました。リリースの概要は、modo 501 機能紹介ツアーのページで紹介されています。modo 501で新しく追加された機能や改善された機能をもう少し詳しくこのブログで紹介していきたいと思います。

最初に紹介する新機能は、Pixarサブディビジョンサーフェイスです。modoには、最初のバージョンからサブディビジョンサーフェイスが搭載されています。今回追加されたPixarサブディビジョンサーフェイスは、このオリジナルのサブディビジョンサーフェイスを置き換えるものではなく、新しいポリゴンタイプとして実装された物です。デフォルトのサブディビジョンサーフェイスは、あくまでもオリジナルのサブディビジョンサーフェイスで、面ポリゴンからPixarサブディジョンサーフェイスに切り替える場合は、TABキーの代わりにSHIFT-TABを使います。

Pixarサブディビジョンサーフェイスには次のような特徴があります。
- Catmull-Clerkアルゴリズムを使用したサブディビジョンサーフェイス
- セミシャープクリースにより、繊細な丸めを持つエッジの表現が可能
- 歪みのないUVテクスチャマッピング
- サブディビジョンレベルは、4のべき乗
- 異なる境界ルールのサポート
- 新しいFBX入出力プラグイン(FBX 2010.2)を使って、サブディビジョンサーフェイスとセミクリース情報を交換

セミシャープクリースは、エッジウェイトを使用して繊細に角が丸くなったエッジの表現を可能にします。オリジナルのサブディビジョンサーフェイスを使った場合は、エッジウェイトを使わずにエッジの近辺をスライスを加える方法が常套手段でした。このセミシャープクリースは、サブディジョンレベルに依存します。より、繊細なエッジの丸めを作るためには、サブディジョンサーフェイスを高くする必要があります。

また、エッジウェイトを使用していた場合、オリジナルのサブディビジョンサーフェイスでは、UVがゆがんでしまうケースがありました。Pixarサブディビジョンサーフェイスでは、エッジウェイトを使用しても歪みのないUVマッピングを行う事ができます。

一つ気をつけなければならないのは、サブディジョンサーフェイスの分割レベルの取り扱い方がオリジナルのサブディビジョンサーフェイスとPixarサブディビジョンサーフェイスとでは異なる点があります。オリジナルのサブディビジョンサーフェイスの分割レベルはリニアに分割が行われますが、Pixarサブディビジョンサーフェイスの分割レベルは階層的に行われます。分割数をあげすぎると急激に内部のポリゴン数が増えてしまうので注意が必要です。

オリジナルサブディビジョンサーフェイスの分割

Pixarサブディビジョンサーフェイスの分割

また、Pixarサブディビジョンサーフェイスには、メッシュのプロパティに境界ルール(Boundary Rules)というアトリビュートが追加されています。これは、閉じていないポリゴン形状をサブディビジョンサーフェイスにした場合、境界のエッジ部分をどのように表現するかを決めるアトリビュートです。たとえば、四角形を一つ作ってTABを押すとサブディジョンサーフェイスの形状は丸くなります。Pixarサブディビジョンサーフェイスでは、境界ルールを"Smooth All"と"Crease Edges"の場合丸くなり、”Crease All"の場合は四角くなります。下記が境界ルールの違いです。デフォルトは”Crease All"です。利用状況によって使い分けることができます。

• Smooth All: 全ての境界上のポジションはスムースルールに基づいて移動されます。
• Crease All: 2つのエッジが接続されているポジションはクリースルールによって移動され、それ以外の境界上のポジションは二つの境界エッジによってスムース化されます。
• Crease Edges: 2つのエッジが接続されているポジションはスムースルールによって移動され、それ以外の境界上のポジションは二つの境界エッジによってスムース化されます。

Pixarサブディビジョンサーフェイスには、上記のような優れた点がありますが、オリジナルのサブディビジョンサーフェイスにも下記のような利点がありますので状況に応じて使い分けることをお勧めします。

オリジナルのサブディビジョンサーフェイスの優れた点
- データ構造がシンプルなため、消費メモリーが少ない
- 既存のSDSモデルとの互換性
- サブでビジョン分割レベルがリニアなので制御しやすい
- アダプティブサブディジョンのサポート

最後にmodo上のモデルがオリジナルのサブディビジョンサーフェイスなのかPixarサブディビジョンサーフェイスなのかを区別するには次のような方法があります。これに関してはもう少し改善の余地があるかもしれません。
- 情報と状態(Info & Statistics)のポリゴンタイプで判別する
- ポリゴンモードでマウスカーソルの下にあるポリゴンの種類が画面中央下の状態パネルに表示されます
- 初期設定パネルでポリゴンタイプごとに選択ロールオーバーの色を変更することができます

投稿者 mars : 10:45 | コメント (0)

modo 501 アップグレードキット販売開始のお知らせ

Luxology_modo_logo.jpg

2010年12月24日より、国内のご登録ユーザー様 (modo401以下) を対象に、「modo 501日本語プレリリース版アップグレード・キット/ダウンロード版」の販売開始の運びとなりました。

【アップグレードサービスお申し込み先】
modo 501 アップグレードキット取扱代理店
マーズオンラインストア

modo 501 機能紹介ツアー
modo 501システム要件
modo 501新機能および機能改善リスト

無償バージョンアップについて
2010年11月15日以降よりmodo 501日本語正式版発売までの期間にmodo 401通常版、及びアップグレードキットをご購入いただきましたお客様にはmodo 501へアップグレードさせていただきます。

投稿者 mars : 10:10 | コメント (0)

2010年12月21日

Luxology's 2010 ホリデーイメージコンテスト

Luxology社主催のホリデーイメージコンテストの結果が発表になりました。

優勝者は、英国のLeifさんのサンタクロースのイメージです。トナカイがジェット機に一緒に乗っているのがおもしろいですね。イメージコンテストのLeifさんのトピックでは絵コンテや制作過程の様子が公開されています。Leifさん、おめでとうございます。

次点は、日本からエントリーされたHisakoさんの作品です。modoのレンダラーの開発者Allen Hasting氏も一押しの素敵な作品です。Hisakoさんのトピックはこちらです。Hisakoさん、おめでとうございます。


投稿者 mars : 08:53 | コメント (0)

2010年12月19日

Official 2011 Luxology Calendar

12月15日(水)にLuxology社からmodoの最新バージョンmodo 501がリリースされました。modo 501の詳しい情報は、下記から参照することができます。Marsからの販売開始は、12月24日(金)を予定しております。

modo 501 Feature Tour
modo 501 New Features
modo 501 Mac OS X 64 (Cocoa) Introductory Release
(※ 64ビットサポートのCocoa版の正式リリースはSP1からとなります)

Luxology.comのアカウントページから、2011のカレンダー(PDF形式)がダウンロードできます。ダウンロードには、Luxology.comのアカウントのログインが必要になります。Luxology.comのアカウントに関しましてはこちらのFAQをご覧ください。

2011Calendar.jpg

投稿者 mars : 16:10 | コメント (0)