XGRIDSドキュメント
  • 简体中文
  • English
  • 繁體中文
  • 日本語
  • Deutsch
  • Español
  • Italiano
  • Français
  • Русский
  • Polski
  • Nederlands
  • 简体中文
  • English
  • 繁體中文
  • 日本語
  • Deutsch
  • Español
  • Italiano
  • Français
  • Русский
  • Polski
  • Nederlands
  • Lixel PortalCam シリーズ

    • PortalCam P1

      • 製品概要
      • デバイスの基本操作
      • LCC Scan App の使用
      • メンテナンスとお手入れ
      • FAQ
  • Lixel K シリーズ

    • Lixel K1

      • 製品概要
      • デバイスの基本操作
      • デバイスのアクティベーションと接続
      • デバイス収集
      • 絶対座標のポイントクラウドデータを取得する
      • マップフュージョン
      • 典型的なシーンにおける経路計画の推奨
      • 注意事項
      • FAQ
    • Lixel K2

      • 製品概要
      • デバイスの基本操作
      • デバイスのアクティベーションと接続
      • デバイス収集
      • 絶対座標のポイントクラウドデータを取得
      • マップフュージョン
      • 典型的なシーンにおける経路計画の推奨
      • 注意事項
      • FAQ
  • Lixel L シリーズ

    • Lixel L2 Pro

      • 製品概要
      • デバイスの基本操作
      • デバイスのアクティベーションと接続
      • デバイス収集
      • 絶対座標のポイントクラウドデータを取得する
      • 実時計測機能
      • 付録
      • FAQ
    • Lixel L3

      • 製品概要
      • デバイスの基本操作
      • デバイスのアクティベーションと接続
      • デバイス収集
      • 絶対座標点群データの取得
      • 付録
  • アクセサリー

    • Stick Light

      • 取り付けガイド
      • 基本操作
      • よくある質問
  • Lixel Studio

    • バージョンと著作権
    • インストールとアクティベーション
    • ソフトウェアインターフェース
    • ファイル操作
    • プロジェクト処理
    • ツール
    • 2D 作図
    • 業界応用
    • 設定
    • デバイス接続
    • よくある質問
  • Lixel CyberColor

    • LCC Studio

      • はじめに
      • バージョンと更新
      • ダウンロードとインストール
      • インターフェース概要とナビゲーション
      • 再構築前の準備
      • モデル再構築
      • 単一モデル再構築
      • 地図合成
      • 空地融合
      • 航空撮影再構築
      • マイモデル
      • その他の機能
      • 設定とアカウント
      • Converter
      • 動画再構築
      • よくある質問 / FAQ
    • LCC Scene Editor

      • バージョンと更新情報
      • アカウントとサインイン
      • 製品概要とホーム画面
      • エディター画面
      • ナビゲーションモード
      • ファイル
      • 設定
      • 編集
      • ウィンドウ
      • グローバルツールバー
      • アセットとプロパティ
      • 左ツールバー
      • ビューポイント
      • ポータル
      • スカイボックス
      • アノテーション
      • 測定
      • フライスルー
      • シーンレポート
      • 3D レイアウト
      • ミニマップ
      • プレビューモード(Viewer)
      • ヘルプ
      • よくある質問(FAQ)
      • スポーンポイント
    • LCC Model Editor

      • バージョンと更新
      • ユーザーガイド
      • 概要とインターフェース
      • ファイル操作
      • セレクター
      • モデルの編集
      • 測定
      • カラーグレーディング
      • アセット管理
      • 設定とヘルプ
      • よくある質問
    • Capture Guide

      • 概要
      • 撮影デバイス概要
      • 一般的な撮影の原則
      • 屋内シーンの撮影
      • 屋外シーンの撮影
      • 大規模撮影(マップフュージョン)
      • 空地マップフュージョン撮影
      • オブジェクト撮影
      • 人物撮影
      • ビデオ再構築撮影
      • HD Enhancement
      • 制御点(Lixel P1)
      • FAQ とトラブルシューティング
    • LCC Studio Linux

      • 製品概要説明
      • 基本アーキテクチャマニュアル
      • インストールと展開説明書
      • コンテナ起動パラメータ説明書
      • CodeMeter オフラインライセンス展開説明書
      • APIコマンドセット
      • 付録-開発者データマニュアル
      • 付録-エラーコード一覧
      • シングルノードマルチGPUクラスタ展開QuickStart
    • 活用テクニック

      • 複数の大規模 3DGS モデルの統合ワークフロー
    • バージョン履歴
  • プラグインと SDK

    • Unreal

      • 概要
      • クイックスタート - Windows
      • クイックスタート - Linux
      • クイックスタート - Quest3
      • エディションとライセンス
      • レンダリング
      • Tiled ラスタライズ(実験的機能)
      • 画面調節
      • 法線とライティング
      • シーン編集
      • パフォーマンスパラメーター
      • パフォーマンス最適化ガイド
      • サードパーティおよびエンジンプラグインとの連携
      • プロキシメッシュ
      • 読み込みアニメーション
      • コリジョン
      • ナビゲーションシステム対応
      • Single layer water 対応
      • ローカライズ
      • よくある質問
      • トラブルシューティング
      • ログと診断
      • お問い合わせ
      • ベストプラクティス

        • LixelStudio メッシュで 3DGS をリライティングする
      • API リファレンス

        • ALCCActorBase
        • ULCCComponentBase
        • ULCCComponent
        • ULCC2Component
        • SOG / SPZ / PLY Actors
        • ALCC2ProxyMesh
        • ALCCClippingVolume
        • ALCCSectionPlane
        • ALCCLoadVolume
        • ULCCUtilLibrary
        • Enums
        • Structs
      • 更新履歴

        • v3.4.0
        • v3.3.1
        • v3.0.0
        • v2.2.1
        • v1.0.0
        • v0.9.0
        • v0.8.0
        • v0.7.1
        • v0.6.1
        • v0.5.2
        • v0.4.1
        • v0.4.0
        • v0.3.0
        • v0.0.5
        • v0.0.4
        • v0.0.3
        • v0.0.2
        • v0.0.1
    • Unity

      • Unity SDK の概要
      • 技術的特徴
      • 開発環境の要件
      • PC クイックスタートガイド
      • プロジェクト設定の最適化ガイド
      • Pico 4 Ultra 開発ガイド
      • Pico 4 Ultra PC ストリーミングガイド
      • Quest 3 開発ガイド
      • Quest 3 PC ストリーミングガイド
      • OpenXR 開発ガイド
      • Pico 4 Ultra Business Streaming ガイド
      • 用語集
      • FAQ
      • お問い合わせ
      • 機能開発ガイド

        • 複数シーン混合レンダリング開発ガイド
        • 影の受光開発ガイド
        • リアルタイムライティング開発ガイド
        • マルチカメラレンダリング開発ガイド
        • 高解像度画像レンダリング開発ガイド
        • LCC / LCC2 データ形式互換性開発ガイド
        • 読み込みエフェクト開発ガイド
        • Mip レンダリングモード切り替え開発ガイド
        • エッジ・コーナースナップ開発ガイド
        • 投影デカール開発ガイド
        • ビデオ投影デカール開発ガイド
        • ハイライト開発ガイド
        • リアルタイムクリッピング開発ガイド
        • カラー調整開発ガイド
        • シーン Mesh データ取得開発ガイド
        • エディターモード開発ガイド
        • レンダリングパフォーマンスパラメータ設定ガイド
        • アプリケーションとデータの同梱パッケージ開発ガイド
        • コリジョンシステム開発ガイド
        • macOS 開発の権限問題ガイド
        • iOS デバイスのコンパイル・パッケージ化開発ガイド
      • API リファレンス

        • LCCManager
        • Renderer
        • データ型
      • 変更履歴

        • v2.3.0
        • v2.2.10
        • v2.2.0
        • v2.1.19
        • v2.0.14
    • Web

      • はじめに
      • レンダリング性能最適化ガイド
      • グラフィックス設定
      • よくある質問
      • API リファレンス

        • LCCRender::clearIndexDB
        • LCCRender::dispose
        • LCCRender::load
        • LCCRender::setCamera
        • LCCRender::unload
        • LCCRender::update
        • LCCObject::checkRenderNextFrame
        • LCCObject::clearRenderNextFrame
        • LCCObject::ecef2Prj
        • LCCObject::getBounds
        • LCCObject::getEnvInstancedMesh
        • LCCObject::getInstancedMesh
        • LCCObject::getLodInfos
        • LCCObject::getOriginPosition
        • LCCObject::getProjectionCoordinateSystemInfos
        • LCCObject::hasCollision
        • LCCObject::hasEnvironment
        • LCCObject::hasShcoef
        • LCCObject::intersectsCapsule
        • LCCObject::intersectsRayExt
        • LCCObject::intersectsRayFromOriginExt
        • LCCObject::intersectsSphere
        • LCCObject::lowerToBottom
        • LCCObject::prj2Ecef
        • LCCObject::raiseToTop
        • LCCObject::raycast
        • LCCObject::raycastFromOrigin
        • LCCObject::setAlpha
        • LCCObject::setClipBox
        • LCCObject::setClipPlane
        • LCCObject::setEndLod
        • LCCObject::setLodAutoLevelUp
        • LCCObject::setMaxDistance
        • LCCObject::setMaxNodeSplats
        • LCCObject::setMaxSplats
        • LCCObject::setOriginPosition
        • LCCObject::setPointsColor
        • LCCObject::setRenderState
        • LCCObject::setRotation
        • LCCObject::setScale
        • LCCObject::setSemantic
        • LCCObject::setSemanticColor
        • LCCObject::setSmooth
        • LCCObject::setStartLod
        • LCCObject::setTranslation
        • LCCObject::setVisible
        • LCCObject::togglePointsDisplayMode
        • LCCObject::useEnvironment
        • LCCObject::useShcoef
      • 更新履歴

        • v0.6.3
        • v0.6.2
        • v0.6.1
        • v0.6.0
        • v0.5.5
        • v0.5.4
        • v0.5.3
        • v0.5.2
        • v0.5.1
        • v0.5.0
        • v0.4.1
        • v0.4.0
        • v0.3.1
        • v0.3.0
        • v0.2.0

