前書き手順RenderTextureの作成カメラの設定キャラクターの配置UIでの表示UI上に表示したキャラクタの大きさや位置を変えるには?まとめ前書き最近ちょっと困ったこととして「UI画面にいままで作ったキャラクターを表示しようと思ったらできない!」ッということに遭遇しました。原因としてはなんてこともないのですが、UI画面に表示したい場合は「Image」で、ゲーム画面で表示したい場合は「SpriteRenderer」で表示する必要があり、キャラクターは全員SpriteRendererで作られていました。SpriteRendererからImageに変換するのは手間がかかるしAnimatorの設定などもいじらないと...と思ったのですが、今回紹介する方法を使えばSpriteRendererで作ったキャラクターでもUI画面上に表示することができます。SpriteRendererをUI画面上に表示したいと思っている方はぜひ参考にご確認ください。今回のやり方として以下の方法で行います。上記の方法を行うことで以下の動画のようにUI画面上にSpriteRendererで作成したキャラクターが表示できるようになります。(今回はSPUMで作成したキャラクターにしています。SPUMのキャラクターは全てSpriteRendererで構成されているため、UI画面上にもってきても通常は表示されません。)では、早速RenderTextureの説明からしていきたいと思います。RenderTextureの作成そもそもRenderTextureとは何か?といいますと、Unityで特定のカメラの出力をテクスチャとしてキャプチャできるオブジェクトです。RenderTextureを使用することで、カメラの描画結果をテクスチャとして保存しその描画結果をUIに使用することができます。今回の手順を踏むことでRenderTextureの使い方が分かりますのでとりあえず、そんな機能なんだなっという形で一旦は大丈夫です。RenderTextureを作っていきましょう。Texture」を選択します。その後、Characterを映すためのRenderTextureであることが分かるように作成されたRenderTextureに「CharacterRenderTexture」と名前を変えておきましょう。次は、CharacterRenderTextureを映すためのカメラを新しく作成します。以下の手順でキャラクターを映すためのカメラを作成してみてください。Hierarchyウィンドウで右クリックし、「Camera」を選択してCameraを生成します。作成されたカメラに「CharacterCamera」と名前を付けます。Inspectorウィンドウで、CharacterCameraのOutputTextureに「CharacterRenderTexture」を割り当てます。次はUI上に表示するキャラクターを配置しましょう。以下のように先ほど作成したCharacterCameraに入るようにキャラクターを配置すればOKです。キャラクターとカメラの位置を揃えるのも重要ですが必ずカメラのZ座標に注意して設定してください。キャラクターよりカメラが手前にあると映らないので必ずカメラが手前、キャラクターが奥になるように配置してください。続いて、先ほどCharacterCameraで映したキャラクターをUIで表示する方法になります。こちらの方法についてはCanvasの中に「RawImage」を生成し、RawImageのTextureに「CharacterRenderTexture」を割り当てればOKです。することでCharacterCameraで映している部分がUI画面上に表示されるようになります。UI上に表示したキャラクタの大きさや位置を変えるには?キャラクタの位置や大きさを変えたい場合はRawImageの大きさを変えたり、元となるキャラクタのSpriteRendererの大きさを変えることで変更させることができます。以下に簡単に大きさなどを変更した時の動画になります。参考にご確認ください。まとめ今回はUIにSpriteRendererのキャラクターを表示する方法(RenderTexture)を紹介しました。最初の方にRenderTextureについて説明しましたが、Unityで特定のカメラの出力をテクスチャとしてキャプチャできるオブジェクトです。RenderTextureを使用することで、カメラの描画結果をテクスチャとして保存しその描画結果をUIに使用することができます。上記のRenderTextureの使い方の通りにUI上に表示できたかなと思います。RenderTextureを使うことでキャラクタプレビューだったり、キャラクター選択画面を作ったりすることができます。慣れるまで大変ですが、一度作ってみると簡単ですので、RenderTextureを使いこなしてより魅力的なゲームを作ってみましょう。2023年現在、3作目を制作中です。道半ばですがちょっとしたゲーム開発状況について紹介していこうと思います。UI周りの修正を行っている所です。Steamの実績を実装する方法はいろいろなサイトに載っているのですが、今後も同様の作業をすると思うので自分なりにかみ砕いてSteamの実績を導入する方法を残しておこうと思います。前回はテキストスキップの方法を紹介しましたが、使い方としては「スキップボタンを押してテキストスキップする」という方法になります。ゲームをする上で毎回スキップボタンを押すのはちょっと面倒に感じるかなと思います。Unityでゲーム開発を行う際、オブジェクトを検索する方法としてGameObject.Find関数やGameObject.FindWithTag関数を使用することが多いかなと思います。Engineに組み込むための方法になります。画像をImportしたときに元の画像はにじんでいないのに、UnityにImportするとなぜか画像がにじんでしまう事象が多々あります。コメントをキャンセルメールアドレスが公開されることはありません。※サイト次回のコメントで使用するためブラウザーに自分の名前、メールアドレス、サイトを保存する。最近のコメント表示できるコメントはありません。免責事項等ホーム検索トップサイドバータイトルとURLをコピーしました。