꼭짓점 버퍼 설정 해제
GPUBuffer
대신 null
를 GPURenderPassEncoder
또는 GPURenderBundleEncoder
의 setVertexBuffer()
에 전달하면 지정된 슬롯에서 이전에 설정된 꼭짓점 버퍼를 설정 해제할 수 있습니다. 문제 dawn:1675를 참조하세요.
// Set vertex buffer in slot 0.
myRenderPassEncoder.setVertexBuffer(0, myVertexBuffer);
// Then later, unset vertex buffer in slot 0.
myRenderPassEncoder.setVertexBuffer(0, null);
바인드 그룹 설정 해제
GPUBindGroup
대신 null
를 GPURenderPassEncoder
또는 GPURenderBundleEncoder
의 setBindGroup()
에 전달하면 지정된 슬롯에서 이전에 설정된 바인드 그룹을 설정 해제할 수 있습니다. 문제 dawn:1675를 참조하세요.
// Set bing group in slot 0.
myRenderPassEncoder.setBindGroup(0, myBindGroup);
// Then later, unset bind group in slot 0.
myRenderPassEncoder.setBindGroup(0, null);
기기 분실 시 비동기 파이프라인 생성에서 발생하는 오류 음소거
GPUDevice
의 createComputePipelineAsync()
및 createRenderPipelineAsync()
메서드는 파이프라인 생성이 완료되면 확인되는 프로미스를 반환합니다. 이제부터 분실된 기기가 최대한 작동하는 것처럼 보이게 하기 위해 GPUDevice
가 lost
일 때 비동기 파이프라인 생성 오류가 음소거됩니다. dawn issue:1874를 참고하세요.
SPIR-V 셰이더 모듈 생성 업데이트
이제 createShaderModule()
를 사용하여 SPIR-V 셰이더 모듈을 만들면 SPIR-V가 WebGPU 사양의 일부가 아니므로 '안전하지 않은 WebGPU 지원' 플래그와 함께 Chrome을 실행하지 않으면 TypeError가 발생합니다. 이 변경 전에는 SPIR-V를 사용하여 GPUInternalError가 대신 생성되었습니다.
chromium:4711911 변경을 참고하세요.
개발자 환경 개선
읽기-쓰기 스토리지 버퍼 및 쓰기 전용 스토리지 텍스처 바인딩의 꼭짓점 셰이더에서 바인드 그룹 레이아웃 바인딩의 유효성 검사 오류 메시지가 개선되었습니다. Issue dawn:1883을 참조하세요.
자동으로 생성된 레이아웃으로 파이프라인 캐싱
createRenderPipeline({ layout: "auto" })
로 만든 파이프라인은 이제 Chrome의 캐싱 메커니즘을 활용합니다. 즉, 이러한 파이프라인이 더 효율적으로 생성되고 메모리를 적게 사용합니다. 문제 dawn:1933을 참조하세요.
여명 업데이트
이제 wgpu::RequestAdapterOptionsBackendType
가 wgpu::RequestAdapterOptions
의 일부로 포함되어 애플리케이션이 어댑터를 가져올 때 특정 백엔드를 더 쉽게 요청할 수 있습니다. 다음 예와 issue dawn:1875를 참고하세요.
wgpu::RequestAdapterOptions options = {
.backendType = wgpu::BackendType::D3D12};
// Request D3D12 adapter.
myInstance.RequestAdapter(&options, myCallback, myUserData);
Node.js에 대해 몇 가지 추가 메서드가 구현되었습니다. change dawn:142465를 참조하세요.
webgpu.h C API가 불리언 값 유형을 stdbool
에서 WGPUBool
(uint32_t
)로 변경했습니다. 이러한 변경은 API가 C 및 C++에서 동등한 ABI를 보유하도록 하기 위한 것입니다.
여기에서는 주요 특징 중 일부만 다루었습니다. 전체 커밋 목록을 확인하세요.
WebGPU의 새로운 기능
WebGPU의 새로운 기능 시리즈에서 다룬 모든 사항의 목록
Chrome 125
Chrome 124
Chrome 123
- WGSL에서 DP4a 내장 함수 지원
- WGSL의 제한되지 않은 포인터 매개변수
- WGSL의 복합 요소 역참조를 위한 구문 슈가
- 스텐실 부분과 깊이 측면의 별도의 읽기 전용 상태
- 새벽 업데이트
Chrome 122
Chrome 121
- Android에서 WebGPU 지원
- Windows에서 셰이더 컴파일에 FXC 대신 DXC 사용
- 컴퓨팅 및 렌더 패스의 타임스탬프 쿼리
- 셰이더 모듈의 기본 진입점
- display-p3를 GPUExternalTexture 색공간으로 지원
- 메모리 힙 정보
- 새벽 업데이트
Chrome 120
Chrome 119
Chrome 118
Chrome 117
- 꼭짓점 버퍼 설정 해제
- 바인드 그룹 설정 해제
- 기기 분실 시 비동기 파이프라인 생성에서 발생하는 오류 음소거
- SPIR-V 셰이더 모듈 생성 업데이트
- 개발자 환경 개선
- 자동으로 생성된 레이아웃으로 파이프라인 캐싱
- 새벽 업데이트
Chrome 116
- WebCodecs 통합
- GPU 어댑터에서 기기를 반환함
requestDevice()
importExternalTexture()
가 호출되어도 동영상 재생을 원활하게 유지합니다.- 사양 적합성
- 개발자 환경 개선
- 새벽 업데이트