macOS 開発の権限問題ガイド

LCC Unity SDK はサードパーティの webP デコードライブラリを使用しているため、macOS で SDK を使用すると「Failed to open xxx.bundle」エラーが発生する場合があります。これは macOS のセキュリティ機構(Gatekeeper)が未認証のサードパーティプラグインの実行をブロックするもので、Unity や SDK 自体とは関係ありません。

このガイドは 2 部構成です。

  • パート 1:開発環境でサードパーティライブラリの権限問題を一時的に解決します。
  • パート 2:アプリケーションをパッケージ化する際の正式な解決策(一般公開向け)です。

パート 1:開発環境でサードパーティライブラリの権限問題を一時的に解決する

以下の方法は、開発中にバンドルの制限を素早く解除するためのものです。優先順位順にお試しください。

方法 1:システム設定で直接許可する(最速)

手順操作
1Mac の System Settings を開き、左側の Privacy & Security を見つけます
2下にスクロールして「Security」セクションを見つけます
3「xxx.bundle was blocked from use」というプロンプトを見つけ、隣の Allow ボタンをクリックします
4Unity を再起動し、SDK を再インポートまたは実行します

方法 2:Terminal で隔離属性を削除する(最も徹底的)

macOS はネットワークからダウンロードしたファイルに com.apple.quarantine 隔離属性を付与します。Terminal コマンドで直接削除できます。

