PORTAL2 テストチェンバー製作1

前回までの記録"PORTAL2用SDKの導入"で、テストチェンバー製作に必要なSDKの導入を行った。

今回からは、記録群のタイトルを"PORTAL2 テストチェンバー製作"と改め、テストチェンバー製作の夢の実現を順次記録してゆく。


ではまず、前回までの記録を参考に、
  1. PORTAL2 Authoring Toolsをインストール
  2. "Hammer World Editor"を起動
  3. File > New をクリックし、ワールドを新規作成

今回の記録の目的は、テストチェンバーの基となる部屋をブラシで作成することブラシとは"Hammer World Editor"で言うところのにあたる要素である。

ただなにもない上に、部屋の壁紙も真っ白では寂し過ぎるので、壁紙(テクスチャ)の張り替え方も記録する。
(以下のスクリーン画像はクリックで拡大可)


1、"ブロックツール"でブラシを仮作成する。
マップツールから"ブロックツール"を選択して、2D画面上でドラッグをするとドラッグした範囲にブラシの枠が描ける。この段階では設計図のようなもので、正式にブラシが作成されたわけではないことに注意。

2、テクスチャツールから好きなテクスチャを選んでおく。
テクスチャツールの"Browse..."ボタンをクリックする。

すると、上のようなテクスチャブラウザが現れるので、この中から好きなテクスチャを選択する。ダブルクリックで選択する。"Filter"にキーワードを入力することで、テクスチャ検索することもできる。選択に関する注意事項は、テクスチャ名の先頭が次のようなテクスチャは、開発向けの特殊なテクスチャなので避けた方が無難
vgui/ debug/ editor/ effects/ dev/ など...

3、ブラシの大きさを調整して作成する。
テクスチャを選択できたら、ブラシの大きさを整える。この後にブラシをちゃんと作成するのだが、作成してしまうと大きさを変更するのが面倒になるので、ここで整えておくとよい。
グリッドツール
ウィンドウ左上にあるグリッドツールのマイナスをクリックするとグリッド幅が小さくなり、ブラシの大きさを細かく調整することができるようになる。プラスをクリックするとグリッド幅が大きくなるので、大きさを均一に揃える作業に向くはず。ブラシの大きさ、テクスチャが決まったら、2D画面上のブラシ枠内で右クリックをする(上画像参照)。"Create Object"メニューが表示されるので、それをクリックしてきちんとしたブラシを作成する。

テクスチャが適用されたブラシが3D画面上に作成されたことを確認!

4、ブラシの中身を空洞にする。
作成したブラシは一見部屋のように見えるのだが、実はゲーム中ではこのブラシの中は何もない空間(何も存在しない空間)として扱われてしまうので、残念ながら今のままではただの箱(ブラシ)に過ぎないのだ。そこで、このブラシの中身をくり抜くことで空間を作り、それを室内とする。前項で作成したブラシを選択し、Tools > Make Hollow をクリック。これは、選択したブラシの中に指定した厚さの壁を残して空洞を作成するツールである。

"Make Hollow"ツール。数値(画像では16)は壁の厚み。ここで指定する数値はいくつでも大丈夫なはずだが、あまり薄すぎると何かバグが発生したときにプレイヤーが壁をすり抜けてしまう危険性がある、かもしれないので、薄すぎ(小さい値)は止めたほうが良いと思う。デフォルトでは32になっているが、32だと壁が厚すぎて、カメラアングルによっては、部屋の中が見づらくなってしまうので、デフォルト値の半分の16に設定した。壁の厚さが決まったら"OK"をクリックして空洞を作成しよう。

