概要このツールはオブジェクトのセグメントを結合して、メッシュを曲げることができます。これはレールや壁、堤防など、曲がった形状のオブジェクトを作るのに有用です。フォーマットでなければなりません。B3DかCSVのオブジェクトのファイルフォーマットの基本的な作成の知識が必要なことを意味します。詳しくはそれぞれのドキュメントをご覧ください。GUIとコマンドライン双方のインターフェースを備えます。コマンドライン引数を省略して起動すると、GUIが起動します。GUIは本プログラムの独習と慣れるのに有用です。長期的に見た場合、コマンドラインに変更されるほうが良いとでしょう。目的別のコマンドライン引数のリストは下記のとおりです。Benderは常にUTF-8として解釈することに注意してください。非Unicodeのエンコーディングはサポートされません。コマンドライン引数の一覧を表示します。入力ファイルのパスを指定します。ファイルを指定します。出力先ファイルのパスを指定します。ファイルフォーマットは入力ファイルのフォーマットと同一です。各セグメントの長さを、メートル単位で指定します。ブロックの長さをメートルで指定します。レールオブジェクトなどに用いる場合など、ゼロが指定された場合は回転しません。半径をメートルで指定します。負の値は左側、正の値は右側です。ゼロの場合はカーブを生成しません。レールのゲージ幅をミリメートルで指定します。カントが適用される場合は必ず指定しなければなりません。オブジェクトの始まりの時点のカントをミリメートルで指定します。オブジェクトの終点のカントをミリメートルで指定します。出力先のファイルを上書きせずに追記します。Z軸方向に向かってセグメントのコピーを生成します。各々のコピーはGUIもしくはコマンドラインで指定されたセグメントの長さに従ってオフセットされます。はじめのセグメントは何も修正されず残され、二番目のセグメントはセグメント長に従ってZ軸方向にシフトされます。3*セグメント長、という具合です。極座標変換を行います。簡単に言うと、Z軸は円の中心座標(Radius,0,0)のある方に向かって曲がります。言い換えると、右側は正の値、左側は負の値です。最後のオブジェクトは回転します。それ故レールオブジェクトの生成に有用です。コマンドにおいて、コメントとして特別なマークアップを受け入れます。テクスチャを張る座標を各々のセグメントにおいてシフトさせる機能に用いられます。数値分、テクスチャをX軸の方向にシフトさせます。数値分、テクスチャをY軸の方向にシフトさせます。commandと同一の行におけるコメント内のどこにでも記述できます。詳細はチュートリアルを参照してください。用いてカーブレールを生成するか簡単なチュートリアルを示します。基本的なことはさておきまして、こちらのチュートリアルではテクスチャの座標を適切に取り扱いどのように働くのか、また、コマンドラインのインターフェースで効率的に動作させる方法も示します。私達はこれから25mのブロック長、軌間1435mm、半径600mで、右方向に曲がるカーブレールオブジェクトを作ろうと思います。最初に必要なものは5mの長さの短いレールのセグメントです。バラストCreateMeshBuilderAddVertex,-1,-0.2,0AddVertex,-1,-0.2,5AddVertex,1,-0.2,5AddVertex,1,-0.2,0AddFace,0,1,2,3SetColor,150,125,100今必要なものとして、上記のコードはテクスチャを用いず、簡単なものを作りました。必要に応じてパラメータを入力していきます。私達は今5mの長さのセグメントを持ち、ブロック長は25mですから、それ故にブロックを埋めるためには5つのセグメントのコピーが必要となります。600レール幅は設定する必要はありません。今回私達はカントを生成しないからです。して選び、Startボタンを押下します。メッセージを出力します。変更し、Startボタンをもう一度押すだけで、同様の設定を持った左カーブを追加で生成できます。今回は単色ではなく、適切なテクスチャが設定されるものとしましょう。特別なz軸に対応していることです。今、画像データがオブジェクトのz軸方向に向かってコピーされているとすると、各セグメントでは1つのコピーしか得られないことになります。5m毎に1つのコピーです。テクスチャを25メートルのブロック全体で1つのテクスチャを用いるようにデザインしたとしましょう。(=0.2)しか表示されていません。其々のセグメントは結果としてテクスチャの最初の5分の一の部分だけで全て表示します。この結果はもちろん望ましいものではありません。私達が望むのは各セグメントにおいて0.2づつY軸に沿ってシフトするものです。コマンドのコメント欄において特別なマークアップを受け入れます。追加してみてください。上記のサンプルのうちSetTextureCoordinatesの4行について、各セグメントでyの値に都度0.2追加しなければならないことを認識しています。それ故に最初のセグメントは未修正で、2番めのセグメントは0.2から0.4に変更するよう指示に従い、三番目のセグメントは0.4から0.6に、4番めのセグメントは0.6から0.8に、そして最後のセグメントは0.8から1.0に変更されます。これにより、テクスチャは毎回5セグメントごとに繰り返されます。セグメント長は5メートルで、毎回25m毎に繰り返されますが、それはすなわちブロック長と同じです。コマンドラインインターフェースを用いるそれでは、架線付きのカーブレールオブジェクトを作ってみましょう。架線は曲がってはいません。それ故に25m長の長いワイヤーです。私達はこれをひとつのステップで行うことはできません。架線をsegment.csvに含めてしまうと、コピーされた上に曲がってしまうからです。その代わりに、双方のオブジェクトを分割して生成し、後に結合します。コマンドラインインターフェースを通じてカーブレールを生成しようとした場合、端末から以下のコードを入力します。/r=600では次に、ファイルに組み込むために架線を作ってみましょう。wire.csv▶AddVertex,-0.03,5,0AddVertex,-0.03,5,25AddVertex,0.03,5,25AddVertex,0.03,5,0AddFace,3,2,1,0SetColor,0,0,0上記のコードは単線の25m長のワイヤーです。私達は追加のコピーを生成する必要がなく、ちょうど一つのセグメントで済みます。ターゲットファイルの生成結果の末尾に架線を追加するためのもので上書きしません。バッチファイルに記述し、結合してみましょう。Windows上で呼び出すことができます。/aもしあなたがセグメントや架線のオブジェクトに変更を加えようとしたいなら、好きなときにバッチファイルを実行するだけで生成結果を更新することができます。/aあなたがなにかのアイデアを得られるよう期待しています。