特に更新とかは無いんですが、チームとしてCG製作されている方々と話をしてみて、現在のunRealがかなり個人作業で閉じている作りなのを思い知らされたためワークフロー部分の改善なんかを計画中。
他にもちょっと変わった新しいプラグインとか色々やりたいことはあるんですが、問題はどこまでサポートするかですよね。
おそらく現在はLW9.6で止めている人と11.6を使っている人、2015に移行を考えている人に分かれてるんじゃないかと思いますが、9.6と11.6の間にはVPRや統合サンプリングなど内部的に大きな改変があるため、そろそろ今後のバージョンは必要なら11.6以降のみ対応にしていこうかと考えているんですが……
どんなもんでしょ?
2015年02月19日
2013年02月07日
LW11.5日本語版リリース開始
追記
現在は修正されているそうなので以下の作業は必要ありません。
11.5が出ましたね
全体的に色々強化されてますがモデラーのスナップやギズモの拡張が便利です。
が、日本語版では

なんてヘルプテキストがおかしなことに。
色々調べたらインストールフォルダの\support\locales\jpn\core_tools.txtの中にこのヘルプの文字列定義があったのですが、コメントでひらがなかカタカナしか使えないなんて記述が。

ちゃんとした日本語化には時間がかかるから対応をひとまず後回しにしたって感じなんでしょうか。
ひとまずこのファイルをcore_tools.orgとかリネームして、\support\locales\enu\core_tools.txtをここにコピーすれば英語表記にできるので気になる人は自己責任でどうぞ。

2006年10月04日
catmullの色々
・エッジウェイト値によってはその部分のポリゴンがトゲのように変形することがある。
・ビューをウェイト表示にしてもエッジウェイトが確認できない。
・レイアウトでも分割レベル値によってトゲが出ることがある。
・catmullオブジェクトのモーフを編集するとポリゴンの描画が更新されず頂点だけ動く。
その状態でビューポートをクリックするとポリゴンも再描画される。
・鏡面コピーでエッジウェイトが壊れる。
-100%でストレッチしても壊れた。
・たまにシャープネス設定でエッジウェイトを変更しても反映されないことがある。
一度Tabでポリゴンに戻して再度catmullにすると反映される。
・ポリゴンの形状によって?uvが歪むことがある。
サブパッチのuv補完も使えないので打つ手なし
慣れてくれば自然と不具合を回避するような使い方できるけどやっぱ直してくれないと厳しいねぇ……
・ビューをウェイト表示にしてもエッジウェイトが確認できない。
・レイアウトでも分割レベル値によってトゲが出ることがある。
・catmullオブジェクトのモーフを編集するとポリゴンの描画が更新されず頂点だけ動く。
その状態でビューポートをクリックするとポリゴンも再描画される。
・鏡面コピーでエッジウェイトが壊れる。
-100%でストレッチしても壊れた。
・たまにシャープネス設定でエッジウェイトを変更しても反映されないことがある。
一度Tabでポリゴンに戻して再度catmullにすると反映される。
・ポリゴンの形状によって?uvが歪むことがある。
サブパッチのuv補完も使えないので打つ手なし
慣れてくれば自然と不具合を回避するような使い方できるけどやっぱ直してくれないと厳しいねぇ……
posted by DHM at 02:14
| TrackBack(0)
| LightWave3D
2006年09月19日
ブロッサム作りかけ
プラグインも一区切りついたので実戦投入&LW9をメインに使用してみたり。
……細かいバグが色々出てきた……
とりあえずここまで。

catmullのエッジウェイトはかなり便利でリボンや髪の角の部分なんかはセグメントを増やすことなくシャープにできていい感じなんだけど、やっぱりポリゴン分割でウェイトがぶっ壊れるのが厳しい。
とりあえずシャープな部分の無い体はサブパッチにして髪の毛と服飾だけcatmullに。
束ねた後ろ髪はHairBladeで作成。
根元を円、先端に行くほど髪の凹凸が出るようにシェイプモーフとカーブフィットで形を作ってます。
HairBlade自分じゃ初めてマトモに使ったけど結構便利かも。
レンダリングはAPS使って約100万ポリゴンで。
さすがにそんだけのポリゴン数になると深度の問題が出まくりなんでポリゴンセットでパーツ分けしてます。
その辺の細かい設定は次回にでも。
……細かいバグが色々出てきた……
とりあえずここまで。

