I는 I 전화 두 버텍스 및 픽셀 셰이더에 프레임 당 정수 버퍼를 공유하는 경우 : VSSetConstantBuffers(0,1,&frameBuffer);
PSSetContantBuffers(0,1,%frameBuffer);
모두 HLSL에서 cbuffer 선언 : cbuffer PerFrame: register(b0)
{
float1 g_
모두 안녕하세요. HLSL에서 InterlockedCompareExchange를 사용하여 인터 로킹 된 이동 평균을 구현하려고 시도했지만 GPU가 무한 루프에 고정되었습니다. 그래서 코드는 이것이다 : 사람이 도움을 줄 수있는 경우 http://msdn.microsoft.com/en-us/library/windows/desktop/ff471409(v=vs.
난 그림자 매핑으로 뒤죽박죽을 시작했다. 나는 사용 된 알고리즘을 이해한다. 문제는 내가 HLSL 코드에서 어수선한 곳인지 알아낼 수 없다는 것입니다. 여기에 있습니다 : //These change
float4x4 worldViewProj;
float4x4 world;
texture tex;
//These remain constant
float
기하학 쉐이더를 사용하여 렌더러 (TressFX 용)를 확장하려고하므로 모든 것이 제대로 작동하는지 확인하기 위해 babysteps를 사용하고 있습니다. 따라서 삼각형을 위해 작동하는 Simpel Pass-Through Geometry Shader를 만들었지 만 출력을 볼 수 없기 때문에 어떤 이유로 선이나 점 (삼각형을 선과 점으로 변환)에 사용할 수 없
사인파를 사용하여 물결 모양의 셰이더를 만들려고합니다. 각 정점에 대해 x와 y에 대한 사인을 계산 한 다음 정점을 결과 *에 오프셋합니다. 내 정점을 상쇄했기 때문에 법선을 다시 계산해야하지만 삼각형을 사용하여 이렇게하면 부드러운 가장자리가되고 가장자리는 부드러워집니다. 필자는 어떻게 든 사인 함수를 사용하고 거기에서 3D 법선을 얻어야한다는 것을 이해합
를에 오류 "샘플러 배열 인덱스는 문자 그대로 표현해야" 이런 식으로 시작합니다. deviceContext->Dispatch(2, 0, 0); 그래서 두 그룹, 32 개의 스레드가 Texture2DArray에서 픽셀 값을 읽습니다. GroupID.x = 0의 모든 스레드는 gTextureArray [0]의 값을 읽고 GroupID.y = 0의 모든 스레드는
저는 GPU Pro 2, Chapter VI.2에서 " 픽셀 쿼드 메시지 전달"을 사용하는 Eric Penner의 "Shader Amortization"기술을 활용하려고했습니다. 기본적인 아이디어는 2 × 2 조각 쿼드에 현대적인 GPU의 프로세스 조각 쉐이더 것입니다, 당신은 다음과 같은 홀드만큼 네 조각에서 some_var의 값을 얻기 위해 DDX()와
저는 입력으로 정점의 위치, 일부 변환 행렬 및 정점의 색상에 대한 float4가있는 쉐이더를 생성하려고합니다. 위치의 조작 괜찮 작동하지만 그것을 밖으로 올바른 색상을 가져 오지. D3D11_INPUT_ELEMENT_DESC solidColorLayout[] =
{
{ "POSITION", 0, DXGI_FORMAT_R32G32B32_FLOAT
dx11 코드를 dx11로 포팅하고 삼각형을 화면에 표시하는 방법에 따라 튜토리얼을 따라했습니다. 그러나 버텍스 쉐이더에 대한 변경 사항은 무시되는 것처럼 보이므로 항상 입력 위치와 색상을 통과합니다. 입력 색상을 위치에 복사하고 출력 색상을 보라색 (아래)으로 설정하는 등의 미친 작업을 수행하더라도 정점 셰이더가 그냥 지나가고있는 것처럼 여전히 화면 가운