メインコンテンツまでスキップ
このページは自動翻訳されており、誤りが含まれる場合があります。 英語の原文を表示

Unity ガイド

Unity SDK プラグインを使用すると、Unity で制作したコンテンツにハプティックを実装できます。

  1. SDK プラグインのインポート
  2. ハプティックアプリの連携
  3. 初期化のためのプレハブの追加

要件

  • 開発環境
    • OS: Windows 10/11 (x64)、macOS (Apple Silicon)
    • Unity 2022 以降
    • bHaptics Player のインストール
    • ゲームに対応するデプロイ済みの ハプティックアプリケーション
      • ハプティックアプリの App ID と API Key
  • 実行環境
    • OS: Windows 10/11 (x64)、macOS (Apple Silicon)、Android(VR ヘッドセット専用)、PS5
      • 対応ヘッドセット: Meta Quest 2/3/3S/Pro、Pico 4/4 Pro/4 Ultra、HTC VIVE Focus 3/Focus Vision/XR Elite
      • ヘッドセットに bHaptics VR Player がインストールされている必要があります。
注記

2022 より前の Unity バージョンのサポートが必要な場合は、support@bhaptics.com までお問い合わせください。

非推奨の機能

スタンドアロン VR ヘッドセットで ヘッドセットに bHaptics VR Player をインストールせずに bHaptics ハプティックデバイスを使用する方法は非推奨です。ハプティックデバイスを使用するには、ヘッドセットに bHaptics VR Player をインストールしてください。

macOS および Android の場合

macOS と Android 向けに開発する場合、bHaptics SDK を使用するには追加の要件が必要です。次のセクションを確認してください。

About haptic application

You can create and manage haptic apps in Developer Portal, a web-based tool.

If you're unfamiliar with haptic apps or haven't created one yet, please follow the Portal guide before proceeding.

Before linking a haptic app to your game project, make sure the haptic app meets the following requirements:

  • At least one haptic event must be created.
  • API Key must be generated.
    • There is no API Key by default. To generate one, go to the "API Key" tab and click "New" button.
  • Haptic app must be deployed
    • If you see "Deploy Now" button in the upper right corner, click it to deploy your haptic app. Otherwise, if you can see "Up to date", it means that the latest haptic app has already been deployed.

Also, link process requires App ID and API Key. Go to the "Settings" tab, and check the App ID and API Key.

Check app ID, API key at the settings tab in Portal

SDK プラグインのインポート

Unity AssetStore の bHaptics Haptic Plugin

Unity Asset Store で bHaptics Haptic Plugin を入手し、Unity プロジェクトにパッケージをインポートします。

Unity パッケージを Unity プロジェクトにインポートする方法の詳細については、公式の Unity ドキュメント を参考にしてください。

以前のバージョンから更新する場合

以前のバージョンの Unity パッケージを使用していた場合は、更新後に次のレガシー Android ライブラリファイルを削除してください — 各 .aar ファイルを、対応する .meta ファイルとともに削除してください。

  • bhaptics_ble.aar / bhaptics_ble.aar.meta
  • bhaptics_commons.aar / bhaptics_commons.aar.meta
  • bhaptics_core.aar / bhaptics_core.aar.meta

これらのファイルは現在のパッケージでは使用されなくなっており、ライブラリの重複による Android ビルドエラーを引き起こす可能性があります。

ハプティックアプリの連携

  1. ツールバーで "bHaptics" → "Developer Window" を選択します。 Unity ツールバー
  2. Portal で発行された App ID と API Key を入力した後、"LINK" ボタンをクリックします。 bHaptics Developer Window ログイン
    注記

    "Forgot your App ID & API Key?" を押して Portal にアクセスし、該当の情報を確認できます。

  3. 認証に成功すると、bHaptics Developer Window にアプリケーションが表示されます。

bHaptics Developer Window でアプリを確認する

bHaptics Developer Window

