本書はUnityに特化した、マーシャリング(C#とネイティブライブラリ間でのデータ交換処理)の解説書です。ゲームエンジンUnityを使いつつC#でネイティブDLL(.so)を使う際、マーシャリングで苦戦してはいないでしょうか? .NET Frameworkでのマーシャリングについての情報は多く見られますが、Unityを対象としたものは少ないのが現状です。本書では多くのケースを紹介しており、事典としてお使いいただけます。
【目次】
第1章 はじめに
第2章 マーシャリング基礎
第3章 簡単なマーシャリング
第4章 構造体のマーシャリング
第5章 配列のマーシャリング
第6章 文字列の表現
第7章 文字列の変換
第8章 文字列のマーシャリング
第9章 上級マーシャリング
目次プレビュー
- 第1章 はじめに
- 第2章 マーシャリング基礎
- 第3章 簡単なマーシャリング
-
1.1 対象読者
-
1.2 なぜ マーシャリングが必要になるのか
-
1.3 前提条件
-
1.4 動作環境
-
1.5 免責事項
-
1.6 参考文献
-
2.1 マーシャリングとは
-
2.2 マーシャリングの基本動作
-
2.3 Blittableと非Blittable
-
2.4 ネイティブ関数を呼び出す方法
-
2.5 方向属性(In/Outアトリビュート)
-
2.6 呼び出し規約
-
2.7 インターフェースの形式
-
2.8 大まかな指針
-
6.1 Windows開発環境の文字エンコーディング
-
6.2 LinuxやAndroid、iPhoneの場合
-
6.3 .NET FrameworkとMonoの実行系による違い
-
6.4 Monoによる文字列引数の呼び出しを観察する
-
6.5 実行ランタイム違いへの対策
-
6.6 Win32APIの呼び出しについて
-
7.1 文字列をShift-JISのバイト列へ変換
-
7.2 Shift-JISのバイト列から文字列へ変換
-
7.3 文字列をUTF-8のバイト列へ変換する場合
-
7.4 文字列をUTF-16のバイト列へ変換する場合
-
7.5 文字列をUTF-32のバイト列へ変換する場合
-
7.6 UTF-32のバイト列から文字列へ変換
-
7.7 IntPtrのデータ先の長さを求める
-
7.8 IntPtr(UTF-8バイト列)からの文字列化
-
7.9 IntPtr(UTF-16バイト列)からの文字列化
-
7.10 IntPtr(Shift-JISバイト列)からの文字列化
-
7.11 IntPtr(UTF-32バイト列)からの文字列化
-
7.12 メモリーの割り当てに関する注意事項
-
8.1 文字列型:引数にセットして関数呼び出し
-
8.2 文字列型:引数で結果を受け取る場合
-
8.3 文字列型:引数で結果を受け取る場合(2)
-
8.4 文字列型:関数戻り値の場合
-
8.5 文字列配列型:引数関数呼び出し
-
8.6 文字列配列型:呼び出し先で配列内容を変更