catmullのエッジウェイトはかなり便利でリボンや髪の角の部分なんかはセグメントを増やすことなくシャープにできていい感じなんだけど、やっぱりポリゴン分割でウェイトがぶっ壊れるのが厳しい。
とりあえずシャープな部分の無い体はサブパッチにして髪の毛と服飾だけcatmullに。
束ねた後ろ髪はHairBladeで作成。
根元を円、先端に行くほど髪の凹凸が出るようにシェイプモーフとカーブフィットで形を作ってます。
HairBlade自分じゃ初めてマトモに使ったけど結構便利かも。
レンダリングはAPS使って約100万ポリゴンで。
さすがにそんだけのポリゴン数になると深度の問題が出まくりなんでポリゴンセットでパーツ分けしてます。
その辺の細かい設定は次回にでも。
posted by DHM at 01:40
| TrackBack(0)
| LightWave3D
2006年07月19日
絶望した!!こんな大事な機能を隠すNewTekに絶望した!!
海の向こうではLW9が出荷開始のようで。
PluginMLにも進展が無いかと覗いてみたら
「ドキュメントに載ってない隠し機能を見つけたぜフェーッフェッフェッ」
との投稿が。
(ユーザー登録してないと記事はみれないかも)
どうやらエスケープシーケンスの要領で特殊な文字列を渡すとLW本体で使われているチェックマークや虫眼鏡のアイコンが使えるよってことらしい。
ためしにサンプル組んでみたら

おおぅ……
チェックマークを出したいがためにリストボックスのコントロールまで自作した自分が馬鹿みたいだ……
なんでこんな便利なの隠すかなー
ほかにも文字の色変えたりギャップ挟んだりもできるよ!だって。
ちなみにDrawFuncsのdrawTextで描画する場合には使えませんでした。
PluginMLにも進展が無いかと覗いてみたら
「ドキュメントに載ってない隠し機能を見つけたぜフェーッフェッフェッ」
との投稿が。
(ユーザー登録してないと記事はみれないかも)
どうやらエスケープシーケンスの要領で特殊な文字列を渡すとLW本体で使われているチェックマークや虫眼鏡のアイコンが使えるよってことらしい。
ためしにサンプル組んでみたら

