記事一覧

モジュール的なモデリング

ファイル 90-1.jpgファイル 90-2.jpg

こんな感じの作りは分解しやすいし分解して個別に出力することで、先のエディタ内で全体の形状を変更することも容易になる。

Building15

ファイル 89-1.jpgファイル 89-2.jpg

左がCinema4Dで1分くらいで完了したレンダリング(GIあり)。
右がBluemars上のリアルタイムレンダリング。やっぱり影の精密さに欠ける。

もっと階段や入り組んだ道が沢山あったりするCityにしたい。
それにはデザイン的な構成を考えるのがすごい難しい。考えながら作るとすごい時間かかったり、やり直しが多いら、確実な構成そのものを決めておかないといけないんだな。

Cryengine2

今回はCryEngine2のシェーダー機能を紹介。
ファイル 88-1.jpg
CryEngine2はインポートしたメッシュにインポート元のツールで割り当てたマテリアルが自動的に割り当てられる仕組み。マテリアルの設定の中身はUDKのノードやHLSL言語を使うのではなく、Diffuse等のテクスチャを当てはめたりチェックボックスで変更を行う分りやすい方式。細かいカスタマイズはできないが、複雑な構造だと思われるシェーダー機能と変更可能なパラメータ等のプリセット機能が用意されているので場合によっては非常に楽になる。

今回は人間の肌に使用するAR_humanskinの効果を紹介します。

ファイル 88-2.jpg
まずNormalmapだけを貼り付けた状態。

ファイル 88-3.jpg
DiffuseとSpecularを割り当てる。

ファイル 88-4.jpg
ここでShaderからAR_humanskinを選び、Subsurfaceの値を0.3くらいにする。すると光が肌を透過する(透過するのをシミュレート)して透明感のある状態になる。
ただ、デフォルトだと光の透過状態が一定すぎて暗くなるはずの部分も一定に明るく見えてしまうので、この画像では透過の度合いを制御するためのテクスチャも指定してある。

ファイル 88-5.jpg
そして完成!
skinはBMのアイテムの中でも使うテクスチャの数が多いので512kb以内にするのが非常にシビア。

ランプ

ファイル 87-1.jpg

作成した照明の一つ。中の炎もアニメーションする。

インドア変更2

ファイル 85-1.jpgファイル 85-2.jpgファイル 85-3.jpg

綺麗で軽い照明を試行錯誤している

インドア変更

ファイル 84-1.jpg

PortTownの1F,2Fを開放的にした。
もう少し照明器具や柱みたいなのを追加していく。

XNormalまとめ

<ハイポリ設定>
ファイル 83-1.jpg
一覧部分を右クリックもしくはファイルをドロップしてファイルを追加できる。追加されたハイポリの行を右クリックすると"Base texture to bake"より、焼き付ける対象のテクスチャも追加することができる。
右へスクロールさせると"Base texture is a tangent-space normal map"のオプションもある。


<ローポリ設定>
ファイル 83-2.jpg
Maximum frontalとMaximum rearから焼き込みのトレース距離のようなものを指定できる。これは必要に応じて変更することがある。
Highpoly normals override tangent spaceはUVと法線の向きが異なる場合のオプションで、このオプションが有効だとハイポリの法線の向きがローポリ側の向きによって変更されてた結果になってしまう。個人的にこのチェックは外したほうがいいと思っている。



ファイル 83-3.jpg
各ローポリにはBlockers fileを追加できる。モデリング上、閉じた狭い空間がある場合、焼き込みのトレーシングが向かい側の表面を認識してしまう場合がある。これはMaximum frontalとMaximum rearを小さくすることで回避できる場合もあるが、回避できない場合は画像のような板状のモデルを別に用意して壁を作る必要がある。

ちなみにハイポリをローポリ側はどちらも複数呼び出すことができ、全てを合わせて焼き込みできるし、各行のVisibleのチェックで無効にすることができる。これは設定を変えながらファイルを変更するのに便利。



ファイル 83-4.jpg
BakingOptionから出力ファイルの指定ができる。指定したファイル名に自動的に_normalsや_occlusionが追加されて自動保存される。
Edge paddingはUVの境界から境界部分の色を引き伸ばすピクセル数を指定できる。
個人的にNormal mapのオプションにあるSwizzle CoordinatesのY+をY-にするほうがいいみたい。CryEngine2あたりでは、この設定が正しい結果のノーマルマップになるらしい。Cinema4Dや他のソフトのマテリアル設定でもYを反転して使っている。CE2では全てのマテリアルではY-が基準なんだろうか。
RendererにOptix/CUDAを使うと特にAmbientOcculusionが高速になる。ただしデータサイズに対してVRAMの空きが必要。


以上!

ボリュームライティング2

ファイル 82-1.jpg
PortTownの地下室にパーティクルを足した。色々工夫して描写も重くならないようにしている。レンズフレアもパーティクルで表現。
うっすらとした距離によるフォグ(霧)も欲しいけど、BMはTimeOfDay設定から発生するフォグしか使えないみたいだ。これは野外全体に影響するフォグで、地下室のVisAreaの設定えお使えば部分的に濃さを調整できるが、TimeOfDayのフォグは時間ごとに色等も変えているため、地下室のフォグの色も設定どおり変わってしまう。
なぜかFogVolumeとかの機能は無効にされているらしい。

霜のエフェクトは試しでやってみた。

