首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >XNA Reach配置文件

XNA Reach配置文件
EN

Stack Overflow用户
提问于 2011-04-11 08:33:45
回答 2查看 5.3K关注 0票数 3

我明白他的错误

“当使用不是2的幂的纹理大小时,XNA Framework Reach profile要求对TextureAddressMode进行钳制”

对于line

代码语言:javascript
复制
GraphicsDevice.DrawUserPrimitives<VertexPositionTexture>
                    (PrimitiveType.TriangleStrip, verts, 0, 2);

我该怎么做?

谢谢,

EN

回答 2

Stack Overflow用户

发布于 2011-04-11 12:05:47

当使用到达轮廓时,使用两个大小纹理的力量或将TextureAddressingMode设置为钳制。

TextureAddressingMode是GraphicsDevice SamplerState的一部分。您需要在调用绘图之前设置此状态。下面的代码显示了如何将第一个纹理采样器设置为内置采样器状态之一。

代码语言:javascript
复制
GraphicsDevice.SamplerStates[0] = SamplerState.LinearClamp;

GraphicsDevice.DrawUserPrimitives<VertexPositionTexture>
                    (PrimitiveType.TriangleStrip, verts, 0, 2);
票数 8
EN

Stack Overflow用户

发布于 2012-10-03 09:34:41

在我的例子中,Model.fx文件将AddressMode设置为Wrap,这搞乱了它。

下面是来自我的Model.fx的正确的sampler_state:

代码语言:javascript
复制
sampler TextureSampler = sampler_state
{
    Texture = (Texture);

    MinFilter = Linear;
    MagFilter = Linear;
    MipFilter = Linear;

    AddressU = Clamp;
    AddressV = Clamp;
};

更多信息可在此处找到:http://www.packtpub.com/article/xna-hsl

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5615719

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档