编辑:您可以使用不安全的代码...您只需手动编辑 proj 文件。
当我可以在手机上使用本机 C++ 代码时,为什么或为什么 WP8 上的 C# 不支持不安全代码(我没想到会这样)?我的意思是 rly 来吧,我对微软试图强迫 C# 进入的东西感到非常失望。
未来有没有 MS 计划在 WP8 上支持这一点?我将着色器常量从 C# 传递到 C++ 并使用不安全的代码来优化此过程,但在 WP8 上,与 PC 相比,我将被迫在速度慢得多的设备上以某种缓慢的方式执行此操作,这让这非常令人沮丧。
作为将vector4传递给C ++的示例,我会这样做:
public unsafe void Set(Vector4 value)
{
com.Set((int)&value, sizeof(Vector4));
}
然后在 C++ 中:
void ShaderVariableCom::Set(__int32 data, int size)
{
void* ptr = (void*)data;
if (vertexOffset != -1) memcpy(vertexBytes + vertexOffset, ptr, size);
if (pixelOffset != -1) memcpy(pixelBytes + pixelOffset, ptr, size);
}
没有不安全的代码,任何人都有一个很好的快速方法吗?