strange items(楽天)


shade10.5〜15用スクリプト(WINDOWS&MAC用)一覧はこちらです。


bannerst.jpg
リンク用のバナーです。
リンクはご自由にどうぞ。

2015年07月17日

shade用スクリプトその93(リフレクションシェーダー)

リフレクションシェーダー.txt

このスクリプトは、私が以前作った「ベルベットシェーダー」や「グラデーションシェーダー」スクリプトと同じように、レンダリング後の画像をスクリプトで加工する事によって、一部の形状の材質の見映えをもっと良くしようというスクリプトです。

マルチパスレンダリングの「XY法線画像」(今回はカラーの画像)をスクリプト内の計算で使いますため、それが生成できないbasicユーザーさんは申し訳ないのですがご利用できず、standard版とprofessional版用となっています。
利用できるshadeのバージョンは、12,13,14,15(とそれ以降)となっています。
(XY法線画像の仕様が12以後で少し変わったため、11以前では使えません。)


<このスクリプトの利点とは?>
以前このブログでも書いたのですが、現状のshadeでは特定の形状だけをライトで照らせる「セレクティブライト」という機能が搭載されていません。
セレクティブライトは、一部のオブジェクトの見映えをもっと良くするためにあると便利なので他の3DCGソフトにはわりと搭載されている機能なのですが、shadeにはまだ実装されておらず、それを補う形で「形状個別に設定できる環境マップを使って、特定の形状にだけ追加の光沢や照明効果を加える」というテクを使う事になります。
ただ、この環境マップの画像の投影方式には残念ながらスフィアマップ形式(lightprobe画像をそのまま使えるやつ)がありません。
shadeも背景に画像をセットする場合は「ライトプローブ」用の投影手法が選択できるのですが、個別の形状に設定する表面材質の環境マップの方では、「球投影」とはまた違うライトプローブ画像をそのまま使える「スフィアマップ投影」が搭載されていないのです。

lightprobe型の投影手法(スフィアマップ)というのは、

リフレク001.jpg

これはまぁshadeで作ったやつですが、こんな感じで「球に周囲の映像が映りこんでる」という画像ですね。
検索エンジンで「lightprobe」と画像検索をすると、腐るほどこういう画像が出てくると思います。
こういう画像が環境マップとして使えるようになる投影手法です。

lightprobe型の投影手法で環境マップできるようになると、「狙った箇所に光沢や照明効果を追加しやすい」という利点や、「他の投影手法では継ぎ目が映りこんでしまう事がある」というのを回避できる利点があるのです。

で、このスクリプトでは、マルチパスレンダリングで作った「XY法線画像」で各ピクセル毎に法線ベクトルを調べ、それを元に(専用のパートに)セットしてあるlightprobe型の球画像の中心から、上下や左右の方向へピクセルを検索して色を拾い、レンダリング後の画像の一部の形状の表面材質だけ「描き変え」をしたり、「加算(光沢や照明、メタリックな質感を与える)」、「減算」、「1.何倍(加算とは違う明るくなる方法)」や「乗算」などの処理をやるのです。

まぁ、難しい事はおいておいて、実際に使ってみてその効果を確認してみましょう。


<使用方法>
このスクリプトではレンダリング後の画像を描き変えるため(「出力先」オプションが「レンダリング画像」の場合)、スクリプトを実行する前にファイル名を変えて元のファイルを残しておくか、私が以前作った「レンダリング後画像のコピーと復帰」スクリプトを使って、レンダリング画像のバックアップを取っておいてください。
「レンダリング後画像のコピーと復帰」でできたパート(表面材質のマッピングレイヤーにレンダリング画像がコピーされている)は、念のため三個くらい複製しておくと「レンダリング画像を戻すつもりが、間違ってコピーして上書きしてしまった…」というのを回避できるでしょう。


さて、スクリプトを動作させるための条件としては、まずはイメージウインドウ(レンダリングウインドウ)のオプションの「マルチパス」タブで「マルチパスを保持する」をON、「データ:XY法線」のチェックをON、「データ:表面材質ID」のチェックをONにしてレンダリングをしてください。
レンダリングが終了しましたら、レンダリング画像の方はこれで準備okです。

