Nieskonfigurowany bufor wierzchołków
Przekazanie null
zamiast GPUBuffer
na setVertexBuffer()
na GPURenderPassEncoder
lub GPURenderBundleEncoder
umożliwia anulowanie wcześniej ustawionego bufora wierzchołków w danym boksie. Zapoznaj się z problemem świt:1675.
// Set vertex buffer in slot 0.
myRenderPassEncoder.setVertexBuffer(0, myVertexBuffer);
// Then later, unset vertex buffer in slot 0.
myRenderPassEncoder.setVertexBuffer(0, null);
Usuń grupę powiązań
Przekazanie null
zamiast GPUBindGroup
na setBindGroup()
na GPURenderPassEncoder
lub GPURenderBundleEncoder
pozwala cofnąć ustawienie wcześniej ustawionej grupy powiązań w danym przedziale. Zapoznaj się z problemem świt:1675.
// Set bing group in slot 0.
myRenderPassEncoder.setBindGroup(0, myBindGroup);
// Then later, unset bind group in slot 0.
myRenderPassEncoder.setBindGroup(0, null);
Wycisz błędy tworzenia potoku asynchronicznego w przypadku utraty urządzenia
Metody createComputePipelineAsync()
i createRenderPipelineAsync()
metody GPUDevice
zwracają obietnicę, która kończy się po zakończeniu tworzenia potoku. Od teraz błędy wynikające z tworzenia potoku asynchronicznego będą wyciszone, gdy GPUDevice
będzie lost
, aby utracone urządzenia działały jak najlepiej. Zobacz problem o świcie:1874.
Aktualizacje dotyczące tworzenia modułu cieniowania SPIR-V
Tworzenie modułu cieniowania SPIR-V z użyciem createShaderModule()
powoduje teraz błąd typu, chyba że uruchomisz Chrome z obsługą „Unsafe WebGPU Support” flag, ponieważ SPIR-V nie jest częścią specyfikacji WebGPU. Przed tą zmianą używanie SPIR-V powodowało wygenerowanie błędu GPUInternalError.
Zobacz zmianę chromium:4711911.
Poprawianie wrażeń deweloperów
Komunikat o błędzie weryfikacji dotyczący powiązań układu grup powiązań w cieniowaniu wierzchołków został ulepszony pod kątem buforów pamięci do odczytu i zapisu oraz wiązań tekstur pamięci tylko do zapisu. Zobacz problem od świtu:1883.
Buforowanie potoków z automatycznie generowanym układem
Potoki utworzone za pomocą createRenderPipeline({ layout: "auto" })
korzystają teraz z mechanizmów buforowania w Chrome. Oznacza to, że te potoki będą tworzone wydajniej i zużywają mniej pamięci. Zobacz problem: świt:1933.
Aktualizacje o świcie
Interfejs wgpu::RequestAdapterOptionsBackendType
jest teraz częścią pakietu wgpu::RequestAdapterOptions
, co ułatwia aplikacjom wysyłanie żądań do konkretnego backendu po uzyskaniu adaptera. Zobacz ten przykład i problem świt:1875.
wgpu::RequestAdapterOptions options = {
.backendType = wgpu::BackendType::D3D12};
// Request D3D12 adapter.
myInstance.RequestAdapter(&options, myCallback, myUserData);
Na potrzeby środowiska Node.js wdrożyliśmy kilka dodatkowych metod. Zobacz zmianę daty:142465.
Interfejs API webgpu.h C zmienił typ wartości logicznych z stdbool
na WGPUBool
, czyli na uint32_t
. Ta zmiana ma zapewnić, że interfejs API ma odpowiedni interfejs ABI w języku C i C++.
To tylko niektóre z najważniejszych informacji. Zapoznaj się z pełną listą zatwierdzeń.
Co nowego w WebGPU
Lista wszystkiego, co zostało omówione w serii Co nowego w WebGPU.
Chrome 128
- Eksperymentowanie z podgrupami
- Wycofywanie odchylenia ustawień głębi w przypadku linii i punktów
- Ukryj nieprzechwycony błąd w Narzędziach deweloperskich w przypadku funkcji preventDefault
- Testuj najpierw próbkowanie WGSL, a potem jedno i drugie.
- Informacje o świcie
Chrome 127
- Eksperymentalna obsługa OpenGL ES na Androidzie
- Atrybut informacji o karcie GPU
- Ulepszenia współpracy WebAssembly
- Poprawione błędy kodera poleceń
- Informacje o świcie
Chrome 126
- Zwiększanie limitu maxTextureSlateWarstwy
- Optymalizacja przesyłania buforów w backendzie Vulkan
- Skrócony czas kompilacji shadera
- Przesłane bufory poleceń muszą być unikalne
- Informacje o świcie
Chrome 125
Chrome 124
- Tekstury pamięci masowej przeznaczone tylko do odczytu oraz do odczytu i zapisu
- Obsługa pracowników Service Worker i pracowników współużytkowanych
- Nowe atrybuty informacji o adapterze
- Poprawki błędów.
- Informacje o świcie
Chrome 123
- Obsługa wbudowanych funkcji DP4a w języku WGSL
- Nieograniczone parametry wskaźnika w WGSL
- Składnikowy cukier do dereferencji elementów złożonych w WGSL
- Oddzielny stan tylko do odczytu w przypadku elementów związanych z szablonem i głębią
- Informacje o świcie
Chrome 122
- Zwiększanie zasięgu dzięki trybowi zgodności (funkcja w trakcie opracowywania)
- Zwiększanie limitu maxVertexAttributes
- Informacje o świcie
Chrome 121
- Obsługa WebGPU na Androidzie
- Używanie DXC zamiast FXC do kompilowania danych do cieniowania w systemie Windows
- Zapytania dotyczące sygnatury czasowej w kartach obliczeń i renderowania
- Domyślne punkty wejścia do modułów cieniowania
- Obsługuj display-p3 jako przestrzeń kolorów GPUExternalTexture
- Informacje o stertach pamięci
- Informacje o świcie
Chrome 120
- Obsługa 16-bitowych wartości zmiennoprzecinkowych w WGSL
- Przesuwaj granice
- Zmiany stanu szablonu z głębokością
- Aktualizacje informacji o karcie
- Kwantyzacja zapytań dotyczących sygnatury czasowej
- Funkcje sprzątania przed wiosną
Chrome 119
- Filtrowalne 32-bitowe tekstury zmiennoprzecinkowe
- format wierzchołkowy unorm10-10-10-2
- Format tekstury rgb10a2uint
- Informacje o świcie
Chrome 118
- Obsługa HTMLImageElement i ImageData w
copyExternalImageToTexture()
- Eksperymentalna obsługa tekstury pamięci do odczytu i zapisu oraz tylko do odczytu
- Informacje o świcie
Chrome 117
- Nieskonfigurowany bufor wierzchołkowy
- Nieskonfigurowana grupa powiązań
- Wyciszaj błędy tworzenia potoku asynchronicznego w przypadku utraty urządzenia
- Zmiany związane z tworzeniem modułu cieniowania SPIR-V
- Polepszanie obsługi dla programistów
- Potoki pamięci podręcznej z układem generowanym automatycznie
- Informacje o świcie
Chrome 116
- Integracja z WebCodecs
- Utracone urządzenie zwrócone przez GPUAdapter
requestDevice()
- Odtwarzaj płynnie po wywołaniu
importExternalTexture()
- Zgodność ze specyfikacją
- Polepszanie obsługi dla programistów
- Informacje o świcie
Chrome 115
- Obsługiwane rozszerzenia języka WGSL
- Eksperymentalna obsługa interfejsu Direct3D 11
- Domyślnie używaj dyskretnego GPU przy zasilaniu sieciowym
- Polepszanie obsługi dla programistów
- Informacje o świcie
Chrome 114
- Optymalizacja JavaScriptu
- Funkcja getCurrentTexture() w nieskonfigurowanym obszarze roboczym powoduje zgłoszenie nieprawidłowego stanu błędu
- Aktualizacje WGSL
- Informacje o świcie