Andreas Reich
4d355bf30e
DynDevice pipeline cache
2024-08-14 17:34:11 +02:00
Andreas Reich
3932f8b854
DynDevice create/destroy compute/render pipeline
2024-08-14 17:34:11 +02:00
Andreas Reich
ad5c7fe50e
DynDevice create/destroy ShaderModule
2024-08-14 17:34:11 +02:00
Andreas Reich
276753f963
DynDevice create/destroy bind group
...
bindgroup fixup
2024-08-14 17:34:11 +02:00
Andreas Reich
33f57e2305
DynDevice create/destroy pipeline layout
2024-08-14 17:34:11 +02:00
Andreas Reich
1da319f804
DynDevice create/destroy bind group layout
2024-08-14 17:34:11 +02:00
Andreas Reich
05a09338cd
DynDevice create/destroy command encoder
2024-08-14 17:34:11 +02:00
Andreas Reich
ea0df25d5e
DynDevice create/destroy for texture/textureview/sampler
2024-08-14 17:34:11 +02:00
Andreas Reich
b599d97243
DynDevice buffer operations
2024-08-14 17:34:11 +02:00
Andreas Reich
72f30a34f5
introduce DynQueue
2024-08-14 17:34:11 +02:00
Andreas Reich
4e5721350f
introduce DynSurface
2024-08-14 17:34:11 +02:00
Andreas Reich
70f7641193
impl DynSurfaceTexture for all surface textures
2024-08-14 17:34:11 +02:00
Andreas Reich
1d19a205a5
impl DynFence for all fences
2024-08-14 17:34:11 +02:00
Andreas Reich
3faed2bf52
Device now has to implement DynResource
2024-08-14 17:34:11 +02:00
Andreas Reich
df5cc12935
impl DynCommandBuffer
2024-08-14 17:34:11 +02:00
Andreas Reich
a9cb7fc855
impl DynShaderModule for all backends
2024-08-14 17:34:11 +02:00
Andreas Reich
b4c6741970
add most remaining dyn type traits
2024-08-14 17:34:11 +02:00
Andreas Reich
add54f19d8
Introduce DynDevice
2024-08-14 17:34:11 +02:00
Andreas Reich
b7e11c76df
texture & buffer transitioning always uses DynCommandEncoder now
...
collateral: ComputePass uses DynCommandEncoder during recording
2024-08-14 17:34:11 +02:00
Andreas Reich
c02ee6270b
buffer / texture copy operations for DynCommandEncoder
2024-08-14 17:34:11 +02:00
Andreas Reich
39b408218f
implement transition_textures for DynCommandEncoder
2024-08-14 17:34:11 +02:00
Andreas Reich
eeaf27749c
implement begin/end render/computepass for dyncommandencoder
2024-08-14 17:34:11 +02:00
Andreas Reich
a47a0cb3d9
render/compute pass descriptors work now with dyn types
2024-08-14 17:34:11 +02:00
Andreas Reich
bdf6710d58
introduce DynTexture & DynTextureView
2024-08-14 17:34:11 +02:00
Andreas Reich
bea9a10f90
fold ComputePassTimestampWrites & RenderPassTimestampWrites and make PassTimestampWrites usable with DynQuerySet
2024-08-14 17:34:11 +02:00
Andreas Reich
fc764b4b17
Introduce DynComputePipeline & DynRenderPipeline
2024-08-14 17:34:11 +02:00
Andreas Reich
50a1811229
Introduce DynPipelineLayout & DynBindGroup
2024-08-14 17:34:11 +02:00
Andreas Reich
f8871e6ed1
introduce DynQuerySet, associated DynCommandEncoder methods
2024-08-14 17:34:11 +02:00
Andreas Reich
9b20fd8507
DynCommandEncoder implement begin/end encoding, debug markers, various buffer operations
2024-08-14 17:34:11 +02:00
Andreas Reich
256ec6e447
Introduce DynCommandEncoder, implement index & vertex buffer ops on it
2024-08-14 17:34:11 +02:00
Andreas Reich
a4d9d38d03
BufferBarrier no longer depend on hal api struct, but directly on buffer type
2024-08-14 17:34:11 +02:00
Andreas Reich
cda9d9af65
Buffer bindings no longer depend on hal api struct, but directly on buffer type
2024-08-14 17:34:11 +02:00
Andreas Reich
d2508d9ad6
introduce DynResource & DynBuffer as first user
2024-08-14 17:34:11 +02:00
Samson
c6a3d92734
Rg11b10Float
-> Rg11b10UFloat
and deduplicate entries in TEXTURE_FORMAT_LIST
(#6108 )
...
* Resync `TEXTURE_FORMAT_LIST` to match `TextureFormat`
Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>
* `Rg11b10Float` -> `Rg11b10UFloat`
Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>
* Add changelog entry
Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>
---------
Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>
2024-08-13 08:28:55 +00:00
Erich Gubler
5533c37786
chore: satisfy clippy::collapsible_match
2024-08-13 08:42:41 +01:00
teoxoy
7c917abf52
[gl] gate usage of glFlushMappedBufferRange
...
This is done in the same way as in `map_buffer` & `unmap_buffer`.
2024-08-12 14:20:56 +01:00
teoxoy
b594497f4a
[gl] fix usage of glFlushMappedBufferRange
...
`offset` is relative to the start of the mapping not the start of the buffer.
2024-08-12 14:20:56 +01:00
Teodor Tanasoaia
94f54b3dc8
Add a separate pipeline constants error ( #6094 )
2024-08-12 09:20:36 +02:00
Mehmet Oguz Derin
34b0df277c
Support texture-compression-bc-sliced-3d
in wgpu ( #5751 )
2024-08-10 12:02:29 +02:00
James Pruitt
594476c991
Check Opengl version is 3.3+ before creating a GL context over a GL ES context ( #5996 )
...
* Retry with GLES if creating a GL context fails
* Cleaner GL context creation retry
2024-08-06 08:19:23 +00:00
Nicolas Silva
9c6ae1beae
Log spring cleaning ( #6065 )
...
Remove unused logs in wgpu-core and wgpu-hal
2024-07-31 16:24:23 +00:00
teoxoy
1cb7ebab99
[wgpu-hal] replace Instance.destroy_surface()
with Drop
impls on Surface
s
...
Only the metal and vulkan backends require
destruction code and it can go in a `Drop` impl since
the `Instance` is unused in those implementations.
2024-07-29 17:31:24 +02:00
teoxoy
ccd6d2ca48
remove BoundsCheckPolicies.image_store
2024-07-26 10:44:22 -07:00
Bruce Mitchener
3166d37754
Use workspace dependencies more. ( #6020 )
2024-07-26 18:48:01 +02:00
Marijn Suijten
2611d18b15
gles/wgl: Migrate from ancient/unmaintained winapi
to windows-rs
2024-07-25 11:15:26 +02:00
Erich Gubler
65b6e15f0f
chore: satisfy clippy::unused_qualifications
2024-07-24 12:09:15 -04:00
Erich Gubler
723995d9a9
refactor: warn on and satisfy clippy::{ptr_as_ptr,ref_as_ptr}
in wgpu-{core,hal,types}
...
…using `cargo +1.79.0 clippy --workspace --all-features --all-targets
--fix`, plus some manual changes to (1) catch some missed cases (not run
on all platforms?) and (2) `--fix` doesn't make things compile again. 😀
2024-07-24 12:09:15 -04:00
Bruce Mitchener
06649a39f3
Fix a clippy::doc_lazy_continuation
lint ( #6036 )
2024-07-24 18:08:21 +02:00
Bruce Mitchener
4f02057359
Convert some module doc comments
...
Some module doc comments were using `/*! ... */` syntax and had
leading ` *` prefixes on each line. This interferes with the
tracking of `clippy::doc_lazy_continuation`, so switch those over
to `//!` style comment blocks.
This leaves `/*! ... */` blocks alone which didn't prefix each
line.
2024-07-24 11:17:00 -04:00
Erich Gubler
7b2e08fb94
refactor: satisfy clippy::missing_transmute_annotations
( #6024 )
...
* refactor(metal): satisfy `clippy::missing_transmute_annotations`
* refactor(gles): satisfy `clippy::missing_transmute_annotations`
* refactor(metal): `metal::Surface::view`: use `ptr::cast` instead of `as`
2024-07-24 08:56:45 +02:00