Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Hardware Abstraction Layer #1471

Merged
merged 48 commits into from
Jun 17, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
48 commits
Select commit Hold shift + click to select a range
569cd0c
WIP new wgpu-hal
kvark Jun 4, 2021
0ea4cac
Rework shader and pipeline creation
kvark Jun 5, 2021
bae3c69
Documentation update
kvark Jun 5, 2021
738ae2b
Surface API
kvark Jun 6, 2021
6d51fab
hal:: Fill the command buffer calls
kvark Jun 6, 2021
c61ee12
hal: transfer operations
kvark Jun 7, 2021
0a82c23
hal: port the rest of wgpu-core
kvark Jun 8, 2021
ff2a3e8
update synchronization, fix last errors in wgc
kvark Jun 8, 2021
a421c1c
Instance plumbing
kvark Jun 8, 2021
502c575
hal: bunnymark example
kvark Jun 8, 2021
a0b51ce
hal: remove the cows
kvark Jun 8, 2021
6d22984
hal: redesign the bind group descriptor
kvark Jun 8, 2021
3475d83
hal/metal: instance,adapter, and surface
kvark Jun 9, 2021
f46459c
hal/mtl: buffer, texture, and view creation
kvark Jun 9, 2021
9f90470
hal/mtl: creation of bind groups
kvark Jun 9, 2021
bdaf57d
hal/mtl: pipelines and fences
kvark Jun 10, 2021
3109b1b
hal/mtl: most of the command encoding
kvark Jun 10, 2021
782c72d
hal/mtl: queue
kvark Jun 10, 2021
3172377
hal: rename bunnymark to halmark
kvark Jun 10, 2021
006f8ab
build and clippy fixes, command buffer cleanup
kvark Jun 10, 2021
38e13a1
hal/mtl: array length support
kvark Jun 10, 2021
d88aa99
Fix rows-per-image treatment, clippy warnings
kvark Jun 10, 2021
faf8f7e
Simple API for coherent mapping
kvark Jun 10, 2021
e345ad1
hal: make example to destroy temporary views
kvark Jun 10, 2021
75b6ece
hal: Fix iOS build
kvark Jun 10, 2021
dc34042
hal/vk: instance and adapter
kvark Jun 11, 2021
9ae5e36
hal/vk: format mapping
kvark Jun 11, 2021
b4380e4
hal/vk: buffer and texture creation
kvark Jun 11, 2021
61e2e24
hal/vk: textures and samplers
kvark Jun 11, 2021
006c1ba
hal/vk: pipeline layout, object labels and logging
kvark Jun 12, 2021
4eae5a3
hal/vk: hook up gpu-descriptor
kvark Jun 12, 2021
c2bb2d5
Experimental command pool API
kvark Jun 14, 2021
d8979ca
hal/vk: command pools, clippy warnings
kvark Jun 14, 2021
9d85602
hal: re-architect command encoding and pooling
kvark Jun 14, 2021
00de159
hal/vk: pipeline creation
kvark Jun 15, 2021
668fedd
hal: rename aux to util
kvark Jun 15, 2021
a260cff
hal/vk: queue operations
kvark Jun 15, 2021
6f655e0
hal/vk: barriers and copies
kvark Jun 15, 2021
bc6bb0c
hal/vk: render passes and queries
kvark Jun 16, 2021
67dfdb9
hal/vk: debug markers, bind groups, viewports
kvark Jun 16, 2021
1952ecb
hal/vk: enable vulkan portability support on macos
kvark Jun 16, 2021
c53adda
hal/vk: draws and dispatches. Refactor query set descriptor
kvark Jun 16, 2021
fb662df
hal/vk: polishing to run halmark with no validation issues
kvark Jun 16, 2021
54d7391
Minor tweaks to make CI happy
kvark Jun 17, 2021
7410b70
fix swapchain recycling, copies, device destruction, RODS
kvark Jun 17, 2021
0b506af
hal/vk: use non-coherent-atom-size
kvark Jun 17, 2021
5578222
Switch ubuntu CI to 20.04
kvark Jun 17, 2021
220f359
Address review notes
kvark Jun 17, 2021
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,5 +4,5 @@ contact_links:
url: https://github.com/gfx-rs/naga/issues/new/choose
about: Issues with or enhancements for the shader translation.
- name: Question about wgpu
url: https://github.com/gfx-rs/wgpu-rs/discussions/new
url: https://github.com/gfx-rs/wgpu/discussions/new
about: Any questions about how to use wgpu should go here.
15 changes: 8 additions & 7 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ jobs:

android_build:
name: Android Stable
runs-on: ubuntu-18.04
runs-on: ubuntu-latest
env:
TARGET: aarch64-linux-android
PKG_CONFIG_ALLOW_CROSS: 1
Expand All @@ -35,8 +35,9 @@ jobs:
run: cargo check --manifest-path wgpu-core/Cargo.toml --features trace --target ${{ env.TARGET }}

wasm:
if: false # disable until hal/Gles backend is setup
name: Web Assembly
runs-on: ubuntu-18.04
runs-on: ubuntu-latest
env:
RUSTFLAGS: --cfg=web_sys_unstable_apis
steps:
Expand All @@ -53,7 +54,7 @@ jobs:
strategy:
fail-fast: false
matrix:
os: [macos-10.15, ubuntu-18.04, windows-2019]
os: [macos-10.15, ubuntu-20.04, windows-2019]
channel: [stable, nightly]
include:
- name: MacOS Stable
Expand All @@ -69,18 +70,18 @@ jobs:
additional_core_features:
additional_player_features:
- name: Ubuntu Stable
os: ubuntu-18.04
os: ubuntu-20.04
channel: stable
prepare_command:
additional_core_features: trace,replay
additional_player_features:
- name: Ubuntu Nightly
os: ubuntu-18.04
os: ubuntu-20.04
channel: nightly
prepare_command: |
echo "Installing Vulkan"
sudo apt-get update -y -qq
sudo add-apt-repository ppa:kisak/kisak-mesa -y
sudo add-apt-repository ppa:ubuntu-x-swat/updates -y
sudo apt-get update
sudo apt install -y libxcb-xfixes0-dev mesa-vulkan-drivers
additional_core_features: serial-pass
Expand Down Expand Up @@ -123,7 +124,7 @@ jobs:
run: cargo test -- --nocapture

docs:
runs-on: [ubuntu-18.04]
runs-on: [ubuntu-latest]
steps:
- uses: actions/checkout@v2
- name: Install latest nightly
Expand Down
4 changes: 3 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,9 @@
# Change Log

TBD:
- Merged wgpu-rs and wgpu back into a single repository
- Crates:
- Merged wgpu-rs and wgpu back into a single repository
- Replaced gfx-rs dependencies by the new `wgpu-hal`

## v0.8 (2021-04-29)
- Naga is used by default to translate shaders, SPIRV-Cross is optional behind `cross` feature
Expand Down
Loading