おおぅ……
チェックマークを出したいがためにリストボックスのコントロールまで自作した自分が馬鹿みたいだ……
なんでこんな便利なの隠すかなー
ほかにも文字の色変えたりギャップ挟んだりもできるよ!だって。
ちなみにDrawFuncsのdrawTextで描画する場合には使えませんでした。
posted by DHM at 21:48
| TrackBack(0)
| LightWave3D
2006年07月13日
Get9
LW9の先行アップグレード申し込み完了。
ついでにNewtekで公開されているLW9SDKも新版が出てたのでダウンロード、今後のことを色々妄想中……
エッジの対応についてはMeshDataEditクラスは対応しているようで、edgeScanやedgeFromPointsといった関数が追加されてたり。
んでもモデラーはどうでもよくて、レイアウトからエッジを参照するにはとMeshInfoの頁をみたら……
うわー……なんも無いよ。
念のためヘッダファイルを見ても、LWEdgeIDだのedgeScanのプロトタイプ宣言はあるものの、MeshInfo構造体ではまったく触れられてなかったりで、運が良ければ正式リリース時に、最悪9.5で対応だったりするんでしょーか。
もう一つ気になってたのはシェーダーの拡張で、今までクソの役にも立たなかったシャドウフラグが同梱されていたノードのサンプルで使用されていたので使えるようになってるはず。
まさかノードでは動作するけどシェーダーでは相変わらず動かないなんてないよね……
さらにシェーダーには拡散、反射、屈折等コンポーネント毎の色が設定できるようになった点。
個人的にこれが一番大きいかと。
今まではセルシェーダーのようにLWの処理を無視した独自のシェーディングを行う場合はreplacement_colorに計算後の色を設定する必要があった。
けど、そうするとLW側の処理は完全に行われなくなってしまうため、拡散のシェーディングを変えたいだけなのに鏡面反射や透過屈折のレイトレースなどLWと同等の処理を自前で書かないといけないという罰ゲームのような仕打ちが。
今回の拡張でその辺が解消されてたらいいなぁ……
ついでにNewtekで公開されているLW9SDKも新版が出てたのでダウンロード、今後のことを色々妄想中……
エッジの対応についてはMeshDataEditクラスは対応しているようで、edgeScanやedgeFromPointsといった関数が追加されてたり。
んでもモデラーはどうでもよくて、レイアウトからエッジを参照するにはとMeshInfoの頁をみたら……
うわー……なんも無いよ。
念のためヘッダファイルを見ても、LWEdgeIDだのedgeScanのプロトタイプ宣言はあるものの、MeshInfo構造体ではまったく触れられてなかったりで、運が良ければ正式リリース時に、最悪9.5で対応だったりするんでしょーか。
もう一つ気になってたのはシェーダーの拡張で、今までクソの役にも立たなかったシャドウフラグが同梱されていたノードのサンプルで使用されていたので使えるようになってるはず。
まさかノードでは動作するけどシェーダーでは相変わらず動かないなんてないよね……
さらにシェーダーには拡散、反射、屈折等コンポーネント毎の色が設定できるようになった点。
個人的にこれが一番大きいかと。
今まではセルシェーダーのようにLWの処理を無視した独自のシェーディングを行う場合はreplacement_colorに計算後の色を設定する必要があった。
けど、そうするとLW側の処理は完全に行われなくなってしまうため、拡散のシェーディングを変えたいだけなのに鏡面反射や透過屈折のレイトレースなどLWと同等の処理を自前で書かないといけないという罰ゲームのような仕打ちが。
今回の拡張でその辺が解消されてたらいいなぁ……
posted by DHM at 00:29
| TrackBack(0)
| LightWave3D
2006年03月06日
色々
noboyamaさんとこ経由で知ったのですが、osakana.factoryさんのこの日記。
塗りの影色についてだけど、白の陰は青っぽい色とか普段アニメで見てるのを見よう見まねでなんとなくそれっぽい色にしてたけど、実際は計算されたものだったとは!Shockだ!
とりあえず楽に真似できないかってことで両隣のキーの明度、輝度を比較しながら色を設定できるカラーピッカーを追加。

ノンモーダルで連続してキーの設定ができるからちょっとは効率も上がるんじゃなかろか。
塗りの影色についてだけど、白の陰は青っぽい色とか普段アニメで見てるのを見よう見まねでなんとなくそれっぽい色にしてたけど、実際は計算されたものだったとは!Shockだ!
とりあえず楽に真似できないかってことで両隣のキーの明度、輝度を比較しながら色を設定できるカラーピッカーを追加。

ノンモーダルで連続してキーの設定ができるからちょっとは効率も上がるんじゃなかろか。
posted by DHM at 00:19
| TrackBack(0)
| LightWave3D
2006年02月16日
方向性
ぶっちゃけシェーダーツリーで何でもできる今となってはプラグインで行うシェーディングの処理、機能自体には何の優位性もないワケで。
んじゃあわざわざ専用のシェーダーを使うことのメリットはというと
・できること、やることが決まってるので使用者の目的と一致したときにすんなり使える
・内積や微積分といった数学知識が無くてもとりあえず数値をいじってりゃ何とかなる
・専用に処理を組んでるので同等の機能をツリーで組むより高速に処理できる
といったUIや処理速度といった面になってくるんですかねぇ。
と、ここまでは奇麗事、心の底からの偽善でありまして、いくら理想は高くとも技術がついてこなきゃ絵に描いた餅ですワ。
そんな奇麗事をベースにCG彩色テクニックを読んで中途半端に2Dのことを理解したつもりになって新しいCelPainterをガリガリ書いた結果……

