====== スパイダーグレージングの作成 ====== \\ \\ {{youtube>EWlLDLfdIgo?large}} \\ \\ ==== イントロダクション ==== RailCloneの2D配列ジェネレータは、多くのタイプの建物のファサードを作成するのに最適です。このチュートリアルでは、スパイダーグラスとも呼ばれるポイント固定のガラス壁面を作成する方法を見ていきます。このチュートリアルで作成されたスタイルは、素早く試行錯誤ができるように、またシーンでの再利用を簡単に調整できるように設計されています。さらに、さまざまなカーテンウォールとファサードスタイルに同じテクニックを適用できます。 \\ \\ このチュートリアルを完了すると、次のことが可能になります * ガラスの高さと幅を調整できる再利用可能なカーテンウォールスタイルを作成する * スプラインを使用してシングルおよびダブルカーブの2次元配列を作成する * 複数のジェネレータを組み合わせる * 指定した寸法に拡大縮小可能なセグメントを作成する * 列の最初と最後のセグメントを対象とする条件付きのルールを作成する * Mirrorオペレータを使用する \\ \\ ==== ジオメトリの準備 ==== \\ {{ :itoo:rc:tute:tutorial-creating-spider-glazing_geo.png |}} \\ このスタイルでは、3種類のスパイダフィッティング、ガラスオブジェクト、およびシリコンシール用の3つのセグメントが使用されます。実際のサイズはスタイルの一部として調整されるので、実際のサイズは任意ですが、新しいサイズを生成するためにスケール値を計算するためには元の寸法を知る必要があります。たとえば、ガラスの高さを2500mmにすることがわかっている場合は、正しいスケール値を見つけるために次の計算を行います。 \\ ==== スケール係数の計算 ==== n = 100(**新しいサイズ**/**現在のサイズ**)\\ n = 100(**2500mm** / **1000mm**)\\ n = 100(**2.5**)\\ n = **250%**\\ \\ ==== ファイルのダウンロード ==== このチュートリアルの演習ファイルには、V-RayおよびMental Rayと互換性のある次の.maxシーンが含まれています。 * **spider_start.max** : チュートリアルを行う際のスタートファイル * **spider_end.max** : チュートリアルを完了した結果 \\ [[https://www.itoosoft.com/download.php/rc_spider_scene_tutorial.zip|チュートリアルファイルのダウンロード]] \\ ==== スタイルを作成する ==== \\ ==== ジェネレータ1:ガラスとジョイントを作成する ==== \\ {{ :itoo:rc:tute:tutorial-creating-spider-glazing_glass_style_small.png |}} \\ \\ \\ - 新しい**Array 2S(A2S)**ジェネレータを作成し、Glass Arrayという名前を付けます。**Properties > Rules > Default Segment > Mode** を**Scale**に設定します。\\ \\ - 2つの新しい**Spline**ベースオブジェクトを作成し、シーンから**「spline_x」**と**「spline_y」**を選択します。これらをA2Sジェネレータの対応する入力に接続します。\\ \\ - ジェネレータを右クリックし、**Export parameters** から **X Evenly Distance**を選択し、[OK]をクリックします。\\ {{ :itoo:rc:tute:spider-glazing_01.png |}}\\ \\ - 新しい**Numeric**パラメータノードを作成し、タイプを**Scene Units**に設定し、「**Evenly Distance**」という名前をつけて、**X Evenly Distance**入力に接続します。\\ {{ :itoo:rc:tute:spider-glazing_02.png |}}\\ \\ - ジェネレータをコピー&ペーストして、名前を**「Spider array」**と**「Support Array」**に変更します。この時点では2つのジェネレータを右クリックして[off]にしておく必要があります。\\ {{ :itoo:rc:tute:spider-glazing_05.png |}}\\ チュートリアルの後半で、これらの2つのジェネレータを使用します。\\ \\ - 4つの新しい**Segment**オブジェクトを作成し、シーンから「Glass」, 「Glass Joints Vertical」,「Glass Joints Horizontal」, 「Glass Joint Intersection」を選択します。\\ \\ - ガラスの繰り返しの垂直パターンを作成するには、新しい**Sequence**オペレータを作成し、**Increment at** を**Y**に設定します。Sequenceオペレータを**Default**入力に接続します。\\ {{ :itoo:rc:tute:tutorial-creating-spider-glazing_increment_y.png |}}\\ \\ - 「Glass」と「Glass Joints Horizontal」セグメント をSequenceオペレータに接続します。\\ \\ - 2つ目の**Sequence**オペレータを作成して、「Glass Joints Vertical」、「Glass Joints intersection」を接続します。Sequenceノードをジェネレータの**X Evenly**入力に接続します。\\ \\ - 次に、ガラスの高さを調整するためのエクスプレッションを作成します。「Glass」と「Glass Joints Vertical」セグメントのScale値をエクスプレッションでコントロールできるようにするには、セグメントを右クリックし、**Export Parameters > Fixed Transform >Fixed Scale > Y**を選択して[OK]をクリックします。\\ {{ :itoo:rc:tute:spider-glazing_03.png |}}\\ \\ - 新しく**Constant**ノードを作成し、タイプを**Scene Units**に設定し、値を**100cm**に設定します。これは、グレージングジオメトリの元のサイズです。\\ \\ - 新しく**Numerical**ノードを作成し、「Glass Height」という名前を付け、タイプを**Scene Units**に設定します。3DS Maxの修正パネルに表示されているParametersロールアウトから、値を**125cm**に変更します。\\ {{ :itoo:rc:tute:spider-glazing_04.png |}}\\ \\ - 新しくArithmeticオペレータを作成し、「Glass Height」のnumericalノード、Constantノードの順に接続します。\\ {{ :itoo:rc:tute:tutorial-creating-spider-glazing_constant1.png |}} \\ \\ - Arithmeticオペレータのプロパティからoperation typeを**Expression**に変更します。**Edit expression**をクリックし、''return (Input1/Input2)*100;''と入力します。これにより、セグメントの高さのサイズを変更するために必要なスケール係数が計算されます。\\ {{ :itoo:rc:tute:tutorial-creating-spider-glazing_expressions.png |}}\\ \\ - ステップ10でエクスポーズした **Y Fixed Scale**入力にarithmeticノードを接続します。これで、Parameetersロールアウトからガラスの高さを制御できるようになりました。\\ \\ \\ \\ ==== ジェネレータ2:スパイダーフィッティングを作成する ==== \\ {{ :itoo:rc:tute:tutorial-creating-spider-glazing_spider_style_small.png |}} \\ \\ - 3つの新しい**Segment**ノードを作成し、**Y Alignment**のを**Pivot**に設定し、 **Slice**をオフにして、シーンから「Spider1」、「Spinder 2」、「Spider 4」を選択します。\\ {{ :itoo:rc:tute:tutorial-creating-spider-glazing_sliceoff.png |}}\\ \\ - 配列の外側から始めましょう。この列には、「Spider 1」セグメントがアレイの上部と下部に必要で、「Spider 2」セグメントがその間にあります。これを実現するには、新しく**conditional**オペレータを作成し、**Segment> Y Counter**をオンにして **Equal**プロパティを**1**に設定します。「**Spider 1**」を**true**入力に接続すると、垂直配列の最初のセグメントとして表示されます。\\ {{ :itoo:rc:tute:tutorial-creating-spider-glazing_conditional1.png |}}\\ \\ - 「Spider 2」に新たに**Transform**ノードを接続し、**Transform > Fixed > Z > Rotation**に**-90**を入力しジオメトリを回転させます。transformノードをconditionalオペレータの**False**入力に接続します。\\ {{ :itoo:rc:tute:tutorial-creating-spider-glazing_transform1.png |}}\\ \\ - 次に、「Spider 1 」セグメントを列の上部に追加する必要があります。これを行うには、アレイのY軸に配置されるガラスセグメントの数を計算し、上記の ConditionalのY Counter テクニックを使用できるようにする必要があります。これを計算するには、新しい**Arithmetic**オペレータを作成し、「Glass Height」numerical パラメータをその入力の1つに配線します。オペレータのTypeを**Expression**に変更し、''return (YSplineLength/Input1)+1;''と入力します。この式は、スプライン長をガラスの高さで除算し、小数点以下を切り上げた結果を整数として返します。これを使用して、Y軸上の最後のセグメントをターゲットにすることができます。\\ {{ :itoo:rc:tute:tutorial-creating-spider-glazing_expressions2.png |}}\\ \\ - 新しく**conditional**オペレータを作成し、**Segment Y Counter**を有効にしてエクスポートします。ここに前の手順で作成した**arithmetic**ノードに接続します。\\ \\ - **Axis**を**Y**に設定した**Mirror**オペレータを経由して、「Spider 1」セグメントを新しい**Conditional**ノードの**True**入力に接続します。\\ \\ - ステップ:2で作成した**Conditional**ノードを新しい方のConditionalノードの**False**入力に接続します。\\ \\ - 新しい**conditional**オペレータの出力を**Spider Array**の**Start**入力に配線します。\\ \\ - **End**には、**axis**を**X**に設定した新しい**Mirror**オペレータを介して同じconditionalノードを接続します。\\ \\ {{ :itoo:rc:tute:tutorial-creating-spider-glazing_left_right.png |}}\\ \\ - 次に、X Evenlyについても同様の処理を行う必要があります。作成した2つのConditionalオペレータをコピーして貼り付けます。これにより、2つの新たに接続されたConditionalノードが得られます。複製後に接続されているSegmentはすべて外します。\\ \\ - 新しいconditionalノードを**X Evenly**入力に接続します。\\ \\ - 「Spider 2」をconditionalノードの**True**入力に接続し、**Axis**を**Y**に設定した**Mirror**オペレータを経由して垂直方向に反転させたものをX Evenlyに接続したConditionalノードの**True**入力に接続します。\\ \\ - 「Spider 4」を空いている**False**入力に接続します。\\ {{ :itoo:rc:tute:tutorial-creating-spider-glazing_xevenly.png |}}\\ \\ - 各Spiderのセグメントに対して、**Top Padding**プロパティーをエクスポートします。簡単なarithmeticオペレータを追加して、行の間にスペースを空けます。\\ \\ - 新しい**Arithmetic**オペレータを作成し、「Glass Height」numericパラメータを接続します。Modeを**[Subtract]**に設定します。次に、新しく**Constant**ノードを作成し、先程作成したArithmaticノードに接続します。**Type**を**Scene Units**に設定し、**22.665cm**の値を入力します。この値はspider fixingのサイズを補正します。このarithmeticオペレータを「Spider 2」と「Spider 4」の**Top Padding**入力に接続します。\\ \\ - ステップ15と同様に、新しく**Subtract**モードの**Arithmetic**と**Constant**ノードを作成し「Glass Height」とこのConstantノードを入力します。ただし、今回は定数値として**15.63cm**の値を使用します。このArithmeticノードを「Spider 1」のTop Paddingに接続します。 \\ {{ :itoo:rc:tute:spider-glazing_06.png |}}\\ \\ - 最後に、ボルトがガラスに正しく収まるように、ジェネレータの**Y Offset**の値を**10.109cm**に調整します。\\ \\ \\ \\ \\ ==== ジェネレータ3:サポート部分を作成する ==== \\ {{ :itoo:rc:tute:tutorial-creating-spider-glazing_support_style_large.png |}} \\ - 新しく**Segment**ノードを作成し、シーンから「Supports」を選択します。\\ \\ - セグメントの **X-Alignment** を **Pivot**に設定します。\\ \\ - 「Supports」セグメントを**X Evenly**,**Start**,**End**入力に接続したらジェネレータを再度ONにします。 \\ \\ {{ :itoo:rc:tute:spider-glazing_07.png |}} \\ このチュートリアルを完了すると、2つのスプラインの形状と長さによって定義された点で固定されたグレージングを作成するプロシージャルオブジェクトが作成されます。このスタイルは設定には少し時間がかかりますが、作成した調整は非常に簡単で、繰り返しワークフローを簡素化するのに最適です。他のファサード要素と同様に、他のカーテンウォールスタイルにも同じ原理を簡単に適用できます。\\ \\