目次 目次 UnityEngine Coreライブラリには署名が必要が無い Apple's privacy manifestのマイルストーン Unityのアップグレード UnityEngine Coreライブラリには署名が必要が無い 3月8日(金)のUnity Forumの投稿によると、Appleとの話し合いの結果、Unit…
概要 UnityとVulkan validation layersの連携 UnityでVulkan validation layersを有効にする具体的な手順 Androidアプリケーションに引数を指定する UnityPlayerActivityを拡張してコマンドライン引数を指定する adb shellから指定する 概要 Vulkan validati…
目的 UnityForumのUnity 6 beta (2023.3) - Feature HighlightsでUnity6の新機能が紹介されています。色々機能が増えて理解が追い付きませんが、とりあえず誰かに聞かれても「あーあれね」と知ってるふりがとりあえず出来る浅い知識の獲得を目指します。 新…
概要と免責 Apple's privacy manifestはWWDC23において発表された新しいガイドラインです。 2024年春からこのガイドラインが適用され、このガイドラインを満たさない場合、AppStoreへのサブミットがリジェクトされる可能性がありますが、現状は情報が出揃っ…
developer.chrome.com 以下の条件を満たすAndroidデバイスでWebGPUが有効になるとのこと。 Android12以降 QualcommもしくはARMのGPU Chrom 121以降 もしかしてUnityWebのWebGPUがAndroid端末でも動作する可能性が・・・。 一方AppleはiOS17.4でChrome等のSaf…
blog.unity.com からの抜粋。 UnityWeb ブラウザ向けのプラットフォーム名はUnity Web 将来的に以下のビルドが作成できるようになる 。 WebGLを使用したビルド WebGPUを使用したビルド WebGLとWebGPUを使用したビルド モバイルプラットフォームのサポート Un…
概要 「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ではノ…
目的 AssetBundleをダンプしてAssetBundleの構造を理解します。 検証環境 Unity2021.3l7f1で検証を行いましたが、Unity2017以降であれば特に変更は無いと思います。 Tools AssetBundleをダンプする為にはWebExtract・binary2textの2種類のToolを使用します…
概要 Android SDKに含まれるadbコマンドをUnityEditor上から実行する方法に関するお話しです。 結論 スクリプトリファレンスには記載が無いですが、実はUnityEditor.Android配下にADBクラスが存在しているのでそれを使えば簡単にUnityEditor上からadbコマン…
概要 AssetBundleのビルドオプションであるBuildAssetBundleOptionsに関しての解説です。 スクリプトリファレンス読めば判ることから何を言っているかわからんことまで解説しています。 尚、Unity2021.3時点での内容で記載しています。 AssetBundleのファイ…
概要 github.com UnityPlayerSyncはUnityでビルドしたアプリケーションとUnityEditorを同期する機能を追加するパッケージです。 具体的にはアプリケーションで実行中の画面をUnityEditorのHierarchy Viewへ展開し、UnityEditor上で編集したGameObjectのパラ…
## あなたとともにイノベーションを創る テックストリームのリリースでは、新機能や新ツールをいち早く試すことができ、お客様のフィードバックによってUnityの開発方針が決定されます。年に2回公開されるテックストリームは、次のリリースまでサポートされ…
概要 UnityDataToolsはUnity2022.1で追加されたUnityFileSystemApiで何が出来るのかを検証する為のプロジェクトで、GitHub上で公開されており、下記はREADME.mdを日本語化したものになります。 UnityDataTools UnityDataToolは、UnityFileSystemApiネイティ…
新しいリリースサイクルであるTech Streamで最新機能を探求し、次のUnity LTSリリースに向けた第一歩を踏み出しましょう。 本日、新しい2022.1 Tech Streamがリリースページよりダウンロードできるようになったことをお知らせします。Tech Stream のリリース…
概要 Androidネイティブでのプロファイリングといえばsystraceですが、Android 9(APIレベル28)以降のデバイスであれば、デバイス上から直接システムトレースの記録を行うことが可能です。 今回はデバイス上からシステム トレースを行う方法を説明します。 設…
Shader Cacheとは? OpenEL GSのデバイスでは、Shader(Snipet)はRuntime上(デバイスで実行されるアプリケーション内)でGPU Programにコンパイルされます。このコンパイルは非常に処理負荷が高い為、コンパイルされたGPU ProgrameをCacheして再利用しようとい…
概要 Androidプラットフォームでビルドを行う際、Gradle Templateをベースとしてbuild.gradleが生成されます。 これらに関しては、マニュアルで説明はされていますが、Template変数はマニュアルに記載されていないものが多々あります。そこで、マニュアルを…
概要 Unity2020へバージョンアップしてから、TextAssetのtextプロパティの処理負荷が上がっている気がしたので、Unityのソースコードを確認したらプロパティへアクセスする毎にbytesデータを処理するように変更されていたというお話しです。 Unityのソースコ…
はじめに 前回はSDKMAN!でgradleの任意のバージョンをインストールしましたが、今回はWindowsで任意のバージョンをgradleをインストールしてみます。 unityletsgo.hatenablog.com Chocolatey Windows向けのHomebrewやSDKMAN!のようなアプリケーションマネー…