2023-01-01から1年間の記事一覧
概要 「Time.maximumDeltaTimeの値を小さくしたのですが、処理落ちが改善しないのは何故ですか?」 という質問が定期的に寄せられます。 パフォーマンスに影響を与えるパラメーターという点に関してはあながち間違ってはいないのですが、1フレームにかかる…
概要 「FixedUpdate()が実行されないフレームがあるのですが、何故ですか?」 この質問が定期的に発生するので、この問題について解説します。 結論 フレームレートとTime.fixedDeltaTimeが一致していない為に発生します。 解説 UnityはPlayerLoopの先頭で下…
概要 これまで、普通にUnityを使用してきたが、Collider.isTrrigerやRigidbody.isKinematicっていまいちよく分からんと思っている人向けの解説です。 ColliderとRigidbody Unityにおいて物理エンジンの対象となるGameObjectはColliderコンポーネントのみの場…
概要 Unity2022からWebGLプラットフォームではCachingクラスが非サポートとなりました。 何故? ブラウザー自体がキャッシュを行う為、Unity側が独自にキャッシュを行う必要がない為のようです。ドキュメントに以下の記載が追加されていました。 The Cache A…
概要 WebGLPlayerでマルチスレッドを有効にする為に下記の条件を全て満たす必要があります。 PlayerSettings.WebGL.threadsSupportをtrueに設定する WebGLPlayerを出力するが実行するブラウザー側も WebAssembly threadsに対応している マルチスレッドに対応…
概要 以前、Unity2019以降向けの記事としてWebGLのMemorySizeの指定方法を投稿したのですが、Unity2022では設定方法が変更されていたので、改めてUnity2022以降向けの設定方法を記載します。 unityletsgo.hatenablog.com 設定方法 Player Settings > Publisi…
概要 WebGLプラットフォーム向けにビルド済みのコンテンツを実行する(index.htmlをダブルクリックする)と以下のエラーが表示され、実行できません。 Failed to download file XXX.data.gz. Loading web pages via a file:// URL without a web server is not…
概要 Unity2018まではPlayerSettingsからMemorySizeを設定出来たのですが、Unity2019以降では項目が無くなりました。 そこでUnity2019以降でMemorySizeを指定するにはどうしたら良いのかというお話しです。 r なお、Unity2022以降に関しては設定方法が大きく…
概要 Inspectorから各ComponentのコンテキストメニューにあるResetを実行することで、Componentの値を初期値にリセットすることが出来ますが、それをスクリプトから実行したいといお話しです。 結論 UnityEditor.Unsupported.SmartReset(UnityEngine.Object …
まとめ Object.FindObjectsOfType(Type type)の代わりにObject.FindObjectsByType(Type type, FindObjectsSortMode sortMode)を使用すると処理負荷が軽減します。 Object.FindObjectsOfType (type)としている箇所をObject.FindObjectsByType(type, FindObjec…
はじめに AssetBundleの処理の流れがモヤモヤしていたので少し調べてみました。 調査を行ったUnityのバージョンはUnity2021.3.13f1です。他のバージョンではここで記載した内容と異なっている可能性があります。 また、自分の調査に不備があり間違っている可…
概要 iPhoneX以降ディスプレイ内に内蔵カメラ等が組み込まれたことにより、画面上に表示されない領域(いわゆるノッチ)というものが現れました。一方、Androidプラットフォームでもノッチが組み込まれたデバイスがリリースされるようになり、Androidではノ…