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

Port to wgpu-rs #222

Open
kvark opened this issue Mar 5, 2019 · 8 comments
Open

Port to wgpu-rs #222

kvark opened this issue Mar 5, 2019 · 8 comments
Labels

Comments

@kvark
Copy link
Collaborator

kvark commented Mar 5, 2019

This is a conflicting proposal with #175

Pros:

  • dog-fooding wgpu, while still relying on gfx-hal
  • all the platforms for free
  • run on the Web

Cons: NONE

@vitvakatu
Copy link
Member

@kvark any progress on this? If not, I might give it a try, possibly in several iterations.

@kvark
Copy link
Collaborator Author

kvark commented Mar 24, 2019

@vitvakatu glad to see you here!

I haven't started that port, been very busy with gfx-rs/portability, wgpu-rs, and vange-rs. For the near future, I'll be occupied with work as well as trying to integrate wgpu-rs into Gecko, so I'll not have time to do any three-rs work. Speaking of which, I'm sure it's it would be lots of run to port!

However, I can think of one thing that would be more important for the project at this stage than porting to wgpu-rs. This is - evaluation of how well the current approach worked out, a sort of mid-mortem. Obviously, it's not ideal: three.js is a JS API that doesn't always map nicely to Rust, the hidden node tree wasn't obvious for users to consider (it doesn't map to Rust owning/borrowing mechanic), and overall the model seems quite restricted in what you can do without modifying three-rs itself.

So, if you have some bandwidth to work on it, try to evaluate if three-rs turned out to be the right API to begin with. If a different project needs to be born on the ashes of it, instead, and what it would look like. Or not, and we just need to port it to wgpu-rs and simply get more cool stuff built on it!

@vitvakatu
Copy link
Member

Seems reasonable. A long time ago I tried to use Three as an engine for pretty simple Asteroids game - and some things were hard to make using current API.

So I need to look into our current API and also learn new ideas in Rust gamedev ecosystem to make a conclusion.

@Nazariglez
Copy link

Nazariglez commented Apr 15, 2019

run on the Web

Just a question, wgpu supports web? In the readme of the wgpu says that they don't support it.

@kvark
Copy link
Collaborator Author

kvark commented Apr 15, 2019 via email

@Nazariglez
Copy link

I'm working on a Cross Platform Layer (Audio, Inputs, Graphics) to use as a foundation for apps or games, and I'm looking to wgpu.rs as an alternative to webgl/opengl. Maybe in a few months. Thanks!

@dreammaker
Copy link

Hi. First of all, thanks for creating this library! It's pretty awesome that it exists!

Basically, I'm looking to start a new project using something that favors ergonomics, and it seems that the Rust library ecosystem is in flux. Gfx pre-ll changing to gfx-hal is a big part of that. I'm wondering if there have been any updates related to this issue and the likelihood that three-rs will continue to be updated. Thanks.

@kvark
Copy link
Collaborator Author

kvark commented Feb 16, 2020

@dreammaker it's not clear if three-rs will be upgraded, much depends on the contributions.

For me, it was an experiment. And the conclusion is that Rust requires its own paths to be paved and can't follow existing trails... I've been collecting some research here - https://gist.github.com/kvark/20bf1b14b04d2bc1344081a2b0d57a70

Would appreciate the discussion on how to build a new 3D engine that is good for prototyping. This would need to happen elsewhere (my preference is - on the Matrix, e.g. in #wgpu:matrix.org).

@kvark kvark pinned this issue Sep 27, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

4 participants