■ 一人綴り

イロイロやってますが、停滞中。(モノが出来たらアップする感じですから...。)更新はしますが数が減るかも。

■ ポリゴンと考察

2017年03月01日 | ■ ゲーム制作

 とりあえず、ゲームを動かす場合、自前の環境がスペッ

クの上限になるので、ゲームの挙動を考えると、ある程度

仕様が見えてくるわけですが、ゲームエンジンに限らず、

 

 【 仕様で読み込み時間が変わる 】

 

訳ですが、それと同時に

 

 【 処理可能なポリゴン数 】

 

も存在しています。

 

 その為、ゲームエンジンを動かす場合には、

 

 ■ 1フレームに何ポリゴンの処理が出来るか

 ■ LODを用いた状態でのシーン内の最大ポ

   リゴン数

 

の割り出しが必要になります。これで、ゲームにおいて

のポリゴンお割り振りがある程度見えてきます。

 対戦格闘ゲームだと、

 

 【 キャラ:シーン 】=【 1:30 】

 

位で考えて、1万ポリゴンで作る場合には、シーンは30

万ポリゴン(か50万ポリゴン以内)で抑えるイメージで

す。

 

 つまり、その状態だと、キャラは2人居ますから上記

の状態だとシーン内で32万ポリゴンと言う事になります。

 

 キャラが多い場合、LODは効きますが、バーチャファ

イター5のようなポリゴン数のがPS3で複数人歩く状態と

言うのは考えにくいですから、この場合、PS4やXbox

Oneだと1万ポリゴンのキャラが複数歩いていてもおか

しくはないのですが、やはり、ハードウェアの上限で、

ポリゴンお割り振りが決まってきます。つまり、上記

の条件だと、

 

  ■ シーン : 30万ポリゴン

  ■ キャラ : 2万ポリゴン

 

位ですから、4000ポリゴン位で抑えると、5キャラは

登場させる事が可能とも言えます。

 

 ただし、引きの絵だとLODを利用出来るので、どの

辺りまでだと挙動に影響が出ないのか?を探る作業は

発生します。

 

 こうした内容はアーキテクチャが固定されているコ

ンソールゲーム機とは異なるPCでは遅い物はゲーム機

はおろか、スマホにすら届いていないし、ゲーミング

PCの最大拡張は【 どこかのアトラクション内の施設

や研究機関のシミュレーター 】なので、【 既にゲー

ムの枠を超えて、どこか遠い世界へと向かっている何

か 】まで選べます(そう、スパコンで世界一を狙い

にかかる事も含めて演算ですし、速度を求めると倍精

度浮動小数点演算の速度は必須なので、それも含めて

実装する事を考えると青天井です。)からアーキテク

チャで内容が異なります。

 

 ただ、スパコンで何か巨大な施設が動いているよう

なレベルのSFじみたのはさすがに個人のゲーム開発と

は全く関係ない世界の話なので、この辺りは除外する

としても、単純にCore MAやPhenome IIシリーズの

時代と、Core InsideやAMD FXの世代では速度が違

うので作れるものが異なります。また、扱えるポリゴ

ン数もそうですが、シェーダーモデルが全く違うので

出来る事が異なります。

 

 その為、表示がまたく違うので、同じポリゴン数で

も出力結果がまるで違う訳ですが

 

【 処理の上限はハードウェアのスペックによる 】

 

ので、そこは把握しておく必要があります。

 

 また、BGE以外でも体感する事になりますが、

 

 【 ゲーム自体は動くものおん読み込み時間が

   長くなる現象 】

 

があります。これは、確認できている事象としては

 

 ■ AnimatedTextureが巨大すぎる事

  (720pの16x16の256で16bit PNGとか)

 

 ■ シーン全体のポリゴン数が多い

 

などです。動画って張ると重くなるのでは?と言う

懸念というのは圧縮コーディックでも数MBの巨大な

容量になる為ですが、前述の画像は100MBをゆうに

超える大容量なので、ポリゴン総数でいうと、100

万ポリゴン位のシーンと同じレベルの読み込み時間

を有します。その為テクスチャーで使う場合、寄り

で見た場合に何ポリゴン位になるだろうか?を考え

る事になります。

 

 シーン全体ですが、300万ポリゴン位のシーンで

も現在のゲーミングPCだと当たり前に処理が出来

るのですが、読み込み時間は数十秒かかります。

 

 この間、何かひょじしてバックグラウンドで読み込

めていればいいのですが、ゲームのプロジェクトその

ものが重たい場合にはそれはムリなようなので、この

あたりの兼ね合いを考える必要があります。

 

 その為、ポリゴン数をどの辺りにするのか?という

のはゲーム時の挙動もそうなのですが、それとは別に

 

【 読み込み時間の許容をどの辺りに設けて、その

  条件でのポリゴン数をどの辺りにするのか? 】

 

も含まれるわけです。そうなると、ポリゴン数を多め

にすると、その分読み込みが長くなるので、その待ち

時間の調整が必要になるのですが、その調整をどう行

