2012-07-25 30 views
0

我现在正在编写一个游戏WP7使用XNA Framework 4.0到达配置文件需要TextureAddressMode来钳位,但我已经设置

有一些图片需要平铺。

所以我把SamplerState[0]设置为LinearWrap在渲染这些图片之前我一旦完成就切换回LinearClamp

但是,游戏在完成所有平铺图片并且即将创建第一个非平铺(即未包裹)图片的VertexBuffer时仍会抛出异常。

我在该行添加了一个断点,并确认GraphicsDevice的Samplerstates[0]LinearClamp。所有其他15个SamplerStates都是LinearWrap,但我没有使用任何多纹理功能,所以我不认为这是原因。 (坦率地说,我甚至不知道如何在XNA中使用多纹理,也许DualTextureEffect?)

顺便说一句,我已经拼命地将所有16个采样器设置为LinearClamp,但问题仍然存在。

任何人都遇到类似的问题或有任何解决方案?

+1

异常会抛出什么? – Blau 2012-07-25 09:47:53

+1

除了上述内容,您还可以发布负责绘制平铺图像的代码片段吗? – 2012-07-25 20:56:45

+0

@Blau:带有以下消息的NotSupportedException:XNA Framework在使用不是2的幂的纹理大小时,Reach配置文件需要TextureAddressMode为Clamp。 – HoneyFox 2012-07-31 08:56:30

回答

0

@Blau在他的评论中有。 只需选择您使用的图像,打开属性窗口,展开内容处理器,然后将“调整为2的幂”切换为true。

相关问题