手順操作
1Launchpad → Other → Terminal を開きます
2コマンドを入力します(末尾のスペースを維持):sudo xattr -rd com.apple.quarantine
3エラーが報告された xxx.bundle ファイルを Terminal ウィンドウへ直接ドラッグしてパスを自動補完します
4Enter を押し、Mac のログインパスワードを入力します(入力中は表示されませんが正常です)
5コマンド完了後に Unity を再起動します

ヒント:

このコマンドには管理者権限(sudo)が必要です。パスワード入力中は画面に何も表示されません。入力し終えたら Enter を押してください。

方法 3:実行権限を追加する(補助的)

方法 1 と 2 でも解決しない場合は、バンドルに実行権限を追加します。

chmod -R 755 /path/to/xxx.bundle

バンドルファイルを Terminal にドラッグしてパスを自動補完し、Enter を押して Unity を再起動することもできます。

方法 4:Unity プラグインプラットフォーム設定を確認する

手順操作
1Unity の Project ウィンドウで xxx.bundle ファイルを見つけます
2選択して Inspector ウィンドウを確認します
3Platform Settings で Any Platform にチェックするか、Standalone / macOS を個別にチェックします
4Exclude Platform にチェックが入っていないことを確認します
Unity Inspector でバンドルのプラグインプラットフォーム設定を確認

Inspector の Platform Settings で Any Platform または macOS にチェック

方法 5:Gatekeeper を一時的に無効化する(最終手段)

警告:

