Incase it doesn’t show up:

  • CptBread@lemmy.world
    link
    fedilink
    arrow-up
    8
    ·
    3 months ago

    Not really. Unsafe doesn’t allow you to sidestep the borrow checker in a decent way. And even if you do it the Rust compiler assumes non aliasing and breaking that will give you loads of unexpected problems that you wouldn’t get in a language that assumes aliasing…

    Testing something that only has side effects to the local scope is probably not too hard but that isn’t the most common case for gameplay code in my experience…

    Going through another language basically has the same issues as unsafe except it’s worse in most ways as you’d need to keep up to date bindings all the time plus just the general hassle of doing it for something that could have been a 10 min prototype with most other setups…

    Now sure it’s possible that I would have better result after doing even more rust, especially with some feedback from someone who really knows it but that doesn’t really change anything in just general advice to people who is already working on something in C++ as they likely won’t have that kind of support either.

    • rhombus@sh.itjust.works
      link
      fedilink
      arrow-up
      3
      ·
      3 months ago

      Those are fair points. I haven’t used it for a little while and forgot the exact usage of unsafe code. I love Rust, but I totally agree that it’s a rough language for game dev. Especially if you’re trying to migrate an existing project to it since it requires a complete redesign of most systems rather than a straight translation.