malebody2

ファイル 81-1.jpg

スペキュラとSSSのテクスチャを追加。形状も修正。
もう少し調整してアップロードします。

November 2010 UDK Beta released

UDKは毎月バージョンアップしている。すごい勢いだ。今回のアップデートで把握できる部分だけ書いた。
3Dゲームを作る人はUDK使わないと損ですよ。

・起動時に新しいスタートアップメニューが表示され、チュートリアルやフォーラム等にアクセスできる。
・移動と回転の軸をローカル/グローバルに切り替えて操作できる。両方の操作にすばやくアクセスできるウィジェットも新しくなった。
・BOX選択をパースペクティブ視点でも可能に。
・メモリリークチェッカを更新。
・MatineeでSkeltal meshのActorに目や頭のトラッキング(追跡?)ができるようになった。
・マウスカーソルを対象の選択に当てると、それがハイライトされるオプションの追加。
・AnimSetでアニメーションの名前検索機能。
・テクスチャビューワは透過部分の背景をチェックボード調に変更。
・水平面のグリッド表示をPropertyWindowsからオン/オフできる。
・FBXでエクスポートしたものをインポートする場合、三角ポリゴンに変換するひつようは無くなった。FBXのバージョン2011.3.1に対応。
・コリジョンの無いStatcMeshはサムネイルで警告を表示する。

そして新しいUE3のトレイラー。
これは前回のアップデートが活かされてます。
http://www.youtube.com/watch?v=MGf0oGGGQqQ

malebody@BM

ファイル 79-1.jpg

ZBの段階からやり直している。体全体のnormalとdiffuseは大体出来上がってきた。後はSSSのテクスチャをじっくり作成していく。
手と足の形状も変更したい。
でも、元のテンプレート形状の要所で体のバランスが納得できないんだよな。強引に編集するのも危険だし。あと512kbの制限がきついです。

ボリュームライティング

ファイル 78-1.jpgファイル 78-2.jpg

VeriHigh設定なら太陽から光の筋が自動で生成されるが、任意で設置するライトからはそれらの機能が無い(Crysisならあった気がするけど)。
というわけでスポットライト+パーティクルで表現してみたら、なかなか良い感じ。

PortTown更新しました

Cityの作成は結構しんどいです。特に小さな設置物とか。
Block単位で区切って、その部分にハリボテじゃない建物を製作をしてくれる方いませんか?
実験も兼ねてるんですが、とりあえず30M四方のBlockを用意します。
CityがOutpostプランということもありShop数は割り当てられませんが、家具を置くResidenceなら割り当てられます。無料ですが、自前でデータを作成できる方に限ります。
興味がある方は*****@unreal.rgr.jpまでお願いします。
*****は私のBM内のカンパニーコード小文字です。

プロシージャルビルディング「Unreal Facade Tool」

いつのまにかUDKにこんな機能があった。
プロシージャルにテクスチャを生成することはよくあったけど、建物でここまでできるとは凄いなー。
もちろん細かいパーツも自分で用意する必要があるんだけどね。
http://udn.epicgames.com/Three/ProceduralBuildingsJP.html

Dominance War Ⅴ

Dominance Warというものが開催する。これは2D/3Dでデザインされたキャラクター製作のコンペティション(デザインや腕を競い合うコンテストのようなもの)で、今回は5回目。
まずPre-DWが行われ、これはルールも多少違い、本番は来年らしい。キャラクターに種族設定等も指定する決まりは同じ。
http://www.dominancewar.com/2010/preliminary/en_rules.php

その前回Ⅳもかなりハイレベルな作品が集まっており、例えば3D部門は三角「ポリゴンで10k」「各テクスチャが2408x2048まで」等という最近のゲームを意識した条件があるにも関わらず、とてもそうは見えない見栄えになっている。特に上位の人はどのくらい時間かけたんだろう・・・
http://www.gameartisans.org/contests/dw/4/finals/main1.html

Cityの時間同期

ファイル 74-1.jpg

初めてLuaでスクリプトを作った。
グリニッジ標準時間を取得して出力するスクリプトで、そこからFlowGraprhでCityの時間を自動で変更する。
ただ現実と同じ時間速度だとエリアによって見られる時間帯が限られてくるから、現実の一時間でCityの24時間が経過する速度にした。
GMTの毎時0分0秒がCity内の0時0分0秒という基準で動く。これで違うタイミングで入った人も同じCity時間の描写になる。
あと街灯も夜明けと日没で自動でオン/オフになる。
とにかくLuaを把握するのが大変だった。

テクスチャ

ファイル 73-1.jpgファイル 73-2.jpg

カラー・ノーマル・スペキュラーの各テクスチャは1024x1024

最近やったこと

ファイル 72-1.jpg
C4Dでモデリング、ZBで加工、XNormalでノーマルマップ作成。
ZBからのディテールとローポリからのAOも焼き付ける作業まで完了。
あと色々作った。
あとMetro2033というゲームをsteamで買った。でもまだやってない。

草のテクスチャ

ファイル 71-1.jpg
地面に配置するローポリの草のテクスチャを作った。大量に配置して草原とか作りたい。

ファイル 71-2.jpg
Aliens vs predatorを少し遊んだ。まずはプレデター編。最近のゲームはクオリティが半端無いな。
Direct2Driveで購入するとSteamに登録する流れだった。