マガジンのカバー画像

Unity Tips

237
Unityで使える便利な機能やTips、Hacks、デモコンテンツ、開発日誌などをまとめるマガジン。note上に限らず、外部ブログやSNS・掲示板などで見つけた情報もお届け。良い…
運営しているクリエイター

2020年7月の記事一覧

【デザイナーのためのUGUI】Buttonの配置・画像の設定・コンポーネント解説

GUIデザイナーがUnityでUI実装するときに覚えたいけど覚えてられないジレンマから解放するためにカンペにしていくシリーズ初級編(`・ω・´) 余計な説明は省いて必要最低限だけ書いていくよ! ①canvasをつくるUIは全部canvasの中に置きます。 すでに存在してるときはこの工程はスルー。 canvasがあるところ:GameObject > UI > canvas ②『Button』のObjectを配置するデフォルトのボタンを読み込みます。 canvasの下の階

Unity NetCode 入門 (1) - チュートリアル

Unityの「NetCode」のアプリの作り方を説明します。 ・Unity 2019.3.14f1 ・Unity NetCode 0.2.0 ・Entities 0.11.1 ・Hybrid Renderer 0.5.2 1. プロジェクトの準備(1) Unityプロジェクトを名前「NetCube」、テンプレート「3D」で作成。 【注意】プロジェクト名は、自動生成される構造体の名前(NetCubeGhostSerializerCollection)に影響します。 (2

Unity フレームレートを固定したのにPCによって処理速度に差が出るときの対処法

どうもマカロンです。 今日は久々に役に立つ技術記事を書こうと思います それでは行きましょう! まず前提としてそもそもフレームレートをちゃんと固定できてるかを確認するために 一応手順を載せておきます ①Quality Settingsの変更 Unityのメニューから<Edit>→<Project Settings>→<Quality>を選択してインスペクターから<VSync Count>の項目を変更する。 <Every VBlank>(垂直同期)から<Don't

Unity Transport 入門(2) - Job化したクライアント・サーバ間の通信

「Unity Transport」を使って、Job化したクライアント・サーバ間で通信する方法を説明します。 ・Unity 2019.3.14f1 ・Unity Transport 0.3.1 1. プロジェクトの準備(1) Unityプロジェクトを「3D」テンプレートで作成。 (2) メニュー「Window → Package Manager」で「Package Manager」を開く。 (3) ウィンドウ上部の「Advances → show preview packa

Project Tiny 0.28 の変更点

以下の記事を参考にして書いてます。 ・Project Tiny 0.28 preview is available 1. はじめに多くの新機能と多くのバグ修正を行った新しいプレビュー「Project Tiny 0.28」を公開しました。いつものように、重要な詳細については「スタートガイド」を参照してください。「Project Tiny」を試す最良の方法は、「サンプル」から始めることです。 2. 重要な変更点重要な変更点をいくつか紹介します。 ◎ サポートはUnity

Project Tiny のプロジェクト構造

以下の記事を参考にして書いてます。 ・Anatomy of a Tiny Project 1. DOTSと従来のUnityプロジェクトの違い DOTSと従来のUnityプロジェクトは非常に良く似ていますが、次の点が異なります。 (1) シーンは完全に変換可能なコンポーネントを含む「DOTS SubScene」で構成するか、最上位のシーンのGameObjectで「Convert to Entity」コンポーネントを使用する必要があります。 Entityに変換されないGa

Oculus Quest でハンドトラッキングを試してみた

2019年12月にxR業界待望のOculus Questでハンドトラッキングが出来るようになるアップデートが来ました。 SDK である Oculus Integration も ver 12.0 からハンドトラッキング対応になったことで、開発が出来るようになっています。 今回は2020年2月に Oculus Integration ver 13.0 が来たので、そちらを試してみた記事となります。 ※ハンドトラッキングを使用出来るにようにする設定や、Unityの基本操作は他記

Unity Transport 入門(1) - シンプルなクライアント・サーバ間の通信

「Unity Transport」を使って、シンプルなクライアント・サーバ間で通信する方法を説明します。 ・Unity 2019.3.14f1 ・Unity Transport 0.3.1 1. プロジェクトの準備(1) Unityプロジェクトを「3D」テンプレートで作成。 (2) メニュー「Window → Package Manager」で「Package Manager」を開く。 (3) ウィンドウ上部の「Advances → show preview packag

Unity DOTS 入門 (8) - システムの実行順序

「システム」の実行順序を調整する方法を説明します。 ・Unity 2019.3.14.f1 ・Entities 0.11.1 1. システムの実行順序「ECS」のシステムの実行順序は、「Entity Debugger」の左側で確認することができます。 ◎ 実行タイミング ツリーの最上位ノードは、システムの「実行タイミング」です。 ・Initialization : 初期化時に実行。 ・Update : 更新時に実行。 ・PreLateUpdate : 表示時に実行。

Unity DOTS 入門 (9) - キー操作とタグ

Unity DOTS で「キー操作」を行う方法と、エンティティに「タグ」を使って任意のエンティティのみ操作する方法を説明します。 ・Unity 2019.3.14.f1 ・Entities 0.11.1 1. キー操作「Unity DOTS 入門 (1)」のサンプルに「キー操作」で立方体を移動させる機能を追加します。 (1) Projectウィンドウにスクリプト「PlayerInputSystem」を追加。 using UnityEngine;using Unity.

Unity DOTS 入門 (10) - 他のエンティティのコンポーネントデータへのアクセス

これまで、エンティティ自身のコンポーネントデータにアクセスしてきました。今回は、他のエンティティのコンポーネントデータへのアクセスする方法を説明します。 ・Unity 2019.3.14.f1 ・Entities 0.11.1 1. 他のエンティティのコンポーネントデータへのアクセス「Unity DOTS 入門 (9)」のサンプルを改良して、キー操作で動く立方体「Cube」の後ろを、立方体「Chaser」が追いかけるようにします。 (1) 「Unity DOTS 入門

【Unity】カスタムエディタで配列のサイズを変更する方法

最近Unityのカスタムエディタを覚えたので、ゲーム制作でステータスを設定しやすいようにインスペクターをカスタマイズしています。 ところで、カスタムインスペクターで配列の要素を表示したり変更する方法や、配列の長さを表示する方法は見つかるのですが、配列の長さを変更する方法はなかなか見つかりませんでした。 上の画像はデフォルトのインスペクター上の表示ですが、「Element」をカスタムインスペクターで再現する方法は見つかるのですが、「Size」を変更する方法が分からない…(表

Unity DOTS 入門 (11) - トリガーイベント

「Unity Physics」による「トリガーイベント」の使ってみます。 ・Unity 2019.4.5f1 ・Entities 0.11.1 ・Hybrid Renderer 0.5.2 ・Unity Physics 0.4.0 1. DOTSパッケージのインストールDOTSパッケージのインストール手順は、次のとおりです。 (1) メニュー「Window → Package Manager」でPackage Managerを開く。 (2) ウィンドウ上部の「Advan

Unity DOTS 入門 (12) - ECB

「ECB」を使って、「エンティティの作成」などJob処理中に実行できない命令を実行する方法を説明します。 ・Unity 2019.3.14.f1 ・Entities 0.11.1 1. ECB「ECB」(Entity Command Buffer)は、「エンティティの作成」など、Job処理中に実行できない命令を、Job完了後にメインスレッドで実行するために保持するバッファです。 チャンク構造の変更が必要な命令は全て、Job処理中に実行できない命令になります。 2. E