空洞が作成できたことを確認するために、3D画面を使ってブラシの中に突っ込んでみたのが上の画像。"Make Hollow"ツールを使うと、このような空洞ができる。"Hammer World Editor"で作成するブラシは、辺が凹んでいるとエラーが起きる(面が"谷おり"の状態になっているとエラーが発生する)。1つのブラシで上画像のような部屋を作成しようとすると、部屋の内側は凹んでいるので、そのままではエラーが発生してしまう。そこで"Hammer"は、1つのブラシの中身を"Make Hollow"でくり抜いた場合、ブラシの辺が凹むことを回避するために自動でそのブラシを6個のブラシに分割する機能が備わっている。天井(1個)+ (四方なので4個)+ (1個)= 6面(6個)のブラシに分割する。イメージとしては、平たい板6枚を箱形に囲って形作ってるイメージになる。

ここで、たとえば床だけを選択したいとする。実際に選択してみると分かるのだが、床だけを選択しようと思い床をクリックしてみるのだが、部屋全体を選択したことになってしまう。部屋全体は6個のブラシで構成されているのに、そのブラシ1つ1つを個別に選択できないのだ。その原因は、グループ機能が適用されているからだ。複数の物体を1つの物体として扱うための機能が、このグループ機能。この部屋の場合、"Make Hollow"でくり抜く前は1つのブラシだったので、くり抜かれて6個のブラシに勝手に分割はされても、それら全部を元のように1つのブラシとして扱えるよう、それら6個のブラシを"Hammer"が自動でグループとして適用するのだ。床という1つのブラシだけを選択したいのならば、このグループ適用解除する必要がある。グループ解除の手順は次のとおり(上図も参照)

  1. グループ解除したいグループを選択する(この場合部屋全体)
  2. "Ungroup"ボタンをクリックしてグループ解除する。
  3. グループ解除されたことを、どこか1面だけをクリックして確認。

複数の物体をグループとして扱いたい場合、その複数の物体をCtrl + クリックですべて選択し、"Group"ボタンをクリックすれば、グループとして扱える。複数の物体を、まとめて移動させたい場合や、同じ間隔のまま同じ個数だけコピペしたい場合などにとても便利。"Group"ボタンについての注意は、"Group"ボタンは押した回数だけ適用されるので、グループ解除する時も同じ回数だけ"Ungroup"ボタンを押さないと解除しきれない。

5、床のテクスチャだけを替える。
前項のグループ解除によって、上画像のように床だけを選択することができるようになったはず。ここでは、床のテクスチャだけを張り替えるが、どのブラシであっても、たとえ複数であっても(グループであっても)テクスチャ張り替えの操作は同じ。以下が手順(画像も参照)
  1. 張り替えたい部分(ブラシや面)をクリックして選択する。
  2. "Texture Application"ツールをクリックして起動する。
  3. "Browse..."ボタンをクリックして好きなテクスチャを選ぶ。
  4. "Apply"ボタンをクリックしてテクスチャを適用。
これで床のテクスチャが張り替わる。"Texture Application"ツールを表示したまま選択すると、ブラシの面のみを選択することができる。

"Texture Application"ツールについて

  • "Texture Scale"の数値(XとY)を変更すると、テクスチャ画像の大きさを変更することができる。
  • "Texture Shift"の数値(XとY)を変更すると、テクスチャ画像の張りつけ位置をずらすことができる。
  • "Current Texture"には、今まで選択してきたテクスチャの履歴が残されている。
  • "Justify"の"Fit"を選択すると、ブラシの大きさに合わせてテクスチャの大きさを自動調整してくれる。

今回の記録の目的は、部屋をブラシで作成し、その部屋の壁紙を自在に張り替えられるようになることであったので、これで目的は満たせた。




次回はこの部屋のなかに、プレイヤードアといったエンティティを配置したり制御したりする方法を記録したい。



画像キャプチャは"Snap Draw Free"
6378539334768457066 https://www.storange.jp/2011/09/portal2.html https://www.storange.jp/2011/09/portal2.html PORTAL2 テストチェンバー製作1 2011-09-04T21:07:00+09:00 https://www.storange.jp/2011/09/portal2.html Hideyuki Tabata 200 200 72 72