で、lightprobe画像はどこにセットするかというと、パートを作成し、そのパート内は必ず空のままにした上で、パートに表面材質を作成し、必ずマッピングレイヤー1にlightprobe画像(ネットで拾ったのでもいいし、shadeやペイントソフトで作ったのでもいいです)をセットしてください。
もしlightprobe画像を変更する場合は、このマッピングレイヤー1の画像を変えてください。

また、lightprobe画像の注意点としては、必ず画像の中心と球の中心が一致している必要があります。トリミングなどを行う場合は、その点に注意してください。
それを満たしておけば、画像自体の縦横のピクセル数が1:1でなくてもいいですし、球が画像のフレームよりわりと小さい場合も、その点についてはスクリプトの特定のパラメーターで調整できるようになっています。

次に、スクリプトを起動する前に「効果を適用したい表面材質の表面材質IDカラー」というのを調べておく必要があります。
レンダリングウインドウの下部にあるセレクタを「RGB」から「表面材質ID」に切り替えて、その色をペイントソフトなどへプリントスクリーンなどで持っていき、スポイトツールなどで正確なRGB値を調べておいてください。
表面材質を変更してレンダリングをやり直しした場合、時々この色が変化してしまうのには注意してください。
そして、スクリプト実行前には、レンダリングウインドウに表示される画像は、先ほどの下部のセレクタを「表面材質ID」から必ず「RGB」に戻しておいてください。

で、lightprobe画像をマッピングレイヤー1にセットしてある空のパートを選択状態で、この「リフレクションシェーダー」スクリプトを実行すると設定ダイアログが開きます。

リフレク002.jpg

効果がわかりやすいよう、今回はこんなシンプルな形状のレンダリング画像をスクリプトで加工してみます。

スクリプトを起動すると、

リフレク003.jpg

みたいなダイアログが現れます。

上からパラメーターを順に見ていきますと・・・・・

まずは「対象」というのがあり、「全ての形状」と「指定の表面材質のみ」の二択から選べます。
「全ての形状」の場合はレンダリング画像の全部のピクセルに処理を施し、「指定の表面材質のみ」の場合は、先ほど調べた表面材質IDカラーの部分にのみ処理を施せます。(全ての形状の場合は、疑似アンチエイリアスがOFFになります)
たいていは、この「対象」は「指定の表面材質のみ」の方を選ぶ事になるでしょう。

この次にある「操作する箇所の表面材質IDカラー」のカラーボックスで、先ほど調べた色をR,G,B値をできるだけ正確に入力します。
ちなみに各種パラメーターは、一部を除きスクリプト起動後は選択している空のパート名が「リフレク:」と変更された上で、各パラメーターの値を記録しておくようになっていますので、レンダリングをやり直して表面材質IDカラーが変更されない限りは、一度設定した表面材質IDカラーは再設定する必要はありません。
この「リフレク:」というパートは、名前の「:」の後ろならばどんな文字列を入れてもいいですし、複製して設定値を複数シーンファイルに保存しておく事も可能です。
以前の設定値でスクリプトを実行したい場合は、この「リフレク:」をブラウザで選択した状態で「リフレクションシェーダー」スクリプトを起動してください。


さて、次のパラメーターの「球画像の半径の倍率」ですが、lightprobe画像の球が画像のサイズぎりぎりまでの場合はデフォルトの1か、少し小さい値にします。
でも、もし

リフレク004.jpg

これは極端な例ですが、こんな感じで画像の外枠と球の間に結構な隙間がある場合は、この「球画像の半径の倍率」を1よりもっと小さくして、スクリプトが球の中心を基点として色を拾う作業を行う時の「半径」を縮小させます。
球の外側に結構な隙間がある場合、デフォルトの1という数値では、球の外側の黒いエリアのピクセルも拾って環境マップとして映りこませてしまうため、ここの「半径の倍率」の値を適切に設定して、球からはみ出さないようにするわけです。
あまり低すぎる値にすると、今度は球の中心近くのピクセルしか拾わなくなるので注意。

次のパラメーターの「画像のコントラスト調整」は、lightprobe画像をスクリプト内部でコントラスト調整します。1より大きい値にしてコントラストをきつめにしたり、1より低い値にしてコントラストを低くさせたり。

