第25回 一定時間でカメラを回転させる widget
Shall We Customize?
今回はちょっと変わった Widget をご紹介します。先日イベントで Shade 3Dのモデルをずっとディスプレイに展示していたのですが、ただ展示しているのもアレなので、一定時間でぐるぐる回転するような単純な widget で回転表示させていました。
そのときあれこれアイデアが出たものを、今回まとめてみた widget となります。すごくニッチな widget のお話です。
- 今回の widget は 10/08日発行のメルマガにて配布しました。
- インストール先などは【インストール・使用法】をご覧ください。
- この記事は Shade 3D ver.15.1 を基準に書いています。
- 記事で紹介しているスクリプト(最新号分を除く)はマーケットプレイス「カスタマイズはいかがですか? 全部入り Script 」よりダウンロードできます。
- 記事で紹介している widget (最新号分を除く)はマーケットプレイス「カスタマイズはいかがですか? 全部入り Widget」よりダウンロードできます。
一定時間でスクリプトを実行するには
ちょっとだけプログラムのお話を。
この widget では javascript の timer を使って、一定時間でスクリプトを実行しています。
実行しているのは以下のスクリプトです。
- カメラをY軸で回転させる
xshade.scene().camera.rotate_eye() - ライティングモードを切り替える
xshade.scene().display.set_lighting_mode() - シェーディングモードを切り替える
xshade.scene().display.set_shading_mode()
それぞれ()の中に数値を入れるとモードが切り替わったりします。
今回の widget
スクリプトメニューから「ターンテーブル」を選択すると表示されます。
回転する間隔や、表示切り替えなどを設定できます。
カメラの回転
一番上の三角のアイコンをクリックすると、透視図のカメラが回転し始めます。
左のボックスに回転する角度を「度」で、間隔を「秒」で指定します。
実行すると四角のアイコンだけになります。このアイコンをクリックすると回転を停止します。
オプション:光源切り替え
光源切り替え左のチェックボックスがオンのとき、光源の切り替えを行います。
2つ以上選択するとオプションが有効になります。また、項目を2つ以上チェックすると自動的に上部のチェックボックスがオンになります。
右のボックスで間隔を指定します。
切り替えに選択できる光源は以下の3つです。
- デフォルトライト
- モデリングライト
- すべてのライト
オプション:シェーディング切り替え
シェーディング切り替え左のチェックボックスがオンのとき、シェーディングを切り替えます。
2つ以上選択するとオプションが有効になります。また、項目を2つ以上チェックすると自動的に上部のチェックボックスがオンになります。
右のボックスで間隔を指定します。
切り替えに選択できるシェーディングは以下の7つです。
- ワイヤフレーム
- ワイヤフレーム(隠面消去)
- シェーディング
- シェーディング+ワイヤフレーム
- テクスチャ
- テクスチャ+ワイヤフレーム
- プレビューレンダリング
微妙な時間ずらし
同じ秒数が指定してあるとスクリプトの実行がうまくいかないケースがあるため、内部的に同じ秒数だった場合0.01秒程度ずらして実行するようにしてあります。
次回もよろしくお願いします。
要望や質問、またユーザー同士の意見交換にShade3D公式ユーザーフォーラムをご用意しております。どうぞご利用くださいませ。