TextureをSkyboxとして適用する方法

個人的には記念すべき初投稿の記事になります!Unityを中心に色々かけていけたらなと考えています!

とまぁ、このページに訪れる方はそんな雑談とかは求めていなくて、タイトルに書いてあることを早く説明しろよと思っているかもしれないのでサクサクッと進めていきます。

TextureをSkyboxとして適用するには

デフォルトのスカイボックスでは味気ない、飽きてきたという人向けです。手順としてはとても簡単にできますが、その分デメリットもあるのでそれは後述します。

では、手順になります。まずはテクスチャをスカイボックスとして適用できる形式に変換します。

  • 使用したいテクスチャ画像を用意します。画像サイズは 2048 x 2048 くらいが理想です。それ以下だと確か結構引き延ばされるかと思います。自分はこちら(別サイト)からお借りしました。
  • テクスチャのインポート設定から、下記の画像のようにTexture Shapeの項目をCubeに、Mappingの項目をLatitude~~に変更して適用します。

次に、変換したテクスチャ(この時点で実際にはキューブマップ)をスカイボックスに適用していきます。

  • 新たにマテリアルを作成して、使用するShaderを「Skybox/Cubemap」に変更します。
  • Cubemapの項目に先ほど作成(変換)したテクスチャをアタッチします。
  • Window/Lighting/SettingsからSceneタブのSkybox Material の項目に先ほど作成したマテリアルをアタッチします。

以上で、テクスチャをスカイボックスとして適用する手順は終了です。とても簡単ですね。GUIしか使ってないです。Unityすごい。(語彙力不足…)

それで、以下が自分の方で試してみたシーンの、正面・右向き(25度)・下向き(25度)・背面の画像になります。見てもらうとある程度分かると思いますが、まず奥行があまり感じられないというのがデメリットがあります(精神と時の部屋みたいなノリなら、むしろ好都合だと思いますが)。加えて、多少なりとも歪みが出ていたり、背面のつなぎ目が結構はっきり分かる(画像的には見づらいです、すみません)などもデメリットにはなるのかなと思います。

もちろん画像次第では諸々改善を図れたりしますが、そこはUnityの守備範囲ではないかな~と思います。まぁ同じ感じのことをやりたくて、スカイボックスを使わない方法もあるので、それは別記事で書ければと。

余談。

ここまで勢いで書いてたんですが、英語とカタカナがなかなかの具合で混在していることに気付いたけど、みんなどうしているんだろう。全部英語!も何となく違う気がするし、まぁブログなんで細かいことは気にしない方針で進めていけばいいのかな、きっと。