……道を間違えたかも。
一応パッと見ボタン類の数は減っているので見た人に使いやすいのではないかと誤解を与えることには成功しているはず。
レイヤー周りの処理もシェーダーツリーで真似しようとなると結構面倒なもののはず。
ついでにレイヤー編集をせずに初期状態で使う分には以前のバージョンと変わらない使い勝手にはなってる気もしまス。
パラメータは減ってるものの、このレイヤー重ね合わせとVParam化したグラディエントのキー、後はいくつかある特殊なレイヤーの組み合わせで
できることは旧バージョンより増えてはいます。
でもこれ半透明レイヤー追加しまくったら結構重くなりそうな気が……
かと言って一次元グラデーションのセルなんて今時PSPでもできるってーのにプリレンダのツールが負けるわけにはいかんですしねぇ。
内部処理作るのはこれからなんでまだまだ変わるかも。
んじゃあわざわざ専用のシェーダーを使うことのメリットはというと
・できること、やることが決まってるので使用者の目的と一致したときにすんなり使える
・内積や微積分といった数学知識が無くてもとりあえず数値をいじってりゃ何とかなる
・専用に処理を組んでるので同等の機能をツリーで組むより高速に処理できる
といったUIや処理速度といった面になってくるんですかねぇ。
と、ここまでは奇麗事、心の底からの偽善でありまして、いくら理想は高くとも技術がついてこなきゃ絵に描いた餅ですワ。
そんな奇麗事をベースにCG彩色テクニックを読んで中途半端に2Dのことを理解したつもりになって新しいCelPainterをガリガリ書いた結果……

……道を間違えたかも。
一応パッと見ボタン類の数は減っているので見た人に使いやすいのではないかと誤解を与えることには成功しているはず。
レイヤー周りの処理もシェーダーツリーで真似しようとなると結構面倒なもののはず。
ついでにレイヤー編集をせずに初期状態で使う分には以前のバージョンと変わらない使い勝手にはなってる気もしまス。
パラメータは減ってるものの、このレイヤー重ね合わせとVParam化したグラディエントのキー、後はいくつかある特殊なレイヤーの組み合わせで
できることは旧バージョンより増えてはいます。
でもこれ半透明レイヤー追加しまくったら結構重くなりそうな気が……
かと言って一次元グラデーションのセルなんて今時PSPでもできるってーのにプリレンダのツールが負けるわけにはいかんですしねぇ。
内部処理作るのはこれからなんでまだまだ変わるかも。
posted by DHM at 00:08
| TrackBack(0)
| LightWave3D
2006年01月14日
運用でカバーは素敵な呪文
とりあえずグラディエントのことはひとまず見なかったことに。
Y.Ume氏の助言でセグメント問題も無事解決、というか氏も強力なセルエッジプラグイン作られてたようで素敵すぎ。
とりあえずこちらも今のところセルエッジの機能はほぼ完成。
CelPainterも作り直しで相当時間掛かりそうなんでこの段階で一発出してみる予定。
以下はPLD以外はLWアンチ中でレンダリング後のレタッチとかもなしの状態
1ピクセルの線。

PLDの方を使うとレベル9で結構滑らかに。

ブラシサイズのパラメータにプロシージャルのTurbulence使用。
以前のStrokeFXよりだいぶ楽に色々いじれます。

同じブラシサイズでもCycloneを使うとまた違った感じに。

半円に潰した丸ブラシの角度にプロシージャルを設定。

今回はブラシパラメータに中心点が追加されたんでこんなことも。

ついでに色にもテクスチャ貼れる様になったんでこんなのも。

