TextureAddressMode
반응형
텍스쳐 좌표가 [0,1]의 범위를 벗어날 경우의 처리방법을 텍스쳐 번지모드(Texture addressing mode)라고 한다.
wrap mode : 텍스쳐 좌표 길이 1마다 반복.
mirror mode : 매 행 또는 열이 이전 행 또는 열의 미러
clamp mode : [0,1]의 범위 외의 텍스쳐 좌표에 대해서는 동일 행 또는 열의 에지 필셀에서의 컬러를 사용.
0보다 작은 텍스쳐 좌표에 대해서는 0에서의 텍스쳐 컬러를, 1보다 큰 텍스쳐 좌표에 대해서는 1에서의 좌표 사용.
border mode : [0,1]의 범위 외의 텍스쳐 좌표에 대해서는 테두리 컬러로 지정된 컬러를 사용한다.
어플에서 어드레스 모드를 설정해 줄 수 도 있지만
쉐이더해주는게 좀 더 간단하다.
.cpp
D3D10_SAMPLER_DESC samplerDesc;
samplerDesc.AddressU = D3D10_TEXTURE_ADDRESS_CLAMP;
samplerDesc.AddressV = D3D10_TEXTURE_ADDRESS_CLAMP;
samplerDesc.AddressW = D3D10_TEXTURE_ADDRESS_CLAMP;
.fx
SamplerState samLinearClamp {
Filter = MIN_MAG_MIP_LINEAR;
AddressU = Clamp;
AddressV = Clamp;
};
wrap mode
border mode - back color는 정해줄 수 있다.
mirror mode
clamp mode
wrap mode : 텍스쳐 좌표 길이 1마다 반복.
mirror mode : 매 행 또는 열이 이전 행 또는 열의 미러
clamp mode : [0,1]의 범위 외의 텍스쳐 좌표에 대해서는 동일 행 또는 열의 에지 필셀에서의 컬러를 사용.
0보다 작은 텍스쳐 좌표에 대해서는 0에서의 텍스쳐 컬러를, 1보다 큰 텍스쳐 좌표에 대해서는 1에서의 좌표 사용.
border mode : [0,1]의 범위 외의 텍스쳐 좌표에 대해서는 테두리 컬러로 지정된 컬러를 사용한다.
어플에서 어드레스 모드를 설정해 줄 수 도 있지만
쉐이더해주는게 좀 더 간단하다.
.cpp
D3D10_SAMPLER_DESC samplerDesc;
samplerDesc.AddressU = D3D10_TEXTURE_ADDRESS_CLAMP;
samplerDesc.AddressV = D3D10_TEXTURE_ADDRESS_CLAMP;
samplerDesc.AddressW = D3D10_TEXTURE_ADDRESS_CLAMP;
.fx
SamplerState samLinearClamp {
Filter = MIN_MAG_MIP_LINEAR;
AddressU = Clamp;
AddressV = Clamp;
};
wrap mode
border mode - back color는 정해줄 수 있다.
mirror mode
clamp mode
'Study > Directx 10' 카테고리의 다른 글
메쉬에 맵핑 (0) | 2010.05.23 |
---|---|
Texture Mapping (0) | 2010.05.23 |
좌표변환 (로컬 <-> 화면) (0) | 2010.05.18 |
텍스쳐 매핑. (0) | 2010.05.16 |
Texture load (0) | 2010.05.15 |
TAGS.