0
새로운 픽셀 쉐이더를 작성하고 관리되는 directx 프로젝트에서 사용합니다.이 샘플 프로젝트를 시작하기 위해 몇 가지 기본 샘플을 얻을 수 있습니다.Managed DirectX의 쉐이더에 대한 기본 샘플
새로운 픽셀 쉐이더를 작성하고 관리되는 directx 프로젝트에서 사용합니다.이 샘플 프로젝트를 시작하기 위해 몇 가지 기본 샘플을 얻을 수 있습니다.Managed DirectX의 쉐이더에 대한 기본 샘플
기기를 만드는 방법을 알고 있다고 가정합니다.
먼저 셰이더 자체를 준비해야합니다.
약간의 샘플 픽셀 쉐이더 (ps_1_4에서 볼 수있는 픽셀 쉐이더 1.4 사용, r0은 최종 결과로 읽은 레지스터, v0는 확산 조명의 기본 색상을 저장하는 레지스터) :
ps_1_4
mov r0, v0
셰이더 어셈블리에있는이 셰이더는 조립해야합니다. 다음과 같이
Imports Microsoft.DirectX
' other code
Dim graphicsStream As GraphicsStream = Direct3D.ShaderLoader.FromString(shaderText, Nothing, Direct3D.ShaderFlags.None)
' other code.
쉐이더를 조립 한 후, 마침내 PixelShader 개체를 만들 수 있습니다 : 당신은 (당신이 그렇지 않으면 당신은 ShaderLoader 클래스를 볼 수 없습니다, D3DX 라이브러리를 참조해야 할 메모를) 다음과 같은 것을 할 수
' other code
Dim p As Direct3D.PixelShader = New Direct3D.PixelShader(Device, graphicsStream)
' other code
화소 쉐이더를 적용하기 위해 사용
장치는 Direct3D의 장치이다
' other code
Device.PixelShader = p
' other code
.
HLSL을 사용할 경우 쉐이더 컴파일에 유사한 프로세스가 적용됩니다.
편집 : 그냥 1 년 된 질문이었습니다.