複数のタブを確認できます。

  • Home: サンプルガイドとアプリケーションの情報を確認します。
  • Events: bHaptics Developer Portal でデプロイした最新のイベントを確認して再生します。
  • Documentation: SDK 関連のドキュメント(このサイトを含む!)を確認します。
  • Latest Deployed Version: バージョンを確認したり、更新したりします。
    注記

    Portal のバージョンとエディタのバージョンが一致しているか確認し、一致していない場合は更新アイコンを押してください。

  • Unlink: ゲームとハプティックアプリの接続を解除します。

初期化のためのプレハブの追加

ハプティック環境を初期化するための "[bhaptics]" という名前のプレハブがあります。ハプティック関連の関数を使用する前にインスタンス化される必要があります。最初のシーンに配置することを強くおすすめします。

プレハブの初期化

  1. 最初のシーンに移動します。
  2. Project Window で "Assets" → "Bhaptics" → "SDK2" → "Prefabs" に移動します。
  3. "[bhaptics]" プレハブをシーンに追加します。

このプレハブのコンポーネントは、DontDestroyOnLoad とともに一般的な Unity シングルトンパターンを使用します。最初のシーンにのみ配置すればよいですが、重複したインスタンスは自動的に削除されるため、複数の場所に配置しても問題ありません。

Android Manifest の更新

スタンドアロンヘッドセット(Android)向けにゲームをビルドする場合、AndroidManifest.xml ファイルの更新が 必須 です。Android は Target API Level 30 からパッケージの可視性を制限するため、以下のマニフェスト項目がないと、ゲームは bHaptics VR Playercom.bhaptics.player パッケージ)を検出できません。

注記

プロジェクトの Android Target API Level を確認するには、Project Settings → Player → Android settings(Android アイコン) → Other Settings → Identification → Target API Level に移動してください。詳細については Unity マニュアル を参考にしてください。 Untitled

  1. Android アプリマニフェストのオーバーライドを有効にします。Project Settings → Player → Android settings(Android アイコン) → Publishing Settings → Build → Custom Main Manifest に移動し、無効になっている場合は有効にします。マニフェストファイルのディレクトリは以下のとおりです。 Untitled
  2. 通常 Assets/Plugins/Android/ ディレクトリにある AndroidManifest.xml ファイルを開きます。
  3. マニフェストファイルに queries 要素を追加 します。
    <queries>
    <package android:name="com.bhaptics.player" />
    </queries>

この作業が完了すると、マニフェストファイルは次のような状態になります。

<?xml version="1.0" encoding="utf-8"?>
<manifest
xmlns:android="http://schemas.android.com/apk/res/android"
package="com.unity3d.player"
xmlns:tools="http://schemas.android.com/tools">

<application>
<activity android:name="com.unity3d.player.UnityPlayerActivity"
android:theme="@style/UnityThemeSelector">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<meta-data android:name="unityplayer.UnityActivity" android:value="true" />
</activity>
</application>

<queries>
<package android:name="com.bhaptics.player" />
</queries>
</manifest>
危険

Minify オプションを有効にした場合は、Custom Proguard ファイル(proguard-user.txt)に例外を追加する必要があります。

macOS ネットワーク Entitlement

macOS 15(Sequoia)以降では、パッケージ化されたアプリは App Sandbox 内で実行されます。アプリがネットワーククライアント entitlement を宣言しない限り、サンドボックスは localhost への接続を含むすべてのネットワークアクセスを遮断します。SDK は bHaptics Player とローカル接続で通信するため、この entitlement のない macOS パッケージビルドは Player に接続できません(サンドボックスの deny network エラーで失敗することがあります)。

macOS 向けにアプリをパッケージ化する際は、com.apple.security.network.client entitlement を追加してください。これはアプリ開発者が設定する部分であり、SDK には含まれていません。

さらに読む

これで bHaptics のハプティック機能を使用する準備が整いました! ゲームでハプティックを再生するには、Unity References ページ にアクセスしてください。

注記

今すぐハプティックを体験したい場合は、プレイテストできるハプティックイベントを確認できるサンプルシーンを提供しています。"Assets" → "Bhaptics" → "SDK2" → "Examples" → "Scenes" に移動して "PlayParamSample" シーンを開いてください。関連するパラメータを調整しながら、すべてのハプティックイベントを再生できます。

トラブルシューティング

マイグレーションガイド