[ 前へ | 目次 | 次へ ]

立体の形状設定

ここでは、標準モデルやポリゴンの形状設定を扱います。 形状設定により、すでに生成したモデルやポリゴンの形状を変更する事ができます。 この設定は、アニメーションなど、立体を動的に変形させたい場合などに行います。


標準モデルの形状設定

標準モデルの形状を変更するには、setModelSize関数を使用します。

- 関数仕様 -

void setModelSize (
  int modelID,
  float l1, float l2, . . .
)

最初の引数modelIDでは、設定対象のモデルのIDを指定します。 続く引数l1, l2, . . . では、モデルの形状を特徴付ける長さを指定します。 引数l1, l2, . . . の個数は標準モデルの種類によって異なり、 その標準モデルを生成するnew〜Model関数のものと同様の個数・意味を持ちます。 例えば円筒モデル(CylinderModel)なら、 l1・l2で底面のX・Y方向半径を、l3で高さを指定します。

標準モデルのみ使用可能

setModelSize関数は、標準モデル専用の関数です。 ポリゴン集合から生成した独自モデルに対しては使用できません。

ポリゴンの形状(頂点座標)設定

ポリゴンの頂点座標を変更するには、setPolygonVertex関数を使用します。

最初の引数polygonIDでは、設定対象のポリゴンのIDを指定します。 続く引数x1, y1, . . . では、ポリゴンの頂点位置を指定します。 引数x1, y1, . . . の個数はポリゴンの種類によって異なり、 そのポリゴンを生成するnew〜Polygon関数の引数における、 座標値指定部分と同様の個数・意味を持ちます。

例えば点ポリゴン(PointModel)なら3つで、( x1, y1, z1 )で中心位置を指定し、 線ポリゴン(LinePoligon)なら6つで、( x1, y1, z1 )と( x2, y2, z2 )で 線の始点と終点位置を指定します。同様に三角形ポリゴンなら9つ、 四角形ポリゴンなら12個の座標値を指定します。

プログラム例

実際に球モデルを配置し、時間に伴って変形させてみましょう。 以下のように記述し、実行してみてください。

このプログラムを実行すると、黒い背景に白い球が描画され、 アニメーションで潰れたり膨らんだりを繰り返します。

実行結果、歪んだ球の図
実行結果
球モデルがZ方向へ伸び縮みする様子が見て取れる。


この階層の目次
[ 前へ | 目次 | 次へ ]
お知らせ

Vnanoの公式サイトがオープン、チュートリアルやAPI仕様書等も掲載
2019年08月07日 - オープンソースのアプリケーション組み込み用スクリプトエンジン「 Vnano 」の公式サイトを開設しました。チュートリアルや、スクリプトエンジンのAPI仕様書などが参照できます。その概要をお知らせします。

リニアングラフ3D/2Dが連番ファイルのアニメーションに標準で対応
2019年07月17日 - リニアングラフ3D/2Dでは、7月17日公開の最新版より、連番ファイルを連続的に読み込みながらアニメーション描画するプログラムを同梱し、メニューから標準で使用可能になりました。その概要をお知らせします。

Vnanoのスクリプトエンジンアーキテクチャ解説2: コンパイラ
2019年07月03日 - オープンソースで開発中のスクリプトエンジン「 Vnano 」のアーキテクチャを解説する連載の第2回です。今回は、スクリプトを中間コードへと変換する、コンパイラ部分の内部をクローズアップして解説します。

新着
[公式ガイドサンプル] ユーザーのGUI操作に対して処理を行う

「VCSSL GUI開発ガイド」内のサンプルコードです。ユーザーがGUIを操作した際に行う処理を実装します。
2019年07月28日
[公式ガイドサンプル] 各種GUIコンポーネントを画面上に配置する

「VCSSL GUI開発ガイド」内のサンプルコードです。色々な種類のGUI部品を画面上に配置します。
2019年07月28日
連番ファイルから3Dグラフをアニメーション描画するツール

フォルダ内の連番データファイルを読み込み、3Dグラフを高速で連続描画して、アニメーションさせるツールです。グラフを連番の画像ファイルに保存する事もできます。
2019年06月03日
連番ファイルから2Dグラフをアニメーション描画するツール

フォルダ内の連番データファイルを読み込み、2Dグラフを高速で連続描画して、アニメーションさせるツールです。グラフを連番の画像ファイルに保存する事もできます。
2019年05月24日
[公式ガイドサンプル] 立体モデルを生成して3D空間に配置する

「VCSSL 3DCG開発ガイド」内のサンプルコードです。立体モデルを生成し、3D空間に配置します。
2019年05月21日
開発元Twitterアカウント