SharpDX:加载.obj文件的奇怪结果

时间:2016-05-11 11:56:38

标签: c# directx rendering sharpdx wavefront

在SharpDX中加载.obj文件时得到奇怪的结果。它变得半透明。我只是想不通问题。看起来法线在某些面上是倒置的,但我不确定。我也尝试复制顶点并反转每个法线,但没有任何帮助。难道我正在做错误的抽奖电话吗?我为场景中的每个物体画画,然后我就把它呈现出来。

Example 1Example 2

经过一些测试,我认为它也可能是着色器。但就像我已经说过我不确定。 这是Shadercode:

cbuffer data :register(b0)
{
    float4x4 worldViewProj;
};

struct VS_IN
{
    float4 position : POSITION;
    float2 texcoord : TEXCOORD;
};

struct PS_IN
{
    float4 position : SV_POSITION;
    float2 texcoord : TEXCOORD;
};

//texture
Texture2D textureMap;
SamplerState textureSampler
{
    Filter = MIN_MAG_MIP_LINEAR;
    AddressU = Wrap;
    AddressV = Wrap;
};

PS_IN VS( VS_IN input)
{
    PS_IN output = (PS_IN)0;

    output.position = mul(worldViewProj,input.position);
    output.texcoord=input.texcoord;

    return output;
}

float4 PS( PS_IN input ) : SV_Target
{
    return textureMap.Sample( textureSampler, input.texcoord );
}

我也是shader的新手。

1 个答案:

答案 0 :(得分:0)

我解决了这个问题。通过将DepthStencilView初始化为设备

,未初始化ZBuffer