記事一覧
ShaderVariant StrictShaderVariantMatching の設定
ShaderVariant関連でUnity2022から「StrictShaderVariantMatching」という設定があったので、こちらについて記事にします
以前の記事で「AssetBudle化したとき等にShaderVariantがStripされてしまって、見た目が違う状況になってしまうことがある」という話をしました。
これはUnityがオブジェクトを描画するときに、一致するVaria
ゲームでの処理の最適化について
ゲームは短い時間に多くの処理をしないといけません
ゲームでは秒間60フレーム(60FPS)や30フレーム(30FPS)と言った形で、多くの処理を 1/60秒や1/30秒の間に収めなければなりません。
もし時間内に収まらず 0.1秒もかかってしまった場合、秒間に10フレームしか出ないことになります。
そうすると、ゲーム画面がカクついているといった形でゲームのユーザー体験は著しく落ちます。
※フレ
ゲーム開発から見たAndroid端末とiOS端末
ゲームを開発していると、iOS向けよりAndroid向けの方が大変と言う話は結構あるあるだと思います。
何が大変なのかと言う所を言語化したいと思ったので何となく記事を書く事にしました。
Android端末種類の豊富さiPhoneは毎年新しいのが出てきますし、iPad / iPad Proなども出てきます。
端末の種類も iOSであっても画一的ではないのです…
しかし、Androidはそれと段
ShaderVariant その他 PreFilterとDynamic Shader Loading
ShaderVariant関連で少し情報の更新がありましたので、コチラ記事にします。
今回は以下のブログで紹介された PreFilterとDynamic Shader Loadingについてです。
PreFilteringについてPreFilteringは、IPreprocessShaders.OnProcessShaderよりも前に実行して、引数「IList<ShaderCompilerDa
[Unity]StreamingAssetsをもう少し柔軟に運用したい
「UnityのStremingAssets、プラットフォームごとにフォルダ設定したり、DevelopmentBuildだけ含みたいデータとかうまく出来ないかなぁ…」
と思う事が定期的にあったのですが…
Unity 2021からBuildPlayerContext.AddAdditionalPathToStreamingAssetsと言うAPIで出来るようになっていたみたいです。。。
下記のよう
Unity WebGLのProfilerや実行周りについて
UnityのWebGLではProfilingするときには Development BuildやAutoconnect Profilerにチェックを入れてBuild&Runするというのが基本になります。
何故、こうしないといけないのか?何が起こっているのかを少し紐解いていきたいと思います。
WebServerの立ち上げについてBuild & Runを押したときにはローカルマシン内でWebサーバー
Unity2022でのProfiler更新周り
Unity 2022でもProfilerに更新がありました。
1.FrameTimingManagerの更新
2.MemoryProfilerがついにversion 1.0に!
3.ObjectのInstance化・削除したときの情報が取得可能に!
その他(今更ですが Profilerの一部がReleaseビルドでも取得可能でした)
1.FrameTimingManagerの更新FrameTi
[Unity]ShaderVariant番外編その2
これまでのあらすじ…UnityのShaderVariantについてコレまで記事を書いていました。
今回紹介したいものこれは画像のようにProfilerのModuleとして、実機中に起きたShaderコンパイルの情報を集約したツールになります。
このツールを使う事で実機上で発生したShaderコンパイルによる負荷を一覧で見ることが出来るというものです。
実現方法についてこちらはProfiler
ShaderVariantCollectionを良い感じに生成できないか…
これまでのあらすじ…UnityのShaderVariantについてコレまで記事を書いていたのですが、自分が思った以上に閲覧されているようでした。
今回紹介したいものそして、ふと思ったのです…
記事中に紹介したShaderVariantCollectionアセット…もうちょっと楽に生成できないかなぁと…
具体的には…
「Editor上でプレイを繰り返ししていたら…
利用したShaderVaria
[Unity]サンプルプロジェクトをMLAPI→Netcode for GameObjectsへ移植
Unityでマルチプレイ用のMLAPIは Netcode for GameObjectsへと名前を変え正式なソリューションとなりました。
また、Netcode for GameObjectsは version 1.0-preがリリースされて、Version 1のリリースも見えてきました。
以前にMLAPIがバージョンアップしたので、どのへんが変わったのかという記事を書きました。
今回、MLAP
Unity URPでGPU処理負荷を画面に出してみる
Unity 2020.3 + URP 10.7.0 や、Unity2021.2 + URP 12.1.0で画像のような形で、項目別にGPUの負荷を出すものをつくりました。
※動作環境によっては対応していません。
動作環境がサポートしているかどうかは SystemInfo.supportsGpuRecorderで判定可能です
こちらは、このソースをプロジェクトの何処かに格納したのち、Player
Unity 2021でのProfiler更新
Unity 2021でもいくつかのProfilerの更新がありました。
1.ProfilerWindowに File Access、Asset Loadingの項目が追加されました
2.ProfilerWindowのMemory部分のUIが変わりました
3.ProfilerWindowに独自のモジュールを作ることが可能になりました
4.Arm関連でパッケージが追加されています
4-1.Mali
自分の中での至高のゲーム ソニックワールドアドベンチャーを紹介する
ついこの間Xbox Series Sが手に入ったので、Xbox360の下位互換を利用して360で大好きだったゲームをメッチャ遊んでいます・・・
それがソニックワールドアドベンチャー。
PV動画はコチラ
2009年に発売されたのですが、このゲームはめちゃくちゃ遊びまくっていました。リメイクとかPC版も出ていないので、Xboxを買って久しぶりに遊んでいます。
■どんなゲーム?
音速のハリネズ
[Unity]LAN内のマッチングで、マルチ対応アプリを作っていきましょう
ネットワークゲームって作るために、サーバーを設置するもしくは何かしらのクラウドサービスを利用する必要があって、何か少し敷居高くないですか?
そこでふと思ったので、サーバーなしで 同じネットワーク(LAN内) のみでマルチプレイ出来るようなサンプルもあって良いんじゃないかと・・・
■LAN内のみで出来るといいこと
・サービス等を一切使わないのでお金はかからない
・サービスが止まってしまった、上限
Arm Mobile Studioについて
この記事について「Arm Mobile StudioでAndroidのパフォーマンス測定をDeepなレベルでしよう!」という事でYoutubeの放送を行いましたが、補足等をする記事です。
放送についてはコチラのアーカイブをご覧ください。
Arm Mobile Studioとは?Arm Mobile StudioはArm社が提供しているモバイルゲーム(Android向けアプリ)制作者のためのツー
[Unity]サンプルプロジェクトをMLAPIの新バージョンへの移行
半年ほど前に「Unityでマルチプレイヤーゲームを作ろう!」と題してMLAPIでゲームを作っていくという放送をしました。
この時にサンプルプロジェクトも用意していたのですが、UnityがMLAPIを正式採用したことによって変更が加えられました。
PackageManagerへの対応や、各種クラス名の変更、RPC周りの変更等々、諸々が入りました。
新しいMLAPIのマニュアルについてはコチラを