この方法はシステムのセキュリティを低下させます。開発マシンでの一時的な使用のみ推奨します。開発完了後に必ず再有効化してください。

上記のどの方法でも解決しない場合は、システムのセキュリティ検証を一時的に無効化できます。

sudo spctl --master-disable

無効化されたか確認します。

spctl --status
# 正常に無効化されると assessments disabled と表示される

開発完了後にセキュリティ保護を再有効化します。

sudo spctl --master-enable

パート 2:アプリケーションのパッケージ化時のサードパーティライブラリ権限問題の解決

エンドユーザーがサードパーティ SDK を含むアプリケーションを問題を意識せずに使えるようにするには、開発者側で「深いコード署名 + Apple 公証 + Staple チケット結合」を完了する必要があります。これは macOS で唯一の準拠した標準ソリューションで、ユーザー操作がゼロです。

前提条件(すべて必須)

No.条件説明
1Apple Developer Program年額 99 USD。Developer ID Application 証明書の取得に使用
2Hardened Runtime を有効化Unity の Player Settings → Other Settings → Mac で Use Hardened Runtime にチェック
3一意の Bundle ID を設定開発者ポータルと一致させる
4Unity の自動署名を無効化パッケージ化後に Terminal で手動の深い署名を行います

完全な署名と公証の手順

手順 1:拡張属性をクリアする

xattr -cr "YourApp.app"

手順 2:深い再帰的署名

--deep パラメータは内部のすべての .bundle、.dylib、.framework ファイルを自動的に走査して一括署名し、未署名が原因でサードパーティバンドルがブロックされる問題を徹底的に解決します。

codesign --force --deep --options runtime --sign "Developer ID Application: YourCompany (TeamID)" "YourApp.app"

重要なポイント:

YourCompany (TeamID) を完全な Developer ID に置き換えてください。--deep を使用すると、内部のすべてのサードパーティバンドルが署名されることが保証されます。これが「署名後もエラーになる」問題の 90% の根本原因です。

手順 3:公証用に標準の zip をパッケージ化する

必ず ditto コマンドでパッケージ化してください。システムの右クリック圧縮は使用しないでください(使用すると公証検証が失敗します)。

ditto -c -k --sequesterRsrc --keepParent "YourApp.app" build.zip

手順 4:Apple へアップロードして公証する

notarytool(公式の新ツール)を使用して公証申請します。Apple のバックエンドが自動的に悪意あるコードをスキャンします。

xcrun notarytool submit build.zip --apple-id your@apple.com --password app-specific-password --team-id TeamID --wait

Accepted が返るのを待ちます。これは公証に合格したことを意味します。

手順 5:公証チケットを App に Staple する

Staple 後は、ユーザーがオフラインで開いても検証に合格します。

xcrun stapler staple "YourApp.app"
# 成功したか確認
xcrun stapler validate "YourApp.app"

内部テスト / 企業イントラネット配布(代替案)

まだ Apple 開発者アカウントがない場合は、以下の方法でイントラネット内に配布できます。

手順操作
1Unity が .app をパッケージ化します
2ビルドマシンで実行:xattr -rd com.apple.quarantine "YourApp.app"
3イントラネットツール(scp、企業クラウドドライブ、USB ドライブ)で配布します。ブラウザでダウンロードしないでください

制限:

この方法はイントラネット転送のみに適用されます。ブラウザでダウンロードすると隔離属性が再付与され、バンドルエラーが再発します。一般公開には適していません。

よくある失敗

よくあるミス正しい方法
--deep なしでメインプログラムのみ署名した--deep で内部のすべてのバンドル / dylib を再帰的に署名する必要があります
Hardened Runtime を有効化していないUnity パッケージ化前に Player Settings でチェックします。さもないと公証が直接失敗します
公証後にチケットの Staple を忘れた必ず xcrun stapler staple を実行します。さもないとオフラインで開く際にダイアログが表示されます
署名前に拡張属性をクリアしていない先に xattr -cr を実行して全バンドルの残存属性をクリアし、その後署名します
ditto の代わりにシステムの右クリック圧縮を使った必ず ditto -c -k 標準パッケージ化を使用します。さもないと公証検証が失敗します

まとめ

一般公開のための唯一の標準ソリューション = Apple Developer ID + 深い codesign + notarytool 公証 + stapler チケット。完了後、ユーザーは即座にダウンロードして使用でき、セキュリティダイアログもなく、問題を意識しません。