20211125のUnityに関する記事は5件です。

【Unity】WebGLでゲームを公開するときにUIが変になったときの対処法

概要 Unityで作成したゲームをブラウザ上に公開するとき、WebGLは非常に簡単で便利な方法になります。しかし、通常の設定のまま公開してしまうと、UIや画面サイズが崩れてしまい、せっかくのゲームが台無しになってしまいます。 本記事は、Unityで作成したゲームをWebGLで公開するときに重要な設定をまとめたものになります。 ①Canvasの設定 Canvasのインスペクターを開き、CanvasScaler を次のように設定する。 UI Scale Mode を Scale With Screen Sizeに変更 Reference Resolution の値をゲームシーンの画面サイズの値に変更 (画面サイズが大きすぎるとブラウザ上で見づらくなるので注意) Screen Match Mode を Expand に変更 ②フォントの設定 Unityのデフォルトのフォント (Arial) の場合、ブラウザ上では表記が乱れてしまうことがあります。これを避けるために、配布フォントを使用する必要があります。おすすめのサイトを載せましたので、参考にしていただければと思います。 https://rwiiug.hatenablog.com/entry/font_matome ※フォントの利用規約には十分注意してください! ③ビルドの設定 WebGLでビルドする時に、Player Settings を開き、Player > Resolution and Presentation > Resolution の値をゲームシーンの画面サイズの値に変更する。 (おまけ)UnityRoomでゲームを公開する場合 WebGLでビルドする時に、Player Settings を開き、Player > Publishing Settings > Compression Format を GZip に変更する。 まとめ 以上の設定をすることで、ブラウザ上でもUIが崩れずに正常にプレイすることができるかと思います。上記の設定をしてもUIが崩れることがあれば、コメントで教えていただければと思います。
  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

UnityでWwiseの音を鳴らす 2(Unity組み込み編)

