Directx12 3D 프로그래밍 입문/9.텍스처 적용5 9.13 연습문제 6 기존의 예제에서 텍스처를 추가 후 각각의 기하구조에 적용 수정 된 함수 Default.hlsl - 텍스처 및 표본 추출기, TexTransform 및 u,v 좌표 값 추가, 정점 픽셀 셰이더 수정 //텍스처 Texture2D gDiffuseMap : register(t0); //표본 추출기 SamplerState gsamPointWrap : register(s0); SamplerState gsamPointClamp : register(s1); SamplerState gsamLinearWrap : register(s2); SamplerState gsamLinearClamp : register(s3); SamplerState gsamAnisotropicWrap : register(s4); SamplerSta.. 2023. 10. 17. 9.13 연습 문제 1. 나무 상자 예제, 텍스처 좌표 들과 좌표 지정 모드, 필터링 옵션 변경 후 실험 //hlsl 6개의 표본 추출기를 셰이더에 지정 SamplerState gsamPointWrap : register(s0); SamplerState gsamPointClamp : register(s1); SamplerState gsamLinearWrap : register(s2); SamplerState gsamLinearClamp : register(s3); SamplerState gsamAnisotropicWrap : register(s4); SamplerState gsamAnisotropicClamp : register(s5); //픽셀 셰이더에서 6개를 돌아가서면 적용 float4 PS(VertexOut pin).. 2023. 10. 10. 9.12 텍스처 요약 텍스처 좌표 : 3차원 공간의 삼각형에 입혀질 텍스처 이미지의 상의 좌표를 말한다 $[0,1]^2$ 게임 시작 시점에서 이미지 자료를 ID3D12Resource 객체로 로드 후 사용 하는데 그래픽 응용 프로그램에서는 GPU 가 직접 이해 하고 다양한 이미지 형식을 지원하는 DDS 자주 쓴다 DDS 는 GPU가 직접 압축 해제 할 수 있는 이미지 압축 형식을 지원 CreateDDSTextureFromFile12 함수로 디스크에 저장된 이미지를 DDS 로 텍스처로 변환 가능 하다 카메라 의 위치에 따라 확대 및 축소가 발생 하며 텍스처 필터로 확대를 처리하고 밉맵으로 축소를 처리 하고 한다 텍스처 필터 : 256 x 256 -> 1024 x 1024 변환 시 큰 텍스처 좌표를 연산(상수 보간, 선형 보간을 .. 2023. 9. 21. 9.11 언덕 과 파도 예제 1. 땅 매쉬에 풀 텍스처를 타일 방식으로 입힌다 2. 물 텍스처가 시간 함수에 따라 스크롤 기능 풀 텍스처를 땅 매쉬에 확대해서 입히면 결함이 생기기 때문에 타일 방식으로 입힘 저 해상도 텍스처를 사용해도 확대에 의한 결함이 생기지 않게 하기 위해서 타일 방식 사용 격차 텍스처 좌표 생성 그림을 보면 xz 평면의 정점에서의 격자 정점$v_{ij}$ 텍스처 좌표어서 보면 텍스처 공간에서 ij 번째 격자 정점 좌표에 대응 실제 코드로 적용 GeometryGenerator::MeshData GeometryGenerator::CreateGrid(float width, float depth, uint32 m, uint32 n) { MeshData meshData; uint32 vertexCount = m*n; .. 2023. 9. 21. 이전 1 2 다음