「適用率」は、モードが「描き変え」「描き変え後、元画像の明度を乗算」の場合は意味をなしませんが、「加算」「減算」「1.何倍」「乗算」の場合は、適用率を下げていって0に近づくほど効果が薄くなります。

「明度の持ち上げ量」のパラメーターは「描き変え後、元画像の明度を乗算」の場合にのみ意味のあるパラメーターです。
「グラデーションシェーダー」スクリプトでもあったような機能で、「元画像の明度を乗算したら暗くなりすぎた」みたいな場合、ここの値を0.いくらかにして少しだけ明度を持ち上げてやるのです。
なお、最大の1にすると「描き変え」と同じ結果になります。

「暗部は残す」と「暗部閾値」の二つのパラメーターは後で説明します。

「疑似アンチエイリアス」の項目は、スクリプトで材質を変化させるオブジェクトの境界あたりにできてしまいがちなジャギーを多少緩和させます。(アンチエイリアス品質はあまりよくありません)
もしオブジェクトの輪郭あたりに不自然な映り込みができた場合は、まずは「球画像の半径の倍率」の方で適切な数値を設定した上で、この「アンチエイリアス」をONにすると解消できます。
残念ながらオブジェクトの外周ではなく内部に不自然なジャギーが発生した場合は、このアンチエイリアスオプションでは解消できません。


「出力先」パラメータでは「別ウインドウ(テストレンダ)」と「レンダリング画像」の二種類から選べるのですが、「レンダリング画像」の方を選択するとレンダリング画像を描き変えてしまいます。(間違って選択した場合も「結果を確定」の時にキャンセルできますが)
「別ウインドウ(テストレンダ)」なら、レンダリング画像を描き変える事なく、別ウインドウに小さいサイズで色々なパラメーターで描き変えた画像を確認できますので、テストレンダを繰り返してから、気に入った結果になったら「レンダリング画像」に切り替えてください。
テストレンダリングウインドウは同じ位置に次々と開きますので、こまめに「x」ボタンを押してテストウインドウを閉じていってください。(スクリプト実行中はウインドウは消せないので、一旦スクリプトを終了してから不要なテストウインドウを閉じてください)

「テストレンダ時パラメータも出力する」のチェックがONの場合、各パラメータ値がshadeのメッセージウインドウに出力されますので、テストレンダリング用のウインドウIDと各種パラメーター値を見て、後で気に入った設定を手入力で再現できます。
(出力されるパラメーター値は、微妙に小数点以下が足したり減ったりしていますので、その部分は修正して入力してください)

「テストレンダのサイズ」では、テストレンダウインドウのサイズを選べて、小さい画面ほど早く結果が確認できます。


それでは、「モード」ごとの違いを見ていきましょう。

リフレク001.jpg

のlightprobe画像を使って

リフレク002.jpg

の材質変化をさせた場合、

リフレク005.jpg
モードが「描き変え」だと、上記のように元の色を無視して丸ごと描き変えて、環境マップ風になります。

リフレク006.jpg
モードが「描き変え後、元画像の明度を乗算」だと、上記のように元の色を無視して丸ごと描き変えた後、元画像の明度を乗算して少し立体感のある環境マップになります。
(この例では多少明度をもちあげています)

リフレク007.jpg
上記は「加算」モードです。(適用率は低めにしました)
元の画像の色に、環境マップのlightprobe画像から拾った色を加算合成しています。

lightprobe画像を
リフレク008.jpg
に替えて加算モードにした場合は、

リフレク009.jpg
上記のように、特定の形状にだけ光沢や照明効果を追加して見映えを良くする「セレクティブライト」的な事ができます。
「加算」モードでは、lightprobe画像の方を工夫すれば、輪郭部分近くだけを明るくするリムライト的な効果を指定の材質にだけ付与する事もできますし、トゥーンレンダリング画像でキャラの髪にアニメ的なツヤの輪っかを追加する事もできます。(…が、髪ツヤ追加の場合は、ツヤの位置調整をlightprobe画像側で設定するのですが、それが結構難しいかも?)
「スフィアマップ」で画像検索すると、アニメ的な髪ツヤ画像の作り方や、髪ツヤ用のスフィアマップ画像を配布しているサイトがいくつも見つかるでしょう。