うかも考えてポリゴン数の上限を考える事になります。

 


リダクションは必須条件


 

 そうなると、無駄なポリゴンは極力削除したほうが

いいと言う結論に行き着くので、

 

【 CGで行う両面ポリゴンはどうしようか? 】

 

と言う内容も含めて扱いを考える必要性が出てきます。

 

 それとは別に、

 

 【 指定の範囲内でのモデル制作 】

 

になるので、極力ポリゴン数を抑えて作る工夫は必要

になります。

 

 制作としては二通り存在して、海外ゲームのように

 

 【 どうせムービーでハイポリ使うんだから、ゲー

   ムのほうはリダクションしたものを使ってハイ

   ポリはそのまま使う 】

 

と言う近年のゲーム機のソレと、

 

 【 レトゲーのようにリソースがなさすぎる暗黒

   時代に発生したローポリテクニックの系譜の

   現代版のそれを使う 】

 

方法があります。

 

 と言っても、前者については、メモリーをフルで搭載した

ようなハイスペックマシンでのお話になるので、メーカー

のそれと同等のメッシュは無理ですが、メッシュの多いモデ

ルをリダクションして使うと言う手法があります。

 

 この場合、Sculptを使う方法も出てくるので、Z-Brushや

BlenderのSculptやMetasequoiaの彫刻などで作る方法と、

シェープの分割巣を増やして作っていく方法があります。

 

 ただし、マインドクラフトやプレステやサターンレベルの

ローポリだとリダクションであれにすると破たんするので、

素直に、立方体から形状生成をするか、面を貼っていくほう

がほうがいいように思います。

 

 とりあえず、ポリゴン数が恐ろしく少なくなる状態だと、

基本的に面をはるかシェープを変形させて作る手法になる

ので、【 ハイポリ=>ミドルポリゴン 】と言うPS3や

Xbox 360の世代のゲームのつくり方とは少し異なるよう

な気がします。

 


個人的なローポリの考察


 

 まず、ローポリですが、極限までローポリにする場合、

考え方としては、【 Doga-Lシリーズ 】のような状態

で【 表情をテクスチャーの切り変えで行う 】という

アプローチまで下げてしまえば相当メッシュは減らせま

す。つまり、この場合だと、瞼の必要性がありません。

 

 ただし、【 何時の時代のCGなんだろうか? 】とい

う話になります。次に、

 

 【 表情はどの程度あるのか? 】

 

でメッシュの内容が変わります。例えば、キャラが無表

情で動くようなものだと

 

 ■ 口 : テクスチャーで描く

 ■ 目 : くぼみにテクスチャー

 

で対応できます。この時に、目のメッシュの前方を閉じる

世にシェープキーを入れるとかすれば、目は閉じれる(B

GEの場合、ドライバーで頭のボーンに連動させると動くっ

ぽい。もしくはフェイシャルリグ適応)のですが、この有

無で内容は変わってきます。つまり、そうした足しようだ

と、一体化成形のフィギュアのような目のモールドがある

モデルで、ソコにデカールを貼ったり、塗るようにテクス

チャーを利用する事になります。

 

 つまり、瞼のメッシュが違和感なく閉じてくれれば、問

題がなく、その形状にまつ毛のオブジェクトが連動してく

れれば問題がないと言う訳です。

 

 つまり、この状態で考えると、

 

 【 目パチはあるが、視点の変化はないモデル 】

 

になります。この対策として、テクスチャーの位置を動か

すと言うアプローチもありますが、モデルの使い方で変わ

ってくるような気がします。

 

 フェイシャルを入れる場合、ローポリだと

 

 ■ 目パチ

 ■ 口

 ■ 眉毛

 

辺りがモーションで動かせるほうが表情はつけやすいのです

が、この場合に、

 

 ■ 眼球を内包する形状と眼球

 ■ 口腔内と歯や舌

 

などをどうするのか?も出てきます。つまり、簡素な作りの

ものなのか、それとも、歯と歯茎と舌まで存在するつくりな

のかで内容が変わります。

 

 アニメのシェーディングだと、テイストにもよりますが、

ローポリのそれだと、48本の歯が存在している状態とは考

えにくいので、形状でいうと歯の形状を個別に制作して歯

茎に配置すると言う作業は発生しません。そうなると、こ

の場合は、もう少し簡素な形状になりますし、舌も同様で

す。

 

 また、見え方で変わるのですが、古いシェーダーモデル

のようにノーマルマップが使えない環境下だと濃淡だけで

形状の状態を表現しないとダメ(だったのですが、初代プ

レステやセガサターンのテクスチャーが微妙だったのは、

あれは256色減色でインデックスカラーに近い状態で処

理していたからとも言えます。)なものだと色の使い方

でどうにかするしかないのですが、ある程度の凹凸だと、

ノーマルマップで適応できるので、馬のひづめのような

形状のオブジェクトを生成して、シームを付けて展開し

歯の状態をマッピングで再現すると言う方法もあります。

 

 ただ、白いのが見えたらしいと言う条件だと形状の生