Y.Ume氏の助言でセグメント問題も無事解決、というか氏も強力なセルエッジプラグイン作られてたようで素敵すぎ。
とりあえずこちらも今のところセルエッジの機能はほぼ完成。
CelPainterも作り直しで相当時間掛かりそうなんでこの段階で一発出してみる予定。
以下はPLD以外はLWアンチ中でレンダリング後のレタッチとかもなしの状態
1ピクセルの線。

PLDの方を使うとレベル9で結構滑らかに。

ブラシサイズのパラメータにプロシージャルのTurbulence使用。
以前のStrokeFXよりだいぶ楽に色々いじれます。

同じブラシサイズでもCycloneを使うとまた違った感じに。

半円に潰した丸ブラシの角度にプロシージャルを設定。

今回はブラシパラメータに中心点が追加されたんでこんなことも。

ついでに色にもテクスチャ貼れる様になったんでこんなのも。

posted by DHM at 00:55
| TrackBack(0)
| LightWave3D
2006年01月04日
仕事より働いた……
なんだかんだで休みの間中プログラム組み続ける。

ノンモーダルパネルになったおかげで今までStrokeFXやVisualEdit等自前で用意していた機能をLWのテクスチャインターフェイス、VIPERで置き換えできたのが大きいでス。
しかしVIPERはアンチエイリアス効かないのは仕方ないとしてもLW側で持ってるプレビューイメージに本レンダリングしたときの線が残っちゃってて困ったところ。
ついでにレンダリングでセグメント分割してるとVIPERだけでなく本レンダリングでも分割部分に線が出たりとまだまだ問題は山積み。
つかSDKでセグメントメモリや分割数の設定が一切取れないのはどうしよ……

ノンモーダルパネルになったおかげで今までStrokeFXやVisualEdit等自前で用意していた機能をLWのテクスチャインターフェイス、VIPERで置き換えできたのが大きいでス。
しかしVIPERはアンチエイリアス効かないのは仕方ないとしてもLW側で持ってるプレビューイメージに本レンダリングしたときの線が残っちゃってて困ったところ。
ついでにレンダリングでセグメント分割してるとVIPERだけでなく本レンダリングでも分割部分に線が出たりとまだまだ問題は山積み。
つかSDKでセグメントメモリや分割数の設定が一切取れないのはどうしよ……
posted by DHM at 01:00
| TrackBack(0)
| LightWave3D
2005年12月31日
先のことは考えるな!
LW9で一番気になってるのがレンダラー周りがどう変わるかってことで。
現在公開されている新機能リストや、過去のElectricImageの人を引っ張ってきたニュースなんかを見てもレンダラーの強化にかなり力を入れてるような雰囲気。
おそらく今のShader、PixelFilter、ImageFilterといったプラグインクラスそのものが無くなるような事はないとは思うけど、個々の内部動作には何らかの変化があるだろうことは想像できるワケで。
なもんで8.x系と9.xとで内部処理が違う2つのプラグインを管理するくらいなら最新版のみサポートしたいってのが本音でLW9専用とか言ってたりしたのですが。
実際今のunRealも部分的には8.x用、7.5用、色々あって消せない6.5用の処理もしぶとく生き残ってたりして無駄にサイズがでかくなってます。
んでもまぁ今から先のことばかり心配して手を動かさないのも馬鹿みたいなのでやっぱり8.5専用で作り始めてます。
今回はSDK新機能のCommunicationRing使っちゃったので7.5は完全にサポート外です。
ついでに0から作り直しててちょうどいい機会なので不要な機能はガンガン削ってます。
ToonTracerはセルエッジしか使えません。
ハーフトーンとかはシェーダーで十分できるし、そもそも誰も使ってねぇし。
でも根本的な2Dベースの輪郭検出やグループIDを使用する方法はそのままなのでクロミ様仰るところの戦う前から負け犬になっちまってる感は拭えません……