リフレク010.jpg
上記は「減算」モードですが、搭載したものの、このモードはいまいち使い勝手がよくわかりませんね。
ぼかしたメタリック状の球をlightprobeとして適用率を下げて減算合成すると、汚し的な感じにできるかも?

リフレク011.jpg
これは「1.何倍」モードです。
「加算」はlightprobe画像のピクセルから拾った色のRGB値を足しているのに対して、こっちはその値をRGBごとに1に足して掛けています。
加算モードとはまた違う照明効果を加える事ができます。

リフレク012.jpg
上記は「乗算」モードです。
このlightprobeだといまいち使い勝手がわからないと思いますが、

リフレク013.jpg
これみたいに、ペイントソフトで作った円形グラデーションをlightprobe画像として設定すると、

リフレク014.jpg
上記のように、「視線との角度が平行に近づいていくにつれ、赤味が増していく」みたいにできます。
スキンシェーダーとは違うのですが、人物モデルでキャラクターの肌にこれをやると、肌により立体感が出たりします。

肌150715001.jpg

肌150715002.jpg

テクスチャでまつ毛や眉毛を描きこんでいる場合、まつ気や眉毛も赤味が増すのが難点ですが。


最後に、説明を省略していた「暗部は残す」と「暗部閾値」の二つについて解説します。

形状の材質を少し変えて、こんなのをレンダリングしてみました。

リフレク015.jpg

黒のストライプを拡散反射と光沢1に設定しました。
この黒い部分は、メカなどでの「筋彫り用の黒い線」みたいに思ってください。
メカのテクスチャリングでは、黒い線を拡散マップや光沢マップの乗算モードなどで追加したりする事がありますよね。
筋彫り部分は光沢や拡散光で明るくならないために。

通常の方式で、この「リフレクションシェーダー」で処理をすると、

リフレク017.jpg
これは加算モードですが、こんな感じで、一部のモードでは筋彫りの黒の部分を無視して明るくしてしまいます。
「加算モードを使えば、セレクティブライト的に一部の形状に追加の光沢や照明効果を加え、見映えをもっと良くする事ができる」と言っても、筋彫りの黒の部分が死んでしまっては意味がないわけです。

でも、この「暗部は残す」をONで、「暗部閾値」は1で加算モードをやってみると、

リフレク018.jpg
こんな感じで、筋彫りの黒(暗部)にはあまり影響を与えずに、他の部分に光沢や照明効果を追加できるのです。

スクリプトでやっている事は、ピクセル単位でレンダリング画像の元の明度を調べ、その明度で適用率を変更させています。黒に近いピクセルほど適用率を落としていく、という感じで、暗部にできるだけ影響を与えないようにしてるわけです。
「暗部閾値」は、「この明度以下のピクセルでないと適用率操作をしない」という設定値で、基本的に1でいいと思いますが、1より下げていく事でまた違った効果が出るでしょう。
しかし、1より下げた場合は、材質に辺な境界線ができたり、疑似アンチエイリアスONでは消せないジャギーが発生しがちなので注意してください。

posted by stxsi at 17:47| shadeスクリプト | このブログの読者になる | 更新情報をチェックする

2015年04月25日

辺の除去ツールを使って、面の形にあわせた斜め格子の作成(shade3D バージョン15)

shadeモデリング実験カテゴリの記事。今回は菱形格子の作成です。

shade15では頂点や辺の除去ツールが追加されましたが、これを使えば以下のような感じで、面の形にあわせた斜め格子(菱形格子)の作成がわりと楽にできるよう。

斜め格子001.jpg
縦長の長方形ポリゴンがあるとします。

斜め格子002.jpg 
面選択モードに切り替えて面を選択した後、「分割>三分割」で、縦横三分割の計9分割にしました。

斜め格子003.jpg
全ての面を選択した状態で、「ベベル>ベベル」で、各面をスケールが0になるまで面の内側方向へベベルします。(面の高さ方向は0のまま)

斜め格子004.jpg
辺選択モードに切り替えた後、上記のように辺を選択(黄色が選択辺)して・・・