成が少し変わるのですが、フェイシャルをする場合だと、

 

 【 単にアとオとイが出来たらいい何か 】

 

 

 【 表情が複数ある何か 】

 

で周囲のメッシュ構造が変わるので、作り方が変わってき

ます。

 

 目については、テクスチャーの入れ替えで振る舞いを変

える事が可能ですが、眼球運動の有無で作りが変わります。

 

 あまり動かない場合の制作方法として

 

 【 裏面のメッシュ数が無駄なのでそれは

   削除する 】

 

と言う方法もあるのですが、半球のメッシュのテクスチャ

ーを当てると言う方法もありますが、用途で使い分ける感

じかなと。

 

 眉毛、まつ毛は独立したメッシュにRGBAなテクスチャ

ーを適応するわけですが、まつ毛はペアレントで動くので

いいとして眉毛はメッシュ連動で動く(ので、その場所の

メッシュに対応したフェイシャルリグとかで動かすと調整

しやすい)のですが、これについては表示腕いろいろ動き

ます。その為、【 どういう動きをさせるのか? 】で

変わってくるものになります。

 

 ポリゴン数を抑える場合、それが登場するか否かで使い

方が割るのですが、板ポリゴンを分割させて、形状を作り、

RGBAなメッシュで適応する方法もあります。

 

 とりあえず、表情がない物の場合、

 

 ■ 顔のモデルは一体化成形

 ■ 大半はテクスチャー

 

で処理したほうがポリゴン数は削減できます。

 

 ポリゴンの使う場合、四角形のそれを使いますが、筒状

のモノの最小構成はハニカムなので、六つの頂点のそれで

形状を作る事になります。たとえば、

 

 ■ 目

 ■ 口

 

ですが、これは長方形や正方形ではなくハニカムを横方向

に長くしてから加工したほうが作りやすいですし腕や足や

指も六角形のほうが融通が利きます。

 

 その為、意外とメッシュが嵩んでくるわけですが、ロー

ポリの場合だと、作る物と作らない物があります。

 

 例えば、

 

【 特定のひな型を作っておいて、それを組み合わせ

  てキャラを量産するモブモブ大作戦的な何か 】

 

という、モブキャラ制作でバリエーション増やしたい場合

の選択肢でモンタージュ的に物を組み合わせて何かする

ような状態だと、これは、グローブやガントレットを付け

てるキャラでも素手の選択肢があるので、これは衣装を

着れる最小限の構成にする必要があります。

 

 しかし、それがない場合は、

 

 ■ モデル+衣装

 

では、ポリゴン数が物凄いことになるのと、貫通するので

 

 ■ 一体化成形をする

 

と言うれとげー的な手法も出てきます。この場合、内部が中

空なモデルと同じになりますが、シームを付けてテクスチャ

ーを塗ると作業がしやすくなります。

 

 また、この手の状態も

 

 【 手の演技や握りの違いなのど表現の有無 】

 

で内容が変わるのですが、そうしたモノがない場合、関節を

間引く事が出来ますし、ボーンの構造も

 

 ■ 手の甲

 ■ 指4本

 ■ 親指

 

まで間引けます。この条件でいうと、ガントレットとかと同じ

になるわけですが、指の微細な表現が発生する場合だと、Rig

fyで用意されたようなリグを入れて作業するような流れになり

ます。

 

 そうなると、鎧+ガントレットと言う衣装だと、指のパー

ツの必要はないのでガントレットのみのモデリングでいいと

言う事になりますし、足にしてmお素足の表現がない場合

だと、靴の生成でいいと言う事になります。

 

 つまり、当たり前に作る場合には、手足も含めて全て作っ

て衣装を着けてそれに連動するように調整すると言う流れに

なるのですが、衣装を着せると貫通するリスクが出てくるの

で、貫通する部分を削除して一体化してリグを配置し、オー

トウェイト調整からのIKの追加などの作業になるのですが、

極度のローポリの場合だと、その形状を少ないメッシュで

作ったほうがいいように思います。

 

 つまり、衣装や層部や服装の入れ替えがある場合だと一

体化成形をしてしまうと指などがないモデルになるので、

厳しい状態になりますから、用途でモデリングの仕方が

変わってきます。

 


極度のローポリの場合


 

 テクスチャー機能でいくつか制約を受ける事になるの

ですが、その一つに、

 

【 ディスプレイメントマップが使えない 】

 

と言うな要があります。これは、ハイポリメッシュを、

Sculptのように変形させる機能なんですが、これが全く

使えません。

 

 あと、【 減らすほどにエッジが立って来る 】ので

初代のバーチャファイターみたいになってきます。

 

 基本的に【 エッジを丸める 】と言うのも可能です

が、これも極度な期待はしないほうがいいので、気持ち

丸くなっている程度の状態になります。

 

 また、ボーンについても関節部分は分割が必要になる

ので、塊のような構造物ではボーンが適正に動かないの

で、そうした部分での分割数は自然に増える傾向があり

ます。

 

 

 

 

 

 

 

 


最新の画像もっと見る