PaperSloth’s diary

Unity(C#)、UE4(Blueprint/C++)についての記事を書いたり日常のことをつぶやきます。

第1回Unity感をどうにかする方法

 

Unityで開発してる人の多くはFree版を使用されていると思います。

 
こんな記事を書いてる私もPro版をお試しでしか使っていませんが@ 'ェ' @
 
 
そこで、Freeにありがちな

所謂Unity感

と言われるグラフィックのしょぼさを少しでも改善する方法をご紹介させていただきます('◇')ゞ
特別すごいこととかは特にしないです(というよりできない
 
実は

RenderSettings

で大体は変更することができるのです。
 

赤丸で囲ったところから開けます。

開くとオレンジで囲ったWindowが出ると思います。f:id:PaperSloth:20141019233548p:plain

 

見た目をマシなものにする技術を紹介する前にちょっとした小ネタ

 

Skyboxの設定方法

恐らく大半の方が設定方法をご存知だと思うのですが、Skybox Materialの設定方法は基本的な方法では2つあります。

一つがカメラObject内にAdd ComponentでRendering→SkyboxでカメラにSkyboxの設定ができます。

しかし、ゲーム実行時しか確認できません。

 

もう一つがこちらのRender Settings内のSkybox Materialに直接Materialを設定する方法です。

こちらに設定した場合はEditor上でも確認できるため、Editorが華やかになります(*'ω'*)

 

どちらも共通することがひとつあり、カメラのClear FlagsをSkyboxに設定しないと反映されないのでお忘れなく。

それと、気になった人もいるかもしれませんが、上記2つに異なるMaterialを割り当てるとどうなるの?ってところですね。

答えはCameraに設定したMaterialが描画されます。

 

 

では、本題に入りましょうかw

①Unity感の正体 

いきなり、この話から入るのもどうなのかってところはひとまず置いておきましょうw

Unity感の正体は影だと思っています。

先ずはこちらの画像をご覧ください。

 

これが通常の設定での描画になります。

よく見る普通のUnityですね。f:id:PaperSloth:20141019235804p:plain

 

 

 

それと、設定を1点だけ変更した物がこちらです。

f:id:PaperSloth:20141020000004p:plain影が薄くなっているのが一目で分かりますね。

たったこれだけ?って思ったでしょうか。

そうです。これだけです。

現実世界での影をよくよく見ていただければ分かりますが、

上の画像のような真っ黒な影なんて違和感しかありません。

 

設定方法はとっても簡単。

LightのShadow Typeの下にStrengthがあります。

defaultでは1.0になっているので、作品イメージに合わせて下げてあげましょう。

この画像は0.5にしています。

 

 

 

この影が濃すぎるという問題の解決方法はもう一つあります。

上記では全ての影をリアルタイムで計算するため、

Objectが多くなってくると重くなってしまいますね。

じゃあ、影をなくすのか・・・

そんなことをしたらそれこそグラフィックが残念ですね。

 

そんな主婦のお悩みを解決してくれるのが、このお方!!

Windowメニューに引きこもっていらっしゃる

Lightmapping先生です。

説明に入る前に先ずはこちらの画像をお見せします。

f:id:PaperSloth:20141020001401p:plain

カラフルボックス君がLightmapを適用したObjectです。

右の従来の影に比べてジャギ―もなくて美しいですね(*'▽')

 

 

Lightmapは設定するにあたって幾つか注意点があります。

①Staticじゃなきゃダメ!

地形(床)とLightmapを適用したいObjectは

Inspector→Object名の右のStaticというチェックボックスから

 LightMap Staticにチェックを入れる必要があります。

 

②Staticということは・・・?

動くObjectには適用できません。

何か方法はあったはずですがw

また、編集時に動かすとObjectに影はついてきません。

Lightmapとは影のテクスチャをペタペタ貼るものですので

 

③クォリティーも大事だけど、PCの命を大事に・・・

次に設定ですね。

WindowからLightmappingを開いてBakeを開きます。

その中にResolutionがあります。

解像度とか分解という意味ですね。

その意味の通り、値を大きくすれば綺麗に影テクスチャを生成してくれます。

ジャギ―も目立ちません。

しかし・・・

 

Unityさんもクオリティーの高いTextureを作るのには苦労するんです。

大きなマップにResolution:100で

Lightmapを焼こうとすれば、真っ先にPCが焼かれることでしょう。

 

簡単に確認を行う際にはResolutionを10~20くらい

リリースする時に一度だけ50くらい・・・?

作品に使用するMapやObject数に応じて変更してください。

 

 

実はこの影でも現実世界から考えればありえないんです。
影はもっと薄く、こんなにくっきりとしていません。

もっと調整する方法があるのですが、次回やるかもw

 

今回はこれで以上とさせていただきます。

また、このUnity感については書いていく予定です。