Code Monkey home page Code Monkey logo

Comments (5)

asny avatar asny commented on August 11, 2024

Hi. Thanks a lot! :) And great you want to use three-d.

No work has gone into audio I'm afraid, basically I know very little about audio, but I think it would be immensely cool and definitely should be supported at some point. If you want to add audio support please go ahead and do so, it will be greatly appreciated. I will of course assist as much as possible. Otherwise I will try to do it at some point but I don't know when I have the time.

Also if you make something with three-d please share it if you want and can :)

from three-d.

codec-abc avatar codec-abc commented on August 11, 2024

Thanks for the answer!

For what is worth I gave a shot at translating the MDN example about audio spatialization using the bindings made available by wasm-bindgen and it seems to work great. The only tricky part for web is that Chrome forbid to add audio to a web page prior to an user action. But since I have a html UI made with Yew this is fairly trivial to do. I just create the 3d renderer and audio stuff once the user clicked on a button that starts the whole thing.

It might be a bit more difficult on desktop as there is no de-facto API. After a quick look at crates.io, Ambisonic which add features on top of Rodio might be the best bet for a pure Rust solution. Alternatives would be using a wrapper of OpenAL (for instance alto ) or FMOD Rust wrapper. Their quality as well as their features set might need to be analyzed in details to make sure the audio is somewhat consistent between the Web and native.

from three-d.

asny avatar asny commented on August 11, 2024

That sounds surprisingly simple. Great you got it to work and thanks for sharing your experience. I'm not yet sure what to do, maybe it is better to leave audio out of three-d or maybe it is better make a simple support to make it easy for people to add audio. If choosing the latter it will be an optional dependency for desktop and wasm-bindgen for web as you also suggest.

from three-d.

codec-abc avatar codec-abc commented on August 11, 2024

As I can move on with my current solution I will close the issue. If I got something to showcase or anything meaningful to say I will post it here. Thanks again for the help!

from three-d.

asny avatar asny commented on August 11, 2024

No problem and thank for your input :)

from three-d.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.