斜め格子005.jpg
shade15で追加された「結合/除去>除去」を実行すると、上記のようになるわけです。

斜め格子006.jpg
あとは面選択モードに切り替えて、全ての面を選択して、「ベベル>ベベル」で各面の内側方向に少しベベルし、面の選択状態を反転して手前方向にベベルをすると、上記のような感じにできます。

屋内シーンでの斜め格子(菱形格子)の間仕切りや、窓に菱形の格子装飾を付ける時や、屋外シーンでも建物の一部に和風の菱形格子をつける時に、このモデリング方法が多少役に立つかもしれません。

posted by stxsi at 10:23| shadeモデリング実験 | このブログの読者になる | 更新情報をチェックする

2015年02月11日

shade14とshade15では一括ベルト抜きスクリプトが正常に動作しないよう

手動でのポリゴンリダクション用に作った一括ベルト抜きというスクリプトですが、どうやらshade14と15では正常に動作しないようです。

単体およびmeshtoolplusに収録したこのスクリプトについては、shade14および15ユーザーの方は使用しないようにしてください。


shade14の場合、必ず結果が不正になります。

shade15(15.00)の場合、正常に処理される場合と、結果が不正になる場合の二種類に分かれるようです。

後者の場合、結果が不正になった後に、スクリプトの処理をキャンセルすると形状自体は元に戻りますが、辺の選択状態はキャンセル後は元とはかなり違った感じになってしまいます。

その後に辺を選択しなおしてスクリプトを再実行すると、たまに正常にベルト抜きがされる・・・・みたいな感じになっています。


shade15では「エッジの除去とクリーン」というツールが標準搭載され、これは「ベルト抜き」や「一括ベルト抜き」スクリプトと同じように不要なエッジを消去して手動でのポリゴンリダクションが可能になっています。
shade15ユーザーの方は、私が作ったスクリプトではなく、標準で搭載された「エッジの除去とクリーン」ツールを使うようにしてください。

posted by stxsi at 10:44| shadeスクリプト | このブログの読者になる | 更新情報をチェックする

2015年02月08日

shade15入手

shade15の無償バージョンアップ版の案内が来たので、ダウンロードしてインストールしてみました。

とりあえず全部のスクリプトを試したわけではないのですが、ポリゴン系のツールセットであるmeshtoolplusウィジェットに収録したスクリプトやその他のスクリプトはそのまま動くようです。

なお、shade15でmeshtoolplusウィジェットを使う場合は、メーカーが推奨するようにユーザーのドキュメントフォルダの中のwidgetフォルダにコピーするのではなく、shade15がインストールされたフォルダ内のwidgetフォルダの方にコピーしてください。(shade14の時と同じ感じです。)


15ではようやくopensubdivisionが使えるようになり、稜線への重みづけ設定でシャープな稜線を簡単に表現できるようになったのが嬉しいですね。

あと、モデリングライトの種類が従来の一種類から何種類にも増えているのもありがたいです。

posted by stxsi at 15:15| shadeスクリプト | このブログの読者になる | 更新情報をチェックする

2014年12月25日

shade14でひっそりと追加されていたニヤリとする新機能

shade15の前座として買ったばかりの14をいじってたりするのですが、shade14の新機能一覧をマニュアルで確認してたら、表面材質の「環境(マップ)」のパラメーターに「遮蔽」というのが新たに追加されていたようです。
この機能が結構嬉しい感じで・・・。

例えばプロシージャルテクスチャを「スポット」にし、色を「白」、マッピングタイプを「環境」にすれば、擬似的だけどメタリックな質感が表現できますよね。

reflectiontest141225001b.jpg

でも、上記の画像を見ておわかりの通り、周辺の物は何も映りこんでいません。

で、shadeのバージョン14から追加されたこの「遮蔽」というパラメーターの数値を上げると・・・

reflectiontest141225001a.jpg

みたいに、地面や周辺の物(このサンプルでは円柱)などがまるで映りこんでいるかのような感じにできると。

実際はこれは反射させているのではなくマスクして遮蔽の値に応じて環境マッピングの反映具合を下げているのでしょうね。
あと、磨かれた物体の場合は、こんな風にきっちり映りこんだりせず、本来は反射像がぼやけるものですが、まぁそれでもこういう機能は無いよりあった方が断然嬉しいです。


