我正在尝试通过以下代码片段在SlimDX中使用StateBlock来保存和恢复状态:
StateBlockMask mask = new StateBlockMask(null) { RasterizerState = true };
var sb = new StateBlock(device.Device, mask);StateBlockMask和StateBlock都是类。这给了我一个编译错误:
'.ctor' is not supported by the language从其他一些关于SO的帖子中可以看出,这似乎是一个与使用错误参数调用托管代码有关的问题。在SlimDX的源代码中,我发现:
StateBlock::StateBlock(SlimDX::Direct3D10::Device^ device, StateBlockMask mask)我根本没有使用C++/CLI的经验,所以我想知道这里是不是有什么问题(比如缺少或多余的^),或者我应该把错误集中在我这一边?
(注意:This question has been cross-posted to gamedev.net,有同样问题的未来用户可能也想检查那里给出的答案)
发布于 2011-03-01 21:22:52
StateBlockMask是一个结构吗?如果没有,请在C++构造函数中使用StateBlockMask^ mask。
发布于 2011-03-02 02:50:40
这看起来像是SlimDX中的一个错误。您可能希望使用issue tracker来确保它得到正确处理。
https://stackoverflow.com/questions/5154985
复制相似问题