265 Views
March 17, 25
スライド概要
ADX / ADX LE勉強会 vol.2 登壇資料
💬 zh-HK, en, ja, zh-TW | Unityと仲良くしたい初心者エンジニア | 音ゲー好き
Unityユーザーですが… CRIWARE for C#はなに 株式会社CRI・ミドルウェア <東証グロース市場:3698> 開発本部 第一開発部 Ha Ho Lam 2025年3月12日 © CRI Middleware Co., Ltd. ※文中の社名、商品名などは各社の商標または登録商標である場合があります。
自己紹介 • 夏浩霖(ラム) • 香港出身 • 2022年秋新卒入社 • Unityプラグイン開発/メンテ • インディーズイベントアテンド • 音ゲー/VR好き • 特技は幾つ言語使えること © CRI Middleware Co., Ltd. 2
CRIWARE for Unityの構成について C#層 ラッパー ネイティブ ライブラリ *Pro版のイメージ図です、ADX LEはSofdecが含まれていません **現在、ADX2/Sofdec2はADX/Sofdecに名称変更されました。 © CRI Middleware Co., Ltd. 3
C#とは • ゲーム開発でよく利用される言語 • C/C++ … CRIWAREの「ネイティブSDK」はこの言語の対応 • 主にゲームランタイムに利用される • C# … CRIWAREは対応していない(なかった) • ゲームエンジンでの開発、ツール群の開発など © CRI Middleware Co., Ltd. 4
CRIWARE for C#とは • ゲームエンジンでの開発に利用する • Unity/Godot/MonoGame/etc… • ゲームメーカーの内製エンジン • デスクトップツール開発 • WPF/MAUI/etc… • シナリオエディタ/レベルエディタ/譜面制作ツール/etc… © CRI Middleware Co., Ltd. 5
CRIWARE for C#とは ユーザーコード 単体で動作します CRIWARE for C# CRIWARE © CRI Middleware Co., Ltd. 6 任意のC#環境 • • • • Unity Godot WPF etc…
CRIWARE for C#とは • 対応ランタイム • netstandard2.1~ • Unity2021~ • 対応プラットフォーム • Windows/MacOS/iOS/Android/Linux © CRI Middleware Co., Ltd. 7
CRIWARE for Unityで良くない? • データ構造の変換(マーシャリング)がなくな りました • GCのアロケーションも発生しません • 引数としてデータ構造を受け渡す際にマー シャリングが生じる • 構造体 • 配列 • 文字列 • etc… • C#でのデータ構造型のメモリレイアウトを C/C++と 一致させることでマーシャリングを回避 © CRI Middleware Co., Ltd. 8
実際に音を鳴らしてみよう Unity上でCRIWARE for C#/Unityを比較 © CRI Middleware Co., Ltd. 9
導入手順 For Unityの場合 © CRI Middleware Co., Ltd. For C#の場合 10
初期化 For Unityの場合 © CRI Middleware Co., Ltd. 11
初期化 For C#の場合 SoundManagerクラス、ADXの初期化や終了を管理 *ソースコードの一部が省略されております。詳しい詳細はCRIWARE for C#のUnityサンプルからご確認ください。 © CRI Middleware Co., Ltd. 12
ファイルの読み込み For Unityの場合 © CRI Middleware Co., Ltd. 13
ファイルの読み込み For C#の場合 SoundManagerクラス *ソースコードの一部が省略されております。詳しい詳細はCRIWARE for C#のUnityサンプルからご確認ください。 © CRI Middleware Co., Ltd. 14
再生 For Unityの場合 © CRI Middleware Co., Ltd. 15
再生 For C#の場合 Playerクラス *ソースコードの一部が省略されております。詳しい詳細はCRIWARE for C#のUnityサンプルからご確認ください。 © CRI Middleware Co., Ltd. 16
(CRIWAREの)終了 For Unityの場合 For C#の場合 SoundManagerクラス Playerクラス *ソースコードの一部が省略されております。詳しい詳細はCRIWARE for C#のUnityサンプルからご確認ください。 © CRI Middleware Co., Ltd. 17
めっちゃコード書くじゃん! CRIWARE for Unityで良くない??? © CRI Middleware Co., Ltd. 18
CRIWARE for Unity のインテグレーションを使いたくない場合 • 自分のアプリケーションマネージャーに合わせてCRIWAREを初 期化/終了したい • AtomSourceを拡張したい(自分の音声再生コンポネント) • For Unityで公開されていないAPIを使いたい • 自作の素材管理ツール、それとUnityの連携も © CRI Middleware Co., Ltd. 19
CRIWARE for Youができる 最強のADXプラグインを作りましょう © CRI Middleware Co., Ltd. 20
CRIWARER for C# / 問い合わせ • https://github.com/cri-middleware/cri_adx_le_for_csharp • 公式 Discord © CRI Middleware Co., Ltd. 21
おわり ご清聴ありがとうございました © CRI Middleware Co., Ltd. 22