ruffle/render/wgpu/src
Aaron Hill e488cc9f7a wgpu: Allow unaligned writes to IndexBuffer3D
wgpu requires buffer copy sizes and offsets to be 4-byte aligned.
Unfortunately, ActionScript can perform 2-byte aligned uploads
into an IndexBuffer3D.

To support this, we now keep a copy of the IndexBuffer3D on the CPU.
When performing an upload to the buffer, we round the offset down
and the size up to the nearest 4-byte aligned value. The cpu buffer
is used to fill out the write with existing data, so that we don't
corrupt the contents of the GPU buffer.

To avoid introducing a new RefCell, I've changed IndexBuffer3D
to use a `Box` instead of an `Rc` to store the trait object.
This allows us to pass a mutable reference down to the backend.
2023-05-10 18:20:29 -05:00
..
context3d wgpu: Allow unaligned writes to IndexBuffer3D 2023-05-10 18:20:29 -05:00
surface wgpu: Fix drawing a transparent bitmap with MSAA 2023-04-18 23:15:42 +02:00
backend.rs wgpu: Resize textures if they're bigger than the system supports 2023-05-05 19:03:15 +02:00
bitmaps.rs wgpu: Update wgpu to 0.16.0 and naga to 0.12.0 2023-04-25 09:24:53 -05:00
blend.rs wgpu: Implement Multiply blend mode as a trivial blend 2023-01-12 10:54:03 -05:00
buffer_builder.rs wgpu: Reuse the same vertex and index buffer for an entire mesh 2023-02-05 18:02:19 +01:00
buffer_pool.rs wgpu: Use swap_remove instead of remove for buffer pool 2023-03-31 16:57:52 +02:00
clap.rs chore: Fix `clap` update 2022-10-05 21:33:34 +03:00
descriptors.rs render: Fix blending onto BitmapData contents 2023-02-23 09:52:56 -06:00
globals.rs core: Fix Clippy lints on nightly 2023-02-13 03:38:54 +01:00
layouts.rs wgpu: Extract T->Color lookup from gradient shader to Mesh construction 2023-03-06 23:22:09 +01:00
lib.rs render: Rename PixelRegion's (min|max)_(x|y) to (x|y)_(min|max) 2023-03-31 16:57:52 +02:00
mesh.rs render: Made ShapeHandle an Arc of an internal, droppable mesh 2023-03-23 01:44:27 -07:00
pipelines.rs render: Compile a different version of 'bitmap.wgsl' for Stage3D 2023-03-19 02:15:26 -05:00
shaders.rs render: Compile a different version of 'bitmap.wgsl' for Stage3D 2023-03-19 02:15:26 -05:00
surface.rs wgpu: Fix filter texture copy size calculation 2023-04-01 11:04:55 -05:00
target.rs wgpu: Update wgpu to 0.16.0 and naga to 0.12.0 2023-04-25 09:24:53 -05:00
uniform_buffer.rs core: Fix Clippy lints on nightly 2023-02-13 03:38:54 +01:00
utils.rs wgpu: Update wgpu to 0.16.0 and naga to 0.12.0 2023-04-25 09:24:53 -05:00