メニュー

Unityで使うC#/DLLマーシャリング事典

発売日: 2021/1/15 想定ページ数: 78ページ ISBN: 9784844379287 全文検索: 対応
★★★★★ ★★★★★ 0件
本書は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 大まかな指針
  • 3.1 プリミティブ型:引数にセットして関数呼び出し
  • 3.2 プリミティブ型:引数で結果を受け取る場合
  • 3.3 プリミティブ型:関数戻り値の場合
  • 4.1 構造体の定義
  • 4.2 BOOL/bool型の注意点
  • 4.3 構造体:引数にセットして関数呼び出し
  • 4.4 構造体:引数にセットして関数呼び出し(2)
  • 4.5 構造体:引数で結果を受け取る場合
  • 4.6 構造体:関数戻り値の場合
  • 4.7 構造体:関数戻り値(ポインタ)の場合
  • 4.8 共用体
  • 5.1 プリミティブ型:引数関数呼び出し
  • 5.2 プリミティブ型:呼び出し先で配列内容を変更
  • 5.3 プリミティブ型:戻り値の場合
  • 5.4 構造体配列:引数関数呼び出し
  • 5.5 構造体配列:呼び出し先で配列内容を変更
  • 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 文字列配列型:呼び出し先で配列内容を変更
  • 9.1 ビットフィールドを使用している場合
  • 9.2 プリミティブ型の2次元配列の場合
  • 9.3 構造体中に構造体がある場合
  • 9.4 構造体中に配列(固定長)がある場合
  • 9.5 構造体中に配列(可変長)がある場合
  • 9.6 構造体中に文字列(固定長)がある場合
  • 9.7 構造体中に文字列(固定長)がある場合(2)
  • 9.8 構造体中に文字列(可変長)がある場合
  • 9.9 構造体中に文字配列がある場合
  • 9.10 C#の関数をDLLに渡す場合
  • 9.11 DLL関数から関数ポインタが返る場合
  • 9.12 DLL関数から関数ポインタが返る場合(2)
  • 9.13 構造体中に関数ポインタがある場合
  • 謝辞

まだレビューが投稿されていません