タグ

ブックマーク / qiita.com/Cova8bitdot (11)

  • 【Unity】VisionPro向けUnityアプリのパフォーマンスチューニング方法【AppleVisionPro】 - Qiita

    ARアプリのスタートアップ会社のGraffity でエンジニアをしてますcovaです。 UnityのVisionPro 向けSDKであるPolySpatialを利用してゲームを開発するにあたり 避けては通れない道として パフォーマンスチューニング があります。 ここの部分で四苦八苦したことを備忘録として残しておこうと思います TL;DR VisionPro の仕様を知っておく必要がある 実際のパフォーマンスを測定するときはXcode の RealityKit Trace を使いましょう Unity 側のProfiler はEditor上でのパフォーマンスチェック程度にとどめましょう 基的にはUnityのパフォーマンスチューニングの方式が利用可能。ただし、VisionOS特有のチューニングはなさそう。 経緯 Graffityで開発しているハンドトラッキングを活用したゲームで、途中から極端に

    【Unity】VisionPro向けUnityアプリのパフォーマンスチューニング方法【AppleVisionPro】 - Qiita
  • 【AppleVisionPro】おそらく国内初のAppleVisionPro専用ゲームをリリースしたので開発中大変だったことを紹介します【Unity】 - Qiita

    大変だったこと Appleのポリシーで色々取得することができない. 以前の記事 でも紹介した通り、AppleはVisionPro においてはユーザーのプライバシー保護の観点から様々な情報を開発者に 隠蔽した状態 で提供します。 隠蔽される情報の例としては以下のとおりです ユーザーの両手の位置(HandTrackingの座標) 視線ベクトル(Gaze) カメラ映像(ColorTexture) これは変に開発者に情報を提供すると、特にカメラ映像とかに関しては映っている人の情報だったりを吸い出せてしまうため、妥当な判断だと思います。 しかしながら、入力値が色々とれなくなるため、かなり工夫しないと従来通りのiPhone/iPadゲームのような開発テクニックは使えません。 その代わり以下のComponent/Classが用意されています VisionOSHoverEffect : Hoverされ

    【AppleVisionPro】おそらく国内初のAppleVisionPro専用ゲームをリリースしたので開発中大変だったことを紹介します【Unity】 - Qiita
  • 【VisionPro】UnityEditor とVisionPro Simulatorをリアルタイムに接続して動作チェックする方法【Unity】 - Qiita

    導入手順 基的にはマニュアルに基づいて行います HW編 AppleSillicon 搭載Mac を購入します Intel Mac はサポート対象外らしいです 自分はVisionOS検証用にサブ機兼副業Macを買い替えました(30万円の出費) UnityUnity2022.3.12f1 をUnityHUB経由で導入 VisionOS とiOS モジュールの追加が必須です 基Unity2022.3.11f1以降が必須 Unityプロジェクトを新規で作成 URP が必須なので3D(URP)テンプレートから作成がおすすめ PackageWindowから必要なパッケージをいれます Unity Registory にあるもの ARFoundation(AR テンプレートから作ったら導入済み ) Universal RP(URP テンプレートから作ったら導入済み ) AddPackage b

    【VisionPro】UnityEditor とVisionPro Simulatorをリアルタイムに接続して動作チェックする方法【Unity】 - Qiita
  • 【Unity】tgz圧縮されたファイルをUnityPackageManagerで導入する時に発生するチーム開発ならではの問題と対策【チーム開発】 - Qiita

    Unity】tgz圧縮されたファイルをUnityPackageManagerで導入する時に発生するチーム開発ならではの問題と対策【チーム開発】Unityチーム開発UnityPackageManager TL;DR tarball 圧縮されたSDKをPackageManager経由で導入する際は、manifest.jsonを相対パスで記述しよう!! UPMをチーム開発で利用する時に起きる諸問題 UnityPackageManagerはnpm(Node.jsのパッケージ管理システム)の仕組みを利用したPackage管理システムです。 Githubで公開されているライブラリを導入できたり、Unity公式のパッケージではパッケージ間の依存性を解決して必要なものを一緒に導入してくれるなど、 パッケージ(ライブラリ)管理の民主化 が一気に進んだ、待ちに待った!という機能です。 個人で開発する場合は特

    【Unity】tgz圧縮されたファイルをUnityPackageManagerで導入する時に発生するチーム開発ならではの問題と対策【チーム開発】 - Qiita
  • 【Unity】Unityで学ぶデザインパターン11: Flyweight パターン【デザパタ】 - Qiita

    はじめに 様々な言語で「デザインパターン」のが世の中にありますが、筆者個人の経験では いまいちピンとこない例 いまいちピンとこないコード で説明されてることが多く、 結局これっていつ使うの? という疑問に答えるには仕事仲間等との議論をしないと 辿り着けないことが多々ありました。 そこで特に「ゲーム開発ではどう使うか?」にフォーカスを当てて、実践的な例を交えて デザインパターンの説明の需要があると思い記事を作りました。 デザインパターンを学ぶ理由 デザインパターンを学ぶ理由としては 車輪の再発明の防止 長文で読みにくいコード(可読性の低いコード)を減らす コードを疎結合にして変更に強くなる(変更時のコスト・変更箇所を減らす) モジュールとして使いまわせるように、コードの再利用性を高める といった効果を期待できます。 対象読者 Unity 全くの初心者(インストールしただけで触ったことがない

    【Unity】Unityで学ぶデザインパターン11: Flyweight パターン【デザパタ】 - Qiita
  • 【Unity】UnityRenderStreaming スマホARと連動させてみた編【CloudRendering】 - Qiita

    TL;DR ARカメラを入力としてクラウドレンダリング上のコンテンツを操作するサンプルの動かし方の解説です 前章 まずはUnityRenderStreaming 導入を行う必要があるので前回の記事を必ずご一読ください。 また、今回はGCPを利用するため、環境によってはインスタンス費用が発生するのでご注意ください。 AR サンプルを動かす 前提 前回はローカル環境で動かしましたが、スマホを入力とするので当然ですがローカル環境では通信ができません。 そこで、通信のリレーサーバーを用意して中継させることでPCとスマホを繋げることができます。 また、同一ネットワークである制約も無くせるため、リレーサーバーを立てるところが大きく違います。 リレーサーバー 今回はRemotePCとスマホでP2Pで通信を行うのですが、環境によってはNAT越えができない場合があります。 (マンション等でSplatoon

    【Unity】UnityRenderStreaming スマホARと連動させてみた編【CloudRendering】 - Qiita
  • 【Unity】UnityRenderStreaming うごかしてみた編【CloudRendering】 - Qiita

    TL;DR ローカル環境にUnityEditor のクラウドレンダリングでブラウザに表示するサンプルを動かすまでの解説です 日語ドキュメントもありますが、ちょっと古いのでver3.1.x 対応板です Experimental 版なので要注意 UnityRenderStream とは 端的に説明するとUnity でクラウドレンダリングを行えるようにする拡張モジュールです。 これだと流石になかなか理解が難しいと思うので概念図を用いて紹介します。 上記図のような形で、Remote PC 上で動かしているUnityEditor のGameView を P2Pで接続した各種クライアント(ブラウザやスマホ等)にそのまま画面を配信し、 各種クライアントからは入力をフィードバックとしてRemote側に伝達 する仕組みです。 UnityRenderStreaming 導入メリット アプリ不要で映像を見るこ

    【Unity】UnityRenderStreaming うごかしてみた編【CloudRendering】 - Qiita
  • 【Unity】いまさらUnityのUIの効率的な開発手法を解説してみた【UI】 - Qiita

    TL;DR 結論:アトミックデザインを意識して作ると良いです。 はじめに Unity2018.3で抜的に仕組みが変わったUI(Prefab)システム. そこで過去の経緯を含めて今時の効率よくUIを開発する方法を解説してみました。 また、UIは一般的に「簡単に作れる」と思われがちですが、設計を考えないで開発した場合、 あらゆる問題を引き起こします。 そのため、設計を行わないで作った時のアンチパターンも紹介していきます。 対象読者 Unity 初心者〜中級者 UNITE 基準ならBeginner ~ Intermidiate 過去の歴史的経緯 ~Unity5 時代 Unity4~Unity5時代 (AD2014~2016) ではUnity4.6 でuGUI は存在こそしましたが、殆どが NGUIという有償アセットを購入して開発されることがほとんどでした。 そのころはPrefabの子要素に別の

    【Unity】いまさらUnityのUIの効率的な開発手法を解説してみた【UI】 - Qiita
  • 【Unity】スマホ端末の傾き角を知る方法【決定版】【加速度センサー】【ジャイロスコープ】 - Qiita

    加速度センサー よく 端末を動かした時の(加)速度 を取得するためのセンサーと誤解されますが、実際には 端末にかかる重力加速度ベクトルを端末のローカル各軸に分解したときの重力の大きさ を取得するためのセンサーです。 ちなみに加速度センサーは 右手系 のためZ軸は手前が正 であることに注意しましょう。 (Unity は左手系なのでZ軸奥が正で、手前が負です) Unityでは Input.acceleration で各軸にかかる重力加速度の大きさがわかります。 基的にはどの値も |x| ≦ 1.0 なことが多いですが、端末をぶん回したり運動させると |x|が1を超える場合もあります。 1.0 の意味ですが 1.0G という意味になります。 仮に2.0 となったら2倍の重力がかかっていることになります。(日常生活レベルでは基1.0以下になることがほとんどです) ジャイロセンサー 姿勢(角度)

    【Unity】スマホ端末の傾き角を知る方法【決定版】【加速度センサー】【ジャイロスコープ】 - Qiita
  • 【Unity】UnityにVivox導入してみた【Sound】 - Qiita

    Vivox ってな~に? https://www.vivox.com/partners PUBG, Fortnite, LoL, R6S, WoT, など世界的に売れている超有名ゲームで用いられている テキスト/ボイスチャット提供ミドルウェアです。 2018年9月頃よりインディーデベロッパーでも無償で使えるようになりました(一部条件有) 日国内ではほとんど導入事例を聞きませんが、現在ボイスチャットを導入するなら 間違いなくこれという状態なので知っておいて損は無いでしょう。 Vivox 導入フロー アカウント作成まで 公式サイト(https://developer.vivox.com/) に行ってSDKを手に入れる心構えをする(ここ大事) 氏名とメールアドレスを登録 (ちゃんと確認用メールが届いているかチェックしよう) 組織を入力 組織の審査を待つ 審査通過後~SDK 取得まで Planを

    【Unity】UnityにVivox導入してみた【Sound】 - Qiita
    s_ryuuki
    s_ryuuki 2020/04/23
    ボイスチャット、テキストチャット
  • 【Unity】【AssetBundle】Unity2017~Unity2018.1 のためのAssetBundle システム構築方法 (2018/09/19追記) - Qiita

    AssetBundle とは ざっくりと説明すると「アプリ外部から素材などをダウンロード〜ロードする仕組み」+「ロードする素材群をパック(まとめる)するための仕組み」です。 メリット アプリ内部に一部リソースを持たなくていいため アプリのサイズを抑えることができる モバイルアプリだと各プラットフォームで3G/4G回線でDL出来るアプリのサイズ制限がある(Apple:150MB, GooglePlay:100MB) ユーザーとしてはDLしやすくなるためDL数が伸びやすい 動画やボイスなど重いファイルは必要な時にDLする仕組みに出来る サーバーにAssetBundleを置くことができる アプリ申請なしにリソースの更新が可能 アプリ内イベントなどのリソース追加が容易 見た目修正程度であれば、AssetBundleを更新して、ユーザーに最新のものをDLしてもらえればすぐ治る (アプリの作りによるが

    【Unity】【AssetBundle】Unity2017~Unity2018.1 のためのAssetBundle システム構築方法 (2018/09/19追記) - Qiita
  • 1