2頂点間の最短経路を探索する (A*アルゴリズム)
今回はポリゴン上の2頂点間における最短経路探索について。 標準関数でありそうな機能ですが、意外にも見つからなかったので自前で実装してみました。 ゲームキャラのルーティングや、カーナビのルート探査などでよく使われているらし… 続きを読む »
今回はポリゴン上の2頂点間における最短経路探索について。 標準関数でありそうな機能ですが、意外にも見つからなかったので自前で実装してみました。 ゲームキャラのルーティングや、カーナビのルート探査などでよく使われているらし… 続きを読む »
MaxScriptから、Max本体のバージョンを知る方法として、maxVersion関数があります。 maxVersion関数を使用すると、Maxのバージョン番号、max API番号、SDK改訂番号を含む配列を取得する事… 続きを読む »
今回は構造体のINIファイルへの保存について。 MaxScriptでよく使われるデータの保存形式として、INIファイルがあります。 INIファイルはWindowsで古くから使われてきたファイル形式なのですが、とてもシンプ… 続きを読む »
mergeMAXFileは現在のシーンにMaxファイルを合成する関数ですが、残念ながら合成したノードを戻り値として返してくれません。 代わりに#selectオプションを指定する事で合成したノードを選択状態に出来るのですが… 続きを読む »
今回は選択エッジをエッジループ毎にグループ化する方法を紹介します。 例えば、下図左のように選択した場合、右のようにエッジループをグループ化します。 エッジからボーンチェインを作成したい場合など、エッジが連続したループにな… 続きを読む »
MaxScriptエディタは標準搭載エディタの割に高機能で、色々と便利機能が搭載されているのは知られた話ですが、その中に省略表現という機能があります。 元々MaxScriptエディタはSciTEというオープンソースエディ… 続きを読む »
今回はマテリアルのサブ要素(マテリアル、テクスチャ)の取得について。 マテリアルは要素の下に別の要素が入れ子式に接続される、いわゆるツリー構造を持っています。こういった構造では、再起処理を使って子要素を巡回する事で、簡単… 続きを読む »
通常、特定の軸に沿った平面上への投影は、単にその軸の座標を均一にするだけで実現出来ます。 例えば、全てのX座標を0.0に揃えれば、それはX平面上に投影された事になります。 しかし、これが単純な軸平面上ではない場合、もしく… 続きを読む »
今回はMaxScriptで利用できる文字列整形の方法をまとめてみました。 加算演算を使ったシンプルな結合 i = 25 s = “Test1” “Values: (” + s + “, ” + (i as string)… 続きを読む »