Learning graphics programming in rust with WGPU. Having a lot of fun with my new Sway setup too!

  • Lunarflamingo@lemmy.blahaj.zoneOPM
    link
    fedilink
    arrow-up
    3
    ·
    3 days ago

    Im not sure if I’m over it quite yet lol but it’s a very feature rich language so there’s still a lot to learn. Before I learned Rust I used C which made some things easier to understand especially in regards to how the borrow checker works and why it works that way. For learning rust I used the rust book and I’ve looked at the rust book for design and rust by example at times too. After doing the book I just started on some of my own projects and that’s usually how I learn best. In C my first big project was to make a kinda basic graphics engine with OpenGL so I’m doing that in Rust now but with WGPU. So my advice would just be to start a big project to practice all your skills and make sure you understand everything. For me everything is easier in the context of putting something into practice. Let me know if you want to anything else!

    • Rainy
      link
      fedilink
      English
      arrow-up
      1
      ·
      3 days ago

      that’s some nice insight, thank you. I think I need to think of a project that isn’t like web related, I had done some webserver stuff in rust before but it didn’t help me learn much (rust is kinda a mixed bag for web dev anyway, at least server side) but I’ll try to think of smth in due time

      • Lunarflamingo@lemmy.blahaj.zoneOPM
        link
        fedilink
        arrow-up
        2
        ·
        edit-2
        3 days ago

        Yeah the book has you do web server stuff which I did find useful for learning async a bit although I think in practice most people use crates like tokio rather than implement their own parallelization. I would def recommend graphics for a project though. Its fun because the results of your work are very visual of course lol and it kinda exercises all of the skills youre learning depending on how much you get into it and try to optimize.