星空を作る (1)目標
はじめに
僕は星空が好きです。
きっかけは、自転車旅行で北海道に行くことになったのである程度星座が分かるようになったら楽しいだろうと思い、プラネタリウムに行ったことです。それからというものの、自分の中で星に対する興味がふつふつと湧き上がっていました。
そののち、時間に余裕があったので1年間プラネタリウムを見放題になる定期観覧券を購入し、しばしば投影を見に行くことがありました。そういった経緯がありまして、ある程度は星座に関する知識はありますし、実際の星空を見てもどういった星座なのかを多少は当てることができるようになりました。
しかし、自転車旅行をしていても満天の星空を見ることはなかなかありませんでした。なんだかんだで毎晩空を見上げるわけではないですし、見上げたとしても、天気が悪くて見られないことも多かったですから。そんな訳で、僕は写真や絵で見るような、目を奪われるような美しい天の川が広がるような夜空を切望しているのです。
そんな中あるとき、vrchatなら満天の星空を見ることができるのではないかと考えだしました。実際に、星を見ることができるワールドは存在しました。天野ステラさんのワールドです。知っている方も多いでしょうが、こちらのワールドです。
https://vrchat.com/home/launch?worldId=wrld_8e58eb9c-4aa2-44db-84e2-057ed92ace92
こちらのワールドは確かにvrchatで星座を学ぶという点に関しては満点だと思います。しかし、僕は天の川が広がっている美しい夜空を観たかったため、こちらのワールドの星空では満足できず、自分で作ってみるのはどうかと思い至りました。
また、vrchatのワールドで空を主役としたものは少なく、こだわられた空を見ることはそうそうありません。なので、空に全力を掛けたワールドというものを見てみたいという思いもあります。今回は夜空についてですが、いずれは雲の種類なんかにもこだわったような空も作ってみたいですね。
実際にやってみた
以前、下記のようなツイートを見かけたことがあったので、これを使えば星空が作れるのでは?と思い、実際に出力してワールドのskyboxに使用してみました。
【Mitaka170新機能】VR映像の作成や配信などで用いられる「正距円筒図法」での出力が可能になりました.ぜひ,こちらの機能を使ってVR映像を作ってみてください👓.#Mitaka ダウンロード: https://t.co/RKbuLs4YPX pic.twitter.com/fvmjzLCVbo
— 国立天文台4次元デジタル宇宙プロジェクト (@4d2u) 2021年6月4日
やってみた感想としては、星空ではなくただの画像を見ているように感じてしまいました。画像の解像度が十分でなかったのかもしれないんですが、カメラ越しではそこそこいい感じの空に見えるのに、VRでは平たい画像を見ているような感じがしてしまう違和感が課題になりそうです。
目標
今回夜空を作るにあたっての目標みたいなのを上げていきたいと思います。
- 実際の星空を再現する
実際の星の位置を再現し、ちゃんと星座を判別できるようにする。
- 画的に美しい
単純に星空を再現するだけではなく、写真や絵でしばしば見るような美しい夜空にしたい。
- 日付と時間から、星空を再現できる
これはできればやってみたい!っていう類の目標です。何日の何時の星空はこう、って感じで日時から星空を再現できたらいいなあって思います。
目標は以上の3つ程ですね。頑張っていきたいです。
メモ
ある程度調べたうえで参考になりそうなサイト等をメモしておきます。
星空のデータを配布しているサイト。これをもとに何とかすれば、夜空ができるかも。
恒星データベースからUnity上に星空を構築する(リリースしました) - Qiita
上記のデータから星空を構成した記事です。
実際に星空の中を歩いて行けるワールドを作った人の記事、ワールド、シェーダーです。
【Unity】Skyboxシェーダーの書き方 - Qiita
シンプルなskyboxのシェーダーの書き方です。
そろそろShaderをやるパート1 Unite 2017の動画を見る(基礎知識~フラグメントシェーダーで色を変える)
シェーダーの解説をされています。違うパートでは、星空を作っているものもあり、参考になりそうです。
星空のデータをどのように処理してskyboxにするか、といったところが最初のネックになりそうです。