我正在尝试使用SharpDX takeit创建一个复古游戏。因此,这是一个复古游戏,像素应该是巨大的,像8 x 8屏幕像素。我只是通过放大绘图矩形来实现这一点。但精灵变得模糊了。所以我搜索了互联网,并说它应该在spriteBatch.Begin调用中使用SamplerState.PointClamp。 但SamplerState看起来不像枚举,而更像是仅包含的普通类 - 等于 - 新的 - ReferenceEquals 我忘记了一个使用声明,这个函数还没有在SharpDX工具包中实现,或者我做错了什么?
答案 0 :(得分:1)
使用GraphicsDevice.SamplerStates.PointClamp
。在SharpDX Toolkit中,库存采样器状态(PointClamp,LinearClamp ......等)在创建GraphicsDevice
后被实例化,因此它们只能通过GraphicsDevice
实例访问。
XNA可能正在使用某种脏黑客/非优化路径来允许访问SamplerState.PointClamp
(他们也可能假设只有一个GraphicsDevice处于活动状态)
请注意,您还可以使用SamplerState.New
创建自己的SamplerState。