とりあえずインターフェイスはこんな感じ。
以前やろうとして技術的に断念した機能とかここぞとばかりに詰め込んでます。
チェック付のリストなんかはスクロールバー含めてすべてDragAreaコントロールに自前で描画してます。アホです。
でもSDKにそんなコントロールないんだもん。
そんな感じでまた来年。
現在公開されている新機能リストや、過去のElectricImageの人を引っ張ってきたニュースなんかを見てもレンダラーの強化にかなり力を入れてるような雰囲気。
おそらく今のShader、PixelFilter、ImageFilterといったプラグインクラスそのものが無くなるような事はないとは思うけど、個々の内部動作には何らかの変化があるだろうことは想像できるワケで。
なもんで8.x系と9.xとで内部処理が違う2つのプラグインを管理するくらいなら最新版のみサポートしたいってのが本音でLW9専用とか言ってたりしたのですが。
実際今のunRealも部分的には8.x用、7.5用、色々あって消せない6.5用の処理もしぶとく生き残ってたりして無駄にサイズがでかくなってます。
んでもまぁ今から先のことばかり心配して手を動かさないのも馬鹿みたいなのでやっぱり8.5専用で作り始めてます。
今回はSDK新機能のCommunicationRing使っちゃったので7.5は完全にサポート外です。
ついでに0から作り直しててちょうどいい機会なので不要な機能はガンガン削ってます。
ToonTracerはセルエッジしか使えません。
ハーフトーンとかはシェーダーで十分できるし、そもそも誰も使ってねぇし。
でも根本的な2Dベースの輪郭検出やグループIDを使用する方法はそのままなのでクロミ様仰るところの戦う前から負け犬になっちまってる感は拭えません……

とりあえずインターフェイスはこんな感じ。
以前やろうとして技術的に断念した機能とかここぞとばかりに詰め込んでます。
チェック付のリストなんかはスクロールバー含めてすべてDragAreaコントロールに自前で描画してます。アホです。
でもSDKにそんなコントロールないんだもん。
そんな感じでまた来年。
posted by DHM at 22:30
| TrackBack(0)
| LightWave3D
2005年12月18日
実験
そもそも、LW6の頃に思いつきだけで作ったモノの仕様を
互換性第一とか言って今まで引きずってきたのが問題なわけで。
試しにセルエッジ処理をPixelFilterで行うサンプル作ってみたり。

この方法はアンチエイリアスがLW側の処理の流れに組み込まれるようになるため、今のようにレンダリング画像サイズの数倍のメモリを取ったり、数倍のレンダリング時間をかける必要がなくなるのが利点。

クラシックのアンチエイリアスだとまだちょっと線がガタついてるけど、PLDを使うとだいぶいい感じに。

ついでにSasquatchとの相性も良くなったり。
ただ、この方法にしちゃうとエッジを生成する実処理がちょうどShaderとPixelFilterの間に入ってしまうため、StrokeFXとかで使ってる入力パラメータの特殊バッファの殆どが使えなくなってしまうけど、これはまぁ誰も使ってなさげだからいいよねーってことで。
これで色々試して大きな問題が無ければToonTracerのPixelFilter化をしてみようかと画策中。
タイミングによってはLW9専用で作ることになるかもしれんけど。
互換性第一とか言って今まで引きずってきたのが問題なわけで。
試しにセルエッジ処理をPixelFilterで行うサンプル作ってみたり。

この方法はアンチエイリアスがLW側の処理の流れに組み込まれるようになるため、今のようにレンダリング画像サイズの数倍のメモリを取ったり、数倍のレンダリング時間をかける必要がなくなるのが利点。

クラシックのアンチエイリアスだとまだちょっと線がガタついてるけど、PLDを使うとだいぶいい感じに。

ついでにSasquatchとの相性も良くなったり。
ただ、この方法にしちゃうとエッジを生成する実処理がちょうどShaderとPixelFilterの間に入ってしまうため、StrokeFXとかで使ってる入力パラメータの特殊バッファの殆どが使えなくなってしまうけど、これはまぁ誰も使ってなさげだからいいよねーってことで。
これで色々試して大きな問題が無ければToonTracerのPixelFilter化をしてみようかと画策中。
タイミングによってはLW9専用で作ることになるかもしれんけど。
posted by DHM at 13:18
| TrackBack(0)
| LightWave3D