マッピングタイプの「環境」は、今回みたいにオブジェクトに多少メタリック感を与える時に使ってもいいのですが、例えば真っ黒の画像にグローがかった白い点や大きな光球を一つ、あるいは複数描き込んだ画像をテクスチャとして環境マッピングすると、「他のオブジェクトには影響を与えず、そのオブジェクトにだけ独特の光沢を追加する事ができる」わけです。

現状のshadeでは他の3DCGソフトみたいに、「特定のオブジェクトだけを照らすライト」というのが設定できません。
でも、このTIPSを使えば、特定のオブジェクトに特有の光沢を追加できるようになり、物体の見栄えを良くする事ができたりするでしょう。
この14では反射の遮蔽ができるようになったため、「環境マップで光沢を追加する」際に、よりシーンになじんだ感じにできますね。

reflectionkoutaku141225001_image.jpg

このサンプルでは、オブジェクトの光沢は環境マップだけで表現しています。
こんな感じで、他のオブジェクトには影響を与えず、特定のオブジェクトにだけ色々な光沢を追加できるのです。
例えば、「椅子をレンダリングしたけど、この革パーツの部分の質感だけもうちょっとグレードアップしたいな」と思った時に、他のオブジェクトには影響を与えず、革パーツにだけ光沢を追加できます。
使う画像の方で光のぼやけ具合を変えれば、光沢の縁の変化が急激な光沢はもちろん、縁の明度が緩やかに変化していく光沢なども再現できます。
点光源の光沢的な物はもちろん、面光源的な光沢もそういう画像を描いておけば、表現可能。
マッピング方法は、「円柱」と「球」には対応してないので、結構希望する場所に光沢が出るよう位置あわせするのは慣れていないと手間取るかもしれません。(shade14ではマッピング方法で「円柱」と「球」は選べるものの、実際は動作しないよう?)


この「遮蔽」という機能を追加するよう提案した内部スタッフには拍手を送りたい。
この調子で、今後のバージョンでも「あると嬉しい機能」をどんどん追加しておいてもらいたいですね。

posted by stxsi at 17:22| shade | このブログの読者になる | 更新情報をチェックする

shade14にバージョンアップしたら・・・

今shade14にバージョンアップすると15も無料で貰えるとの事で、いきなり13から15にアップするのではなく、一つ前のバグがわりと無くなって安定した14をゲットしておき、15がリリースされてそのバグが解消されるまでゆっくり待とうと思い、さっそく14にアップしてみました。

14に自作のスクリプトやウィジェットをインストールしてみたのですが、ポリゴン系のツールをまとめたmeshtoolplusウィジェットはそのままでは動きませんでしたね。

まずウィジェットの設定が書かれたxmlファイルを作ってなかった(でも何故か13まではそれで動いていた。運が良かったというか・・・)ので、xmlファイルを追加しました。

また、14ではスクリプトのパスが違うようで、これもちょっと応急処置的に修正。(もしかしたら、windows以外の環境では動かないかも)

shade14用のmeshtoolplusについてはこちらにアップしましたので、14ユーザーの方は良かったらご利用ください。

ウィジェットのインストール先ですが、13あたりからshadeをインストールしたフォルダではなくユーザードキュメントの方の「widgets」フォルダの方へスクリプトやウィジェットのインストールが推奨されています。

ただ、meshtoolplusの場合はshadeをインストールしたフォルダのパスを取得してからそれを元に各スクリプトのパスを設定するようになっているため、ユーザードキュメントの方ではなくshadeをインストールしたフォルダの中にある「widgets」フォルダ内へmeshtoolplusウィジェットフォルダをコピーしてお使いください。

posted by stxsi at 12:50| shadeスクリプト | このブログの読者になる | 更新情報をチェックする

2014年12月23日

今バージョンアップすると14と15の両方が手に入るらしい

shadeは新バージョン発売直前に「一つ前のバージョンを購入すると,新バージョンへ無償でアップできます」みたいなキャンペーンを毎回やっていたわけだが、今までは「新規ユーザー」のみが対象だった。
すでにshadeを持ってる人は対象外だったわけだが、今回のshade15の場合、旧バージョンからshade14に今バージョンアップした人も15が無償で貰えるようだ。

