Autor Wątek: [DirectX11]Problem przy ustawianiu rasterizera  (Przeczytany 1257 razy)

Offline kolarz3

  • Użytkownik

# Luty 15, 2013, 21:39:26
Próbuje ustawić rasterizera interfejsem ID3D11RasterizerState. Niestety po kompilacji dostaje błędy, proszę o pomoc.
ID3D11RasterizerState* rasterState;
D3D11_RASTERIZER_DESC rasterDesc;

d3d11DevCon->RSGetState(&rasterState);
rasterState->GetDesc(&rasterDesc);

rasterDesc.FillMode=D3D11_FILL_SOLID;
rasterDesc.CullMode=D3D11_CULL_BACK;
rasterDesc.FrontCounterClockwise=FALSE;
rasterDesc.DepthBias=0;
rasterDesc.DepthBiasClamp=0.0f;
rasterDesc.SlopeScaledDepthBias=0.0f;
rasterDesc.DepthClipEnable=TRUE;
rasterDesc.ScissorEnable=FALSE;
rasterDesc.MultisampleEnable=FALSE;
rasterDesc.AntialiasedLineEnable=FALSE;

d3d11Device->CreateRasterizerState(&rasterDesc,&rasterState);
d3d11DevCon->RSSetState(rasterState);
Błędy :

Offline Mr. Spam

  • Miłośnik przetworów mięsnych

Offline BEZIMENNY45645

  • Użytkownik

# Luty 15, 2013, 23:54:45
To chyba nie jest kwestia ustawienia rasteryzera, tylko raczej złe wykorzystanie wskaźników.

Offline kolarz3

  • Użytkownik

# Luty 16, 2013, 01:08:35
Jak wykomentowałem :
d3d11DevCon->RSGetState(&rasterState);
        rasterState->GetDesc(&rasterDesc);
To program zadziałał. Dziwne.

Offline Krzysiek K.

  • Moderator
    • DevKK.net

# Luty 16, 2013, 02:03:38
Cytuj
Dziwne.
Ani trochę nie dziwne. Jeżeli nie ustawiłeś wcześniej żadnego raster state, to zwróciło Ci pusty wskaźnik. Odpalenie GetDesc z NULLowego wskaźnika oczywiście kończy się totalną klęską.

Offline kolarz3

  • Użytkownik

# Luty 16, 2013, 10:06:28
Teraz mam kolejne pytanie. Chciałem zmienić ustawienia rasterizera by móc włączyć antyaliasing. Ale efekt końcowy nie jest wystarczająco zadowalający. Czy istnieje jakiś lepszy sposób na wygładzenie tych lini(robię program który rysuje funkcję)?
Przykład funkcji : 1/cos(x)