이번에는 WebGPU 기능의 수가 약간 가볍게 보일 수 있지만, 곧 주요 개선사항을 도입할 예정입니다. 다음 릴리스에는 DP4a, 읽기 전용 및 읽기-쓰기 저장소 텍스처, 별도의 스텐실 및 심도 관점 제어, 3D 텍스처 슬라이스에 대한 렌더링, 셰이더 컴파일 개선과 같은 기능이 포함될 예정입니다.
그동안 헤드리스 Chrome에서 WebGPU 및 WebGL 지원을 통해 웹 AI 모델 테스트를 강화하는 방법과 Chrome에서 WebGPU가 사용 중지되거나 작동하지 않는 이유를 알아보세요.
호환성 모드로 도달범위 확대 (개발 중)
WebGPU는 최신 그래픽 API (Vulkan, Metal, D3D12)와 잘 맞지만 일부 기기에서는 이러한 API가 지원되지 않습니다. 이로 인해 특히 Windows (Chrome 사용자의 31% 가 D3D11.1 이상 없음), Android (23% 의 Vulkan 1.1 이상 없음) 및 ChromeOS (Vulkan 채택 증가)와 같은 플랫폼에서 WebGPU의 접근성이 제한됩니다.
Chrome팀은 이 문제를 해결하기 위해 D3D11 및 OpenGL ES와 같은 이전 API에서 작동하는 약간 제한된 버전의 WebGPU를 제공하여 WebGPU의 호환성 모드를 개발하고 있습니다. 그러면 WebGPU의 잠재적 사용자층이 확장됩니다.
중요한 점은 호환성 모드를 사용하는 애플리케이션은 완전히 유효한 WebGPU 애플리케이션으로 유지된다는 것입니다. 호환성 모드를 지원하지 않는 기기는 코어 WebGPU 어댑터로 원활하게 기본 설정되므로 광범위한 사용성이 보장됩니다.
<ph type="x-smartling-placeholder">maxVertexAttributes 한도 증가
GPURenderPipeline을 생성할 때 버퍼 간의 최대 총 속성 수는 기본적으로 16개입니다. 이제 지원되는 경우 maxVertexAttributes 한도를 사용하여 최대 30개까지 요청할 수 있습니다. 다음 예와 issue dawn:2223을 참조하세요.
const adapter = await navigator.gpu.requestAdapter();
if (adapter.limits.maxVertexAttributes < 30) {
// When the desired limit isn't supported, take action to either fall back to
// a code path that does not require the higher limit or notify the user that
// their device does not meet minimum requirements.
}
// Request highest limit of max vertex attributes.
const device = await adapter.requestDevice({
requiredLimits: { maxVertexAttributes: 30 },
});
Dawn 업데이트
'expose_wgsl_experimental_features'라는 새 인스턴스 전환 'allow_unsafe_apis'를 사용 설정하지 않고도 안전한 실험용 WGSL 기능을 사용할 수 있도록 인스턴스가 실험용 WGSL 기능만 노출하고 안전하지 않은 기능은 노출하도록 하기 위해 이 추가되었습니다. 전환 issue dawn:2260을 참고하세요.
Node.js용 Dawn 바인딩의 최근 개선사항은 다음과 같습니다.
GPUSupportedFeatures::getSize()
을(를) 추가했습니다.GPUAdapter
비활성이 구현되었습니다.- 이제
GPUInternalError
가 기기에 대해 올바르게 보고됩니다. - 이제 속성을 열거할 수 있습니다.
여기에서는 몇 가지 주요 사항만 다룹니다. 전체 커밋 목록을 확인하세요.
WebGPU의 새로운 기능
WebGPU의 새로운 기능 시리즈에서 다룬 모든 내용 목록
Chrome 128
- 하위 그룹 실험
- 선 및 점의 설정 깊이 바이어스 지원 중단
- preventDefault인 경우 캡처되지 않은 오류 DevTools 경고 숨기기
- WGSL에서는 샘플링을 먼저 보간하고
- Dawn 업데이트
Chrome 127
Chrome 126
Chrome 125
Chrome 124
Chrome 123
- WGSL에서 DP4a 내장 함수 지원
- WGSL의 제한되지 않은 포인터 매개변수
- WGSL에서 복합을 역참조하기 위한 구문 슈가
- 스텐실 및 깊이 측면의 별도 읽기 전용 상태
- Dawn 업데이트
Chrome 122
Chrome 121
- Android에서 WebGPU 지원
- Windows에서 셰이더 컴파일에 FXC 대신 DXC 사용
- 컴퓨팅 및 렌더링 패스의 타임스탬프 쿼리
- 셰이더 모듈의 기본 진입점
- display-p3을 GPUExternalTexture 색상 공간으로 지원
- 메모리 힙 정보
- Dawn 업데이트
Chrome 120
Chrome 119
Chrome 118
copyExternalImageToTexture()
의 HTMLImageElement 및 ImageData 지원- 읽기-쓰기 및 읽기 전용 저장소 텍스처를 실험적으로 지원합니다.
- Dawn 업데이트
Chrome 117
- 꼭짓점 버퍼 설정 해제
- 바인드 그룹 설정 해제
- 기기 분실 시 비동기 파이프라인 생성 시 오류 차단
- SPIR-V 셰이더 모듈 만들기 업데이트
- 개발자 환경 개선
- 자동으로 생성된 레이아웃으로 파이프라인 캐싱
- Dawn 업데이트
Chrome 116
- WebCodecs 통합
- GPUAdapter
requestDevice()
에서 반품한 분실 기기 importExternalTexture()
가 호출되는 경우 동영상을 원활하게 재생합니다.- 사양 적합성
- 개발자 환경 개선
- Dawn 업데이트