다중 텍셀 이미지 로드
명시적 밉 형식을 포함한 IMAGE_LOAD_BY2, BY4, PCK2, PCK4가 측정된 네이티브 2D 형식에서 실행됩니다. BY 로드는 연속된 텍셀을 반환하고, PCK 로드는 그 원시 비트를 레지스터 하나에 패킹합니다.
2026년 10월 10일까지의 저장소 노트
BY와 PCK
BY 로드는 연속된 텍셀을 별도의 VGPR에 쓰며, 각 텍셀 안에서는 채널 순서를 따릅니다. PCK 로드는 원시 성분 비트를 32비트 VGPR 하나에 패킹하며, 첫 텍셀이 최하위 비트에 들어갑니다. 부호 있는 성분은 저장 폭으로 잘립니다. UNORM 성분은 짝수 반올림 변환으로 복원합니다.
첫 텍셀은 X 방향으로 2개 또는 4개 그룹에 맞춰 내림 정렬됩니다. 범위 검사는 정렬 전의 원래 좌표를 사용합니다. 정렬 전에 그룹 전체가 들어맞아야 하고, Y가 범위 안이어야 하며, 요청한 밉이 존재해야 합니다. 유효하지 않은 그룹은 모든 결과 레지스터를 0으로 만들고 관련 없는 대상은 그대로 둡니다. 유효하지 않은 좌표는 Vulkan에 전달되기 전에 안전한 페치 피연산자로 바뀝니다.
지원 형식
DMASK 0x3인 BY2는 UNORM, SNORM, UINT, SINT의 R8과 R16, 그리고 R16 FLOAT를 다룹니다. DMASK 0xF인 BY2는 RG8 UNORM, SNORM, UINT, SINT를 다룹니다. DMASK 0xF인 BY4는 이 네 숫자 타입의 R8을 다룹니다. DMASK 0x1인 PCK2는 R8, R16, RG8의 UNORM, UINT, SINT를 다룹니다. DMASK 0x1인 PCK4는 R8 UNORM, UINT, SINT를 다룹니다. 이 로드들의 명시적 밉 변형도 같은 형식 목록을 사용합니다.
백엔드는 변환기에 정확한 네이티브 형식을 전달합니다. UINT와 SINT 샘플 이미지 뱅크를 따로 두어, 부동소수점·비교 뱅크와 나란히 정수 결과의 타입을 올바르게 유지합니다. NSA 좌표, 겹치는 주소·대상 레지스터, 일반 EXEC 마스크가 보존됩니다.
이 변경이 아닌 것
10월 9일 보고서는 공유 셰이더·백엔드 지원입니다. 게임 식별자나 셰이더 해시에 의존하지 않습니다. 이 로드만으로 게임 호환성 결과나 프레임 속도 변화를 주장하지 않습니다.
저장, 그리고 측정 범위에 없던 형식이나 디스크립터 조합은 지원되지 않는 상태로 남습니다. 가로 개더는 인접한 명령 계열이며 별도 페이지가 있습니다.
구현된 것
- 명시적 밉 유무와 관계없이 측정된 2D BY2, BY4, PCK2, PCK4 로드.
- 그룹 정렬, 검사된 범위, 유효하지 않은 그룹에 대한 0 결과.
- UINT와 SINT의 타입을 유지하는 별도의 정수 샘플 이미지 뱅크.
- EXEC 마스크, NSA 좌표, 겹치는 레지스터 쌍 보존.
아직 빠진 것
- 이 형식들의 이미지 저장은 구현되지 않았습니다.
- 측정된 표 밖의 형식과 디스크립터 모드는 거부됩니다.
- 테스트는 어떤 타이틀의 새로운 초당 프레임 수치도 입증하지 않습니다.
관련 메커니즘
이 페이지들에 대하여