2
未加工のテクスチャデータをTexture2D(バイト配列)からアンマネージドC++コードに渡そうとしています。Unity C#のバイト配列をC++プラグインに渡します
[DllImport("LibName", CallingConvention = CallingConvention.Cdecl)]
static extern IntPtr ProcessData(byte[] data);
C++:
extern "C" {
__declspec(dllexport) void ProcessData(uint8_t *data) {
//sizeof(data) is always 8
}
}
私は何をしていますC#のコード配列の長さは、しかし、ネイティブメソッドのC++のsizeof 'は常に返し8.
C#の宣言では、およそ1,5kkです間違っている? C++コードにメモリを追加しないで配列を渡す方法はありますか?あなたの現在のコードを実行する必要があり
'のはsizeof(データ)は' **あなたに**ポインタのサイズを伝え、あなたがの大きさを推測することはできませんポインタから配列を指している場合は、それを別々に渡す必要があります – UnholySheep