最近の3DCGソフトはどれもリリース直後はバグをいくつも抱えていて、安定して使えるようになるのに結構待たされたりする。
バグをすでに潰しているであろう一つ前のバージョンも手に入るというなら,このキャンペーン期間中に14にバージョンアップしておいた方が14と15の両方が手に入っておいしい。

15にバージョンアップするつもりだった人は今のうちに14にアップしておくべき。

自分は何年か前に、「新しいバージョンを出してもしばらくはバグで安定して使えないから、一つ前のバージョンも貰えるようにすべき」と書いた事があった。
今までは新規ユーザーしか一つ前のバージョンが貰えなかったわけだが、今回はバージョンアップユーザーにも優しい仕様にしてくれたようだ。

キャンペーンが終わると15しか入手できなくなるので注意。
posted by stxsi at 22:14| shade | このブログの読者になる | 更新情報をチェックする

2014年11月27日

危惧していた通り、ビットコイン騒動の煽りを受けてshadeの開発会社がやばい事に

shadeユーザーにはすでにメールが来ていると思いますが、shade15の発売が未定になってしまいました。
私も先行予約をしていたんですがね。

イーフロンティアはすでにshadeシリーズの取り扱いを終了との事。
shadeシリーズの新しい引き受け先が出たらいいですが、場合によってはshadeはこのまま終わってしまうかもしれません。

っていうか、イーフロンティアはshadeの取り扱いを終了しても、販売したshadeの旧シリーズについてはきちんとサポートしてくれないと。
shadeは途中のバージョンからインストール時になんか認証処理を内部で行うようになったようで、この認証処理までもイーフロが打ち切ると、新しいPCを買った時やOSをクリーンインストールした時に、購入済みのshadeを再インストールして使う事ができなくなってしまうのですが。
業務で使っている方も結構いるので、認証サーバーをイーフロ側で勝手に打ち切ったら集団で訴訟を起こされる事にもなりかねません。
オンラインアクティベーションは海賊版対策で組み込んだ機能なんでしょうが、正規ユーザーが被害を受ける事になったら洒落になりません。

それにしてもshadeは今後どうなってしまうんでしょうかね。
shadeの開発会社を買収したのは、ビットコイン騒動を引き起こしたmt.GOXのあのアホフランス人マルク・カルプレスだったわけですが、ビットコインで出した多額の損失を補填するため、債権者から彼が所有していた子会社各社へも資産回収が起こっており、その中のshade3D(shadeの開発会社)へも資金を返すよう通達がきたようです。

請求された金額をイーフロンティアが肩代わりしたら良かったのですが、「そこまでの価値はない」と思われて、契約終了したようで。

「shadeの各種権利」も債権回収の一巻で取られてしまうと、今の会社(shade3D)とは別の会社がshadeの権利を得て、完成済み(?)のshade15だけ売って終わり・・・・みたいな事にも。
それどころか、「買収する価値もない」と思われたら、shadeは15を出す事なく終わってしまう事にも……。

新しい引き受け先が出るのを祈るばかりです。
shadeの権利だけでなく、開発スタッフも一緒に引き受けて、shadeシリーズをなんとか存続してもらいたい。


3DCGソフトは個々のソフトで「使い勝手」が大きく異なり、「別のソフトに乗り換えればいいのでは?」という単純な話ではなかったりします。
shadeは私自身モデリング機能を強化するスクリプトを4,5年かけて100近く作ってきたのですが、この中には「他の3DCGソフトではまだ搭載してないユニークな機能」ってのが結構あったりします。
そういうスクリプトのおかげでかなりサクサクとモデリングできていて、今現在はshadeをメインモデラーとしてかなり使っているわけですが(これで毎年金もそこそこ稼いでいる)、他のソフトに乗り換えるとなると、shadeで搭載していたユニークな機能をまた一からプログラミングしなおしてスクリプトかプラグインでその乗り換え先ソフトに実装しないといけないという事になります。
その作業量を考えただけで眩暈がしてしまいます。

多くの3DCGソフトで搭載されているような「共通するモデリング機能」については、多少使い方が違ってもまだ機能として実装されているので問題ないのですが、「その3DCGソフトでしか使えなかった機能」が新しい方の3DCGソフトではなかったりするので、簡単に「ソフトを乗り換えればいいのでは?」なんて話ではないのですよね。

shadeはアニメーションが致命的にダメなので、アニメーション用途ではすでに別ソフトを使っていますが、モデリング用途としては、今のshadeは結構使い勝手の良いモデラーになっていると思うのです。

posted by stxsi at 13:25| shade | このブログの読者になる | 更新情報をチェックする

2014年11月06日

shadeのトゥーンレンダリング開始が遅い時は

shadeでトゥーンレンダリングをしている時、なかなかレンダリングが始まらない場合がある。

「形状同士が重なっている」と、レンダリング開始がやけに遅かったり、ひどい時はいつになっても計算が始まらない事があるので、形状の重なりを解消すると良い。

パスリプリケーターなどで「個数」を多めにした場合、形状同士が重なって、トゥーンレンダリングが全然始まらなかった事があったが、Y値をずらすなどして形状の重なりを解消したら、すぐに計算がされるようになった。

posted by stxsi at 14:22| shade | このブログの読者になる | 更新情報をチェックする

2014年10月14日

<重要>shade15でポリゴン系の加工スクリプトを使用する場合の注意点

shade15から搭載されるオープンサブディビジョンサーフェイスというのは、ピクサーが作って、後にフリー化したサブディビジョンサーフェイスアルゴリズムで、頂点や辺にウェイトを設定して特定の稜線をシャープにできたりします。

opensub01.jpg

というサブディビジョンサーフェイスをONにした形状で、

opensub02.jpg
一部の辺(赤い辺)のウェイトを強くすれば、このようなシャープな形にする事が可能。

shadeに今まで搭載されていたサブディビジョンサーフェイス(「角の丸めのカトマルクラークやドゥサビン」)だと辺や頂点のウェイト設定ができず、特定の稜線をシャープにするにはその稜線近くにナイフツールやベベルなどで辺を追加する必要がありました。
でも、shade15からは頂点や辺のウェイト値を変更するだけで、余計な辺を追加する事なく特定の稜線を鋭角化できる事に。


で、この新しいサブディビジョンサーフェイス機能と、私がshadeのポリゴン編集機能強化のために作ってきた数々のポリゴンメッシュ系加工スクリプトは相性が悪く、まだshade15自体は発売されていないものの、「おそらく不具合が出るであろう」というスクリプトが結構あると思います。

『不具合』というのは、「加工自体はできるものの、加工後に新たに生成された頂点や辺や、その周辺の頂点や辺に適切なウェイト値が設定されないため、形状が意図した形にはならず、一部のウェイト設定をやり直すはめになる」という感じです。

「加工自体は問題ないけど、ウェイト設定だけはやり直してね」というわけです。


バージョン14まではスクリプトで辺や頂点のサブディビジョンウェイト値を操作したり参照できるメソッドやプロパティは当然ありませんでした。
で、15で仮にスクリプトから値を操作できるようになったとしても、新たに生成された頂点や辺に適切なウェイト値を設定するというのはプログラム的にかなり難しい事もあって、事実上この不具合についてはずっと修正できないままだと思います。

新しいサブディビジョンサーフェイスでもウェイトを設定せずに形状を作ってる場合は問題ないと思いますが、もしウェイトを設定した形状に、

・頂点や辺、面の数が変わってしまう加工系スクリプト

を実行した場合は、面倒だと思いますが、一部の辺や頂点のウェイト設定をやり直して、形状が意図した形になるようにしてください。


単体のスクリプトはもちろん、ポリゴン系スクリプトの一部をすぐに実行できるmeshtoolplusウィジェットでも当然この問題は起きます。

なお、
・頂点や辺、面を選択するだけのスクリプト

や、

・頂点や辺、面を移動するだけのスクリプト

では、新たに頂点や辺、面を生成するわけではないので、おそらく問題ないでしょう。

頂点や辺、面の数がスクリプト実行後に増えたり減ったりするというスクリプトだけで、この問題は発生すると思います。


posted by stxsi at 23:40| shadeスクリプト | このブログの読者になる | 更新情報をチェックする