UnityでWwiseの音を鳴らす 1の続きです。 UnityとWwiseをIntegrateする Wwise LauncherのUnityタブからIntegrate Wwise into...からIntegrateを進めていきます。 Integrate時は、UnityとWwiseは終了しておいてください。 Wwise Project Pathでは前回作成したWwise Projectを選択します。 Integrate出来たらUnityプロジェクトとWwiseプロジェクトを起動します。 Unityから音を鳴らす いよいよUnityからWwiseを制御していきます。 Integrate出来ていればUnityのWindowメニューからWwise Pickerが開けるようになっていると思います。 SoundBankのロード 適当にオブジェクトを作るなりして、Inspectorから「Ak Bank」を追加します。 Nameのところから作成したSoundBankを選択します。 このAk BankでSoundBankをロードさせないと一切音が鳴りません。 (今回は関係ありませんが、実際の実装ではどのSoundBank読み込ませる読み込ませないとかで軽量化や効率化を図ります) スクリプトからEventを再生させる(ポストする) EventをポストするScriptを書きます。 using System.Collections; using System.Collections.Generic; using UnityEngine; public class WwisePost : MonoBehaviour { public AK.Wwise.Event Event;//宣言 void Start() { Event.Post(gameObject);//Eventの再生 } } 単純にスクリプトから音を鳴らすだけなら2行書くだけです(超簡単) 作ったスクリプトと「Ak Game Obj」スクリプトを音を鳴らしたいオブジェクトに付けます。 ※AkGameObjはWwise内の位置計算に使われるものです あとはEventの欄に鳴らしたいEventを登録してあげればOK Gameを再生すると音が鳴るはずです。 今回は分かりやすいようにStart関数に入れましたが、Eventのポストをお好きな位置に入れれば任意のタイミングで再生できます。 おわりに 無事UnityとWwiseで音が鳴らせるようになったはずです。 ここで紹介したのは本当に初歩的なことなので、複雑な制御については今後追加で記事を書いていきます。 Wwiseならではのインタラクティブな実装方法までいけたらなーと。 参考文献 Wwise 101 Wwise 301
  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

UnityでWwiseの音を鳴らす 1(Wwise編)

はじめに UnityとWwiseの連携は、Audiokinetic公式からもチュートリアルが用意してありますが、関係ないチュートリアルも一緒に読まないと理解出来なかったり、異なるチュートリアルを行ったり来たりしないといけないので、 「手早くUnityとWwiseのを連携をやってみたい!」「触りながら勉強していきたい!」という方のため書き連ねておきます。 ※Wwiseは前回の大型アプデでUIが変わったり、機能が増えてたりするので今から初めて触り始める人に役立てばいいなと。あと自分用のメモ 今回はUnity側からスクリプトでWwiseの再生指示を出すところまでを目標にやります。 環境情報 MacOS Catalina(10.15.7) Unity 2020.3.19f1 Wwise 2021.1.4 ※MacOSを想定していますが、Windousでもほぼ同じだと思います。 Wwise側の準備 Wwise LauncherからWwiseを起動して「New...」からプロジェクトを作ります。この記事では「Wwise_Qiita」としておきます。(一部黒塗りがありますがご了承ください) Name,Locationはお好みで。 Platformは開発したい環境を選んでください、今回はMacオンリー。 Assets(プラグイン類)は今回は使う予定がないので全部チェック外しました。 必要になったらその時入れればいいしね。 Audioデータを読み込む LayoutsタブのDesignerレイアウトで作業していきます。 Default Work Unitを選択してSound SFXを作ります。名前は何でもいいですが、ここでは「TestSound」としておきます。 作ったSound SFXを右クリックし、import audio fileから開けるタブで、鳴らしたい音声ファイルを読み込みます。 先程まで赤い文字だったSound SFXが青色になればOK Eventを作る Eventタブに移動して、Default Work Unitを選択してEventを追加します。 名前は何でも良いですが、Unity側からこのEvent名を呼び出すことになるので管理しやすい名前をおすすめします。 作成したEventに先程作成したAudioデータをドラッグして登録します。 登録の方法やEventタイプは他にもあるので、詳細を知りたい方は公式のチュートリアルを確認すると深まるかと思います(https://www.audiokinetic.com/ja/courses/wwise101/?source=wwise101&id=applying_an_action#read ) 今回は一番基本的なEventで進めていきます。 SoundBankを作ってビルドする SoundBankタブに移動して、Default Work Unitを選択してEventを追加します。 こちらも名前は何でもいいですが、ここでは「MainSoundBank」としておきます。 ここからはLayoutsタブのSoundBankレイアウトで作業していきます。 先ほど作成したSoundBankにEventをドラッグアンドドロップして追加します。 最後にGenerate Allか、Generate SelectedでビルドするSoundBankを選んでビルドすればWwise側の操作は終了です。 基本的には「Audioを登録する→Eventを作ってAudioを登録する→SoundBankに登録する→ビルドする」の工程を繰り返していけばOKです。 続き↓ UnityでWwiseの音を鳴らす 2
  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

UNITYで作るミニチュア風景

はじめに UNITYで作る風景を、ミニチュア風にしてみたく、試した結果です なお、最近のQiitaのガイドライン的に、このような備忘録的な記事はどうかとも思いましたが、書き残すことにしました 細かく解説できるほどの知識はありませんので、部分的な設定の記述となります、ご了承ください 使用した環境 パソコン:mac mini 2009 Core(TM)2 Duo 2GHz メモリ 8GB Win10 UNITY:2018.4.36f1 準備 ↓元となる風景は下記のような住宅地です カメラの映像は、[Projection]をPerspectiveからOrthographicに変更して平行投影になるようにしています ミニチュア風にしてみたいこと 水面を追加して、海を手前に作る Post Processing機能を追加して、ぼかしを入れる 水面の追加 よくご存じの方にとっては今更感がありますが… ↓UNITYの、Asset Storeタブから、Standard Assetsをインポートします 標準的な水面だけをインポートしました Water4では、平行投影の際にオブジェクトとの表示が、うまく重なりませんでした ↓今回は、Water (Basic)の、WaterBasicNighttimeを使用しました ↓水面の位置と大きさを合わせて、細かい波にするために[Wave scale]を、0.02に設定しました Post Processingの追加 ↓[Window]-[Package Manager]から[Post Processing]を選びます InstallボタンがInstallingからRemoveになると完了です ↓[Main Camera]に、Post Process Layerを追加します ↓インスペクターのレイヤー名に、Post Processingを追加しておきます ([Main Camera]自体のレイヤー名は、Defaultのままです) さらに、[Post Process Layer]のレイヤー名をPost Processingに変更します ↓空のGame Objectを作成して、カメラのときと同じように今度はPost Process Volumeを追加して、レイヤー名をPost Processingに変更しておきます 私は、Game Objectの名前もPost Processingにしてしまいました この後はDepth of Field(ぼかし)、Grain(ノイズ)、Bloom(光の設定)の各効果を追加しました ぼかしについては、カメラの焦点の設定と関連しているようで、中々思った部分に効果が出せず苦労しました 結局関連性が分からず、少しずつ数値を変更して、気に入った値にしました ↓太陽光の色も、少し黄色気味にして動画用に人物を配置し、最終的に下記のような見た目にしました さいごに 始めの方の無機質な画像から、ミニチュアっぽい温かみのある画像になったと(自分では)思っています なお、個人的な好みと思いますが、[Project Settings]-[Player]-[Other Settings]-[Color Space]はGammaのままの状態です 追記 このシーンを人が歩く動画です よかったら見てください (39)UNITY街並みと歩く人
  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

HDRPのライトを点滅させる

HDRPでも動きます。 Mathfだとうまく動かなったのでRandom.Rangeで using System.Collections; using System.Collections.Generic; using UnityEngine; public class RandomLight : MonoBehaviour { Light myLight; //LIghtクラスのmyLight変数を宣言 public float low = 0.0f; public float high = 0.0f; void Start() { myLight = GetComponent<Light>(); //myLightにオブジェクトのLightコンポーネント情報を代入 } void Update() { myLight.intensity = Random.Range(low,high);  //RandomクラスRangeメソッドで2値間の値を返す //Debug.Log(myLight.intensity); } }
  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む