Leaving Rust gamedev after 3 years

https://loglog.games/blog/leaving-rust-gamedev/
>making a fun & interesting games is about rapid prototyping and iteration, rust's values are everything but that.
>procedural macros are not even "we have reflection at home".
>gui situation in rust is terrible.
>rust gamedev ecosystem lives on hype.
>global state is annoying/inconvenient for the wrong reasons.
is the rust honeymoon phase finally over for gamedevs?

POSIWID: The Purpose Of A System Is What It Does Shirt $21.68

Yakub: World's Greatest Dad Shirt $21.68

POSIWID: The Purpose Of A System Is What It Does Shirt $21.68

  1. 2 weeks ago
    Anonymous

    I don't think rust was meant for this type of shit, languages shouldn't try to be a swiss army knife. my 5 cents on the article

    • 2 weeks ago
      Anonymous

      >is the rust honeymoon phase finally over for gamedevs?
      no competent person will ever consider using rust for gamedev. it literally doesn't solve any gamedev related problems and adds more of new ones.

      Unfortunately, the rewrite-it-in-rust crowd keep desperately trying it make into an everything language. The only outcome from this will be another ceeplusplus-style complexity tarpit.

      • 2 weeks ago
        Anonymous

        Show me one(1) case of a game being rewritten in Rust.
        You have no idea what you are talking about.

        You're clearly a concern trolling idiot with no substance to your claim. I am done conversing with you. I'd tell you to retake basic Boolean logic in school, but it won't change anything.

        >Prevent (verb): keep (something) from happening or arising.
        Anon, English please, prevent crashes =/= reduce crashes.

        Rust can reduce crashes by preventing memory safety issues that would result in segmentation faults. However, it cannot keep all crashes from happening, obviously.

        It doesn't even reduce crashes. Rust always proritizes to crash instead of entering an invalid state. It is much more prone to crashing than other systems languages, which often can continue working into an undefined state.

        yes, i know how to use it. the author constantly talks about issues with the borrow checker

        >I can't count the number of cases where I've accidentally caused a crash because of a double borrow on something, and not because the code was "poorly designed to begin with", but because something else in the codebase forced a refactor, and as I was refactoring I ended up needing to also restructure my use of global state, leading to unexpected crashes.
        this never happens to me

        >this never happens to me
        This(large refactors) happens to me and I am long time Rust developer. However double borrows is a sign of code being poorly designed, and so are frequent refactors.
        Rust does require you to make a lot of important decisions out front, and if you don't fully understand what you are doing, it's easy to end up like that.

        • 2 weeks ago
          Anonymous

          the large refactors happens to me occasionally, it was all the other stank design smells that i saw kept appearing in the writeup

        • 2 weeks ago
          Anonymous

          >Show me one(1) case of a game being rewritten in Rust.
          >You have no idea what you are talking about.
          nta but I think he's talking about the people who open issues on github asking to redo everything in rust. most people refuse to do so for obvious reasons

          • 2 weeks ago
            Anonymous

            Games are very rarely hosted on GitHub.

    • 2 weeks ago
      Anonymous

      >languages shouldn't try to be a swiss army knife.
      Well, it's trying to replace C++.

    • 2 weeks ago
      Anonymous

      Yeah! (*snickers*)
      Rust was designed to be good at safety, not games or agile development!
      You can't have everything with your language. Everything is a compromise.

      • 2 weeks ago
        Anonymous

        You can have everything woth Python, C and C++. The NuLangs literally can't do gui. Top fricking kek.

        • 2 weeks ago
          Anonymous

          >lying on IQfy
          well that's not new
          Python has terrible performance
          C is not suitable for writing more complex applications if you value your time
          Cpp just sucks, don't think I've hated a lang as much as cpp. I respect js more than this shit

  2. 2 weeks ago
    Anonymous

    >is the rust honeymoon phase finally over for gamedevs?
    no competent person will ever consider using rust for gamedev. it literally doesn't solve any gamedev related problems and adds more of new ones.

    • 2 weeks ago
      Anonymous

      There are morons trying to program the rpi pico in rust so the crowd is certainly there.

  3. 2 weeks ago
    Anonymous

    Kek and I bet those 3yrs it was hyping rust and spamming g threads

    • 2 weeks ago
      Anonymous

      100%
      this whole language is fueled by blog posts and shitposts

  4. 2 weeks ago
    Anonymous

    >troons live in an echo chamber.
    Color me surprised.

  5. 2 weeks ago
    Anonymous

    Rust's whole "safety" thing is pointless for games. Safety in games is about preventing cheating and Rust doesn't help with that.
    You prevent game state cheating by having either an authoritative server or desync detection, depending on your network model. And you prevent automation cheating by detecting behaviour patterns. That's it. Rust doesn't help you there.

    • 2 weeks ago
      Anonymous

      >C++ buffer overflow remote code execution exploits in your game
      Rust stops tons of bugs that happen all the time in games

      • 2 weeks ago
        Anonymous

        by making gamedev in rust so convoluted that they never get released?

        • 2 weeks ago
          Anonymous

          Can have no bugs if there aint no program

        • 2 weeks ago
          Anonymous

          fbpp

      • 2 weeks ago
        Anonymous

        Have you tried not trying to force multiplayer in everything?

        • 2 weeks ago
          Anonymous

          You don't play games on an airgapped machine

          • 2 weeks ago
            Anonymous

            You think your web browser is that safe?

          • 2 weeks ago
            Anonymous

            No, but I trust it more than a game

          • 2 weeks ago
            Anonymous

            A game is less likely to have a specific exploit than your web browser, moron. Unless you're talking about a game with a billion downloads. Some random Steam game is not going to get a specific exploit.

          • 2 weeks ago
            Anonymous

            TF2 had an RCE bug 3 years ago lmao

          • 2 weeks ago
            Anonymous

            Wow anon, Team Fortress 2? Is that a "random" game? Let's not kid ourselves, your game will have 1000 downloads.

          • 2 weeks ago
            Anonymous

            TF2 has a built in web browser that loads in content from servers because Valve is moronic.

          • 2 weeks ago
            Anonymous

            How would a strictly single-player game have an RCE exploit when can't make remote connections?
            The original Doom never had this issue, are developers today not capable of writing quality code anymore?

          • 2 weeks ago
            Anonymous

            >airgapped
            No such thing, but I do have a separate computer on a separate network and so does anybody who plays games and isn't so glacially stupid they can drown from being rained on

      • 2 weeks ago
        Anonymous

        >Rust stops tons of bugs...
        Correction: it stops memory safety bugs, that's it.
        It doesn't prevent logic errors which are the most common bugs in video games.
        You troons should stop believing the "90% of bugs are memory bugs" propaganda from large corporations pushing Rust.

        • 2 weeks ago
          Anonymous

          Never said it stopped logic bugs but memory safety bugs tend to be logic bugs.

          You don't want your opinion changed, but I'll use any better tools I can instead of rolling around in shit that doesn't try to help me.

          • 2 weeks ago
            Anonymous

            >I need help from computer in telling computer to do as I say

          • 2 weeks ago
            Anonymous

            Only morons think they never make mistakes

          • 2 weeks ago
            Anonymous

            only morons make mistakes without noticing or learning from them, as is the case with your trauma

          • 2 weeks ago
            Anonymous

            You program in hex?

          • 2 weeks ago
            Anonymous

            >memory safety bugs tend to be logic bugs
            Memory safety bugs are memory safety bugs, logic errors are logic errors.
            Thanks for showing us how they derived the Rust propaganda number though, it's easy when you redefine what logic errors mean to inflate the real number of memory safety issues.

          • 2 weeks ago
            Anonymous

            How do you write a memory safety bug without having incorrect logic? I understand logic bugs are something else but the entire classification system isn't refined enough to differentiate some of these things. It's not propaganda, I want to use software that crashes less, doesn't have security issues, and that I can write easier with less debugging and more maintainability.

          • 2 weeks ago
            Anonymous

            >I want to use software that crashes less
            of course mindbroken troony cannot just write software that never crashes lol

          • 2 weeks ago
            Anonymous

            Memory accesses have nothing to do with logic, you could use a word as a counter but when the program gets compiled to another architecture then word means some other size
            This happens in windows and linux where int in 64bit linux is 64bits and in 64bit windows its 32bit so you have to explicitly say something u_32 or something like that

          • 2 weeks ago
            Anonymous

            If you don't check that an index is inbounds, that's simultaneously a logic and a memory error

          • 2 weeks ago
            Anonymous

            When you get an int you expect it to behave as an int would, why would you even bother with a compiler if you have to walk on eggshells?

          • 2 weeks ago
            Anonymous

            I never check if index is in bounds because usecase is unknown

          • 2 weeks ago
            Anonymous

            >I want to use software that crashes less
            Rust doesn't prevent crashes, in fact it will likely panic more than a typical C++ codebase.
            >doesn't have security issues
            Literally impossible, Rust doesn't prevent all security issues. Only memory safety ones, the rest you still have to deal with yourself.

          • 2 weeks ago
            Anonymous

            >Rust doesn't prevent crashes, in fact it will likely panic more than a typical C++ codebase.
            redpill me on this

            any sources?

            someone almost convinced me to use rust for my next project rather than C++ for the low level code.

            any actual sources? some guy from g00gle did a talk saying 2x productivity gainz with rust over C++ on new codebases from their internal stats

          • 2 weeks ago
            Anonymous

            anti-rusters just lie and make up shit about everything. you can provide them all the proof in the world that rust works, and more companies are adopting it for business reasons which prove it. but they'll keep being buck broken by crabs

          • 2 weeks ago
            Anonymous

            hows your cult treating you

          • 2 weeks ago
            Anonymous

            you're doing what i said and know you'd do. you're incapable of independent thought, every argument you make is a predictable one you cycle through every time

          • 2 weeks ago
            Anonymous

            that was my first post in the thread

          • 2 weeks ago
            Anonymous

            When you go out of bounds in C++, the optimizer miscompiles your code and makes it do random shit, but it still runs
            When you go out of bounds in Rust, it crashes
            What's hard to understand about this?

          • 2 weeks ago
            Anonymous

            In you use libraries that crash (panic) all the time for no good reason like B*vy, you will indeed get a lot of crashes.
            If you don't, you pretty much only panic on out-of-bounds array access (which would frick you over in any language).

        • 2 weeks ago
          Anonymous

          It absolutely does prevent logic bugs. The borrow checker simply isn't what you think it is.

          >it's about the way it makes certain kinds of optimizations really easy to do, especially compared to C++
          Give examples of this

          Compared to something like C++, there are a lot of referencing nuances that just don't show up in Rust because of the way value sharing is handled. For instance in C++ you have to be constantly aware of the way you pass things around, not only because of RVO frickery, but also because of copy / move constructor wrangling, etc. In rust you have the Copy and Clone traits, and they are impossible to misuse. In addition to this lifetimes make it so certain optimizations based on references are 1. trivial, and 2. can never be misused. Whereas in C++ you are unlikely to have more than a few layers of pointers because of how hard it is in practice to handle such a hierarchy, those hierarchies are trivial in Rust.

          On the other hand, most of the people who complain about Rust not being good for prototyping are trying to set up all these lifetime constructs etc from the get go, and then getting fricked in the ass by a problem they created themselves. Or alternatively they're trying to write unsafe code using safe constructs and then hitting a wall instead of just writing unsafe code in the first place.

          Rust is really good at mindbreaking people over the "safety" shit, when for me, the moment someone brings up safety as the number one reason they use rust I mentally flag them as people who haven't used the language for more than a few months, or for whom the borrow checker never clicked, and they actually think the borrow checker is actually something you consciously think about and have to actively work around.

          It is what it is.

          • 2 weeks ago
            Anonymous

            Interesting. So your approach is "unsafe everything, rewrite it later"? I'm interested to hear about how that works out in practice.

          • 2 weeks ago
            Anonymous

            How do you think people rewrite C++ and C projects in C? The first drafts are usually filled with unsafes.

            You don't need unsafe everything. What they are likely trying to do is having two mutable references to the same resource (which can be done with inner mutability by the way, but it's annoying). You can simply use a pointer for that. More often than not there's also a really easy way to do these things with regular references, except you don't see them because we are so used to C and C++.

          • 2 weeks ago
            Anonymous

            These "optimizations" you're talking about are extremely trivial

      • 2 weeks ago
        Anonymous

        >MUH EXPLOITS
        Are something the player does deliberately. If they break their own game that's on them. As to cheating, it's already been explained here:

        Rust's whole "safety" thing is pointless for games. Safety in games is about preventing cheating and Rust doesn't help with that.
        You prevent game state cheating by having either an authoritative server or desync detection, depending on your network model. And you prevent automation cheating by detecting behaviour patterns. That's it. Rust doesn't help you there.

      • 2 weeks ago
        Anonymous

        >C++ buffer overflow remote code execution
        Unless you deliberately disabled every protection, the old school "smashing the stack" style RCE hasn't been possible on modern systems for more than a decade now.

      • 2 weeks ago
        Anonymous

        there would actually need to exist a finished game in rust for that to be true, which will never happen

    • 2 weeks ago
      Anonymous

      Rust for games is not about safety, it's about the way it makes certain kinds of optimizations really easy to do, especially compared to C++, where if you want shit to be optimized you have to be prepared to write the STL from the ground up, because the ABIs are so fricked it's not even really funny at this point.

      Oh, and the best part is they will never fix any of it because they are dying on the hill of backwards compatibility.

      • 2 weeks ago
        Anonymous

        >it's about the way it makes certain kinds of optimizations really easy to do, especially compared to C++
        Give examples of this

  6. 2 weeks ago
    Anonymous

    >all the morons itt
    I've seen enough bugs in videogames and put right crashes to know you idiots need rust more than ever. Stick to your C# slop, you absolute amateur homosexuals.

    • 2 weeks ago
      Anonymous

      rust doesnt prevent crashes at all.

      • 2 weeks ago
        Anonymous

        Rust helps because the error messages tell you what to fix instead of just telling you how dumped the core is

        • 2 weeks ago
          Anonymous

          >Rust devs can't step through their code in a debugger
          >Filtered by a segmentation fault

          • 2 weeks ago
            Anonymous

            >Why would you want an instant solution when you could do it the tedious way?
            I don't want to waste time on a solved problem

      • 2 weeks ago
        Anonymous

        Based on what?

        • 2 weeks ago
          Anonymous

          Based on the fact that Rust programs can still crash?

          • 2 weeks ago
            Anonymous

            You said it doesn't prevent crashes at all. Rust programs crashing is not evidence to that claim. I ask you again, based on what?

          • 2 weeks ago
            Anonymous

            >You said it doesn't prevent crashes at all
            >Rust programs crashing is not evidence
            Anon...

          • 2 weeks ago
            Anonymous

            You're clearly a concern trolling idiot with no substance to your claim. I am done conversing with you. I'd tell you to retake basic Boolean logic in school, but it won't change anything.

          • 2 weeks ago
            Anonymous

            >Prevent (verb): keep (something) from happening or arising.
            Anon, English please, prevent crashes =/= reduce crashes.

            Rust can reduce crashes by preventing memory safety issues that would result in segmentation faults. However, it cannot keep all crashes from happening, obviously.

          • 2 weeks ago
            Anonymous

            >prevent crashes =/= reduce crashes.
            yes, it does. you don't speak english natively or you'd know the definition

          • 2 weeks ago
            Anonymous

            You wear sunscreen to prevent skin cancer, you wear protective eyewear in a machine shop to prevent eye injury. This doesn't mean you won't be harmed, but it prevents damage. Learn English.

            Rust developers have never delivered anything meaningful. They live in their own echo chamber.

            They constantly complain about how the world around them is full of unsafe C and C++ code.

            Where is the Rust alternative to PostgreSQL? To the Linux kernel? To nginx?

            Every time someone proves you wrong, you move the goal posts. It's free for you to make up lies because you can just do it again next thread. What do you have to say about all the companies that you know are using Rust?

          • 2 weeks ago
            Anonymous

            No game developers are using Rust

          • 2 weeks ago
            Anonymous

            Embark Studios is, and some other indies

          • 2 weeks ago
            Anonymous

            yes, that's what I said, nobody

        • 2 weeks ago
          Anonymous

          panic() crashes the program.

    • 2 weeks ago
      Anonymous

      >seen enough bugs in videogames
      >and put right crashes
      Rust doesn't prevent logic bugs and panic crashes, you absolute troon.

    • 2 weeks ago
      Anonymous

      Rust doesn't prevent logic errors, which are 99% of video game bugs and crashes. You are a moron like all Rust users.

  7. 2 weeks ago
    Anonymous

    >3 years of Rust gamedev
    > We built our own engine in Rust, called Comfy Engine, which we use for our games.
    People who don't use premade engines spend most of their time refactoring their engine over and over. That's what always happens, it's not specific to Rust.

    • 2 weeks ago
      Anonymous

      building engines is troontarded and what most people call an engine is just a renderer + game data loader which takes no skill or time to make because gpu already renders and every format already has a loader library for it.

      • 2 weeks ago
        Anonymous

        T. Unity asset flip slop maker.

        • 2 weeks ago
          Anonymous

          no need to sign off, I already know that you're moronic

      • 2 weeks ago
        Anonymous

        I won't disagree with that, but most people who don't use premade engines do, and instead they spend months writing and rewriting ECS systems or scene graph systems or other crap.
        I'm actually reading the article now, basically it's all crying about how ECS is a shit overcomplicated system and how it's hard to use in Rust. He even mentions the solution (literally just don't use it and have big arrays for each entity type) but he still doesn't do it for some reason. (maybe it's too much pain for him to create new arrays when he adds new entities?)

        • 2 weeks ago
          Anonymous

          >ECS
          nobody ever used this

          • 2 weeks ago
            Anonymous

            The article we're discussing is about ECS, thoughever.

          • 2 weeks ago
            Anonymous

            people who have time to write moronic articles never did anything productive

        • 2 weeks ago
          Anonymous

          I think the problem is generally people trying to optimize for something they wont even use
          For example ECS exists because the need for cache locality but if you're going to make a fricking indie game even 1000 entities on screen are a fricking joke to any modern post 2004 computer processor.
          Most engines must use those approaches because they'll run like shit if they dont but that is not the case when you're writing it from scratch which enginedevs are doing.

          • 2 weeks ago
            Anonymous

            >because they'll run like shit if they dont
            they run like shit always

          • 2 weeks ago
            Anonymous

            But even more so, there's only so many layers of complexity you can pile before even the latest multicore PC starts dragging its feet

          • 2 weeks ago
            Anonymous

            how about use simplicity? homosexual
            >hurr array shuffling must be complex in 2024
            buy an ad for your shitty ECS

          • 2 weeks ago
            Anonymous

            >1000 entities on screen
            Games don't need 1000 entities, or why does Skyrim still sell gorillions of copies every year?

        • 2 weeks ago
          Anonymous

          The hardest part of engines is the animation system. There are out of box physics libraries that are pretty advanced.

        • 2 weeks ago
          Anonymous

          >literally just don't use it and have big arrays for each entity type
          That isn't what ecs (bevy) is? Explains a lot honestly. Based article reader

        • 2 weeks ago
          Anonymous

          The difficulty hobbyists, from-scratchers etc have with ECS is that they typically view it as something that should be part of the engine (ie something that should be game-agnostic) rather than something that should be part of the game. ECS as a concept is stupidly simple, it's basically just an in-memory database where fields are aligned. ECS only becomes complicated when you try to make it game-agnostic.
          >literally just don't use it and have big arrays for each entity type
          This basically is an ECS though. All you need to change is having big arrays for the components rather than for the entities themselves. Just as easy to code, has all the benefits of ECS, and will outperform any framework. The only downside to doing things this way is that it isn't game agnostic. Trying to make an ECS that will work just as well for a AAA FPS and a solo developed RTS is where it gets complicated, and the general-purpose frameworks that accommodate this are always less performant than just having a bunch of hard-coded arrays for your components.

          I think the problem is generally people trying to optimize for something they wont even use
          For example ECS exists because the need for cache locality but if you're going to make a fricking indie game even 1000 entities on screen are a fricking joke to any modern post 2004 computer processor.
          Most engines must use those approaches because they'll run like shit if they dont but that is not the case when you're writing it from scratch which enginedevs are doing.

          I would say it's premature abstraction more-so than premature optimization. A complicated ECS like those used in the popular frameworks is always going to be less performant than just having a bunch of hard-coded arrays for each of your component types. The frameworks cannot make any assumptions about the kind of game you are trying to make. This focus on generality leads to poor performance, and the incomprehensible architectures are needed to reclaim some of that lost performance. If you don't over-generalize to begin with then you don't need to reclaim the performance lost in the name of abstraction and everything remains simple.

          • 2 weeks ago
            Anonymous

            The problem with over-generalization is that the endgame is always just re-inventing the concept of a programming language. A programming language is already the most general tool possible. We make engines etc because it's simpler to work with than trying to program everything from scratch in C, but the entire reason that an engine is simpler to work with is because it is less general. If you demand maximum generality then the best tool you can possibly create is nothing because anything you create is going to be more domain-specific than the language you used to create it. I often wonder if these types of people would find more fulfillment in language/compiler/etc design than in game design.

          • 2 weeks ago
            Anonymous

            writing game code in C is as simple as it gets, in the end you quite literally do not need more abstraction than

            float positions[PHYSICS_ENTITIES * 3];

            And anyone who will try to argue with that is incredibly moronic, API's like OpenGL and Vulkan do not work very well even with a struct of 3 floats in C++, it's only C that has 0 aliasing rules because it is the sped of programming languages that does not care about anything besides hurr it's just like bytes of this alignment bro.

          • 2 weeks ago
            Anonymous

            I'll argue with it, SoA data layout is very unergonomic

          • 2 weeks ago
            Anonymous

            There's a reason we use C++, but if you use C for a moment it makes you realize that in C++ your data should look exactly like this, if you cannot build an abstraction over it, you're not going to make it, it's really not that hard to stop being a midwit and replace a struct of 3 floats with a class pointing to 3 floats internally and having whatever interface you want, if you really need this

          • 2 weeks ago
            Anonymous

            >your data should look exactly like this
            No it shouldn't because it's a pain in the ass to work with
            Also likely to be worse for performance in most cases

          • 2 weeks ago
            Anonymous

            it has optimal performance and memory layout for sending it directly to gpu, midwit

          • 2 weeks ago
            Anonymous

            You send transform matrices to the GPU, midwit

          • 2 weeks ago
            Anonymous

            I'd like to see how you would create transform matrices better than from a flat array of positions

          • 2 weeks ago
            Anonymous

            Data for entities on the CPU is best stored in structures, not component arrays, because it better matches how you actually work with data

          • 2 weeks ago
            Anonymous

            you don't work with data, computer does, have a nice day

          • 2 weeks ago
            Anonymous

            What is this hilarious cope
            Learn to program

          • 2 weeks ago
            Anonymous

            yeah I can program and think in very abstract terms, that's why I don't need to make everything an object like a low IQ subhumans would

          • 2 weeks ago
            Anonymous

            Even though making them an object is better for performance because it matches your access patterns

          • 2 weeks ago
            Anonymous

            you're a low IQ subhuman who never made a game and don't know what computer's* access patterns are because you don't peogram

          • 2 weeks ago
            Anonymous

            When you're working with game entities, you aren't dealing with just the position in one operation. You're dealing with the position, the rotation, the color, your health, your physics body, whoever knows what else
            That's why you put them in a data structure so they're next to each other in cache
            If you put all your entity components in some SoA mess you're going to have more cache misses as you pull in from multiple different arrays just to get the data you need for an operation

          • 2 weeks ago
            Anonymous

            >what is icache and dcache

          • 2 weeks ago
            Anonymous

            something irrelevant to this conversation
            we're talking about the data cache, which is 100 times slower than the instruction cache and you're going to be doing the same operations regardless of your data layout anyway

          • 2 weeks ago
            Anonymous

            that's one way to out yourself as a fizzbuzzer who never wrote a game complex enough where icache pressure is a real problem

          • 2 weeks ago
            Anonymous

            >icache pressure is a real problem
            This is the biggest larp I've ever heard, lmao

          • 2 weeks ago
            Anonymous

            Ah yes, of course, the physics engine needs to know about the HP and inventory of each entity, lol
            Do you really believe what you say?
            How do you even use AVX instructions when everything is a heterogeneous struct, and your access pattern is doing a bunch of logic for each entity separately? Do you even use vectorization at all?

          • 2 weeks ago
            Anonymous

            An entity is a collection of sub objects that include things like health, physics, rendering, logic, AI. If your health goes to 0 you might want to change you renderering object to a corpse and change your physics object to a body on the ground. Games have a large intermingling of concerns, the article in the OP talks about this
            >How do you even use AVX instructions when everything is a heterogeneous struct
            For most code you don't, there's only a few areas of a game where you can get significant gains from vectorization

          • 2 weeks ago
            Anonymous

            >if your health goes to 0
            you will change one integer and renderer will handle it

          • 2 weeks ago
            Anonymous

            What's your point?

          • 2 weeks ago
            Anonymous

            renderer will sort all available model id's which are just integers and then render them in batches separately from your irrelevant health code, idiot

          • 2 weeks ago
            Anonymous

            Yes, what's your point? Are you even following this discussion?

          • 2 weeks ago
            Anonymous

            my point is that it isn't heavily intertwined like you want us to believe, fizzbuzzer

          • 2 weeks ago
            Anonymous

            A "entity" is something that ties all your disparate subsystems like physics, rendering, animation, audio together. An entity touches all of these systems

          • 2 weeks ago
            Anonymous

            only in fizzbuzzer mind, real games don't have such thing, they only have netcode subsystem, audio subsystem, rendering subsystem, physics subsystem and a bunch of data that needs to go through the pipeline

          • 2 weeks ago
            Anonymous

            >a bunch of data that needs to go through the pipeline
            Yes that's the "entity" I was talking about

          • 2 weeks ago
            Anonymous

            health quite literally never interacts with physics and depending on the game and layout those things can run on separate threads without any synchronization, moronic fizzbuzzer

          • 2 weeks ago
            Anonymous

            >health quite literally never interacts with physics
            health = 0, change physics body to one resembling a corpse
            everything in a game interacts, that's the point

          • 2 weeks ago
            Anonymous

            >change one integer for next frame
            yeah that totally requires your oopsie brainrot

          • 2 weeks ago
            Anonymous

            Who the frick said anything about OOP?
            I hope you're in therapy, you need it

          • 2 weeks ago
            Anonymous

            >it is the responsibility of your physics loop to swap textures and implement death logic
            Braindead Black

          • 2 weeks ago
            Anonymous

            No, it's the responsibility of the superstructure that ties them together. Read the posts you're replying to

          • 2 weeks ago
            Anonymous

            no it isn't, all game logic should be implemented as queues of commands to subsystems to process things, not whatever you imagine, moron

            >thrashing same cache lines
            Holy larp

            >game has to load x10 more data into cache just to calculate health and there's absolutely nothing wrong with that

          • 2 weeks ago
            Anonymous

            >all game logic should be implemented as queues of commands to subsystems to process things
            That would be the superstructure that ties them together, yes
            Also a terribly cumbersome architecture to work with

          • 2 weeks ago
            Anonymous

            >terribly cumbersome
            I recommend a different hobby, like knitting.

          • 2 weeks ago
            Anonymous

            Who said anything about hobbies? I'm not the hobbyist Rust developer pretending he knows how video games are made larping about cache thrashing

          • 2 weeks ago
            Anonymous

            yes you're a fizzbuzzer instead, which is worse, at least I could have a conversation with a rust dev
            t. C++ programmer

          • 2 weeks ago
            Anonymous

            You're calling everyone who tries to correct your lack of understanding about anything a fizzbuzzer
            Your opinions are straight from the ECS larpers handbook

          • 2 weeks ago
            Anonymous

            LMAO WHAT THE FRICK ARE YOU TALKING ABOUT Black person
            A minute ago you were saying you should send HP information to your fricking GPU because your physics logic somehow needs to know about monster hit points.
            You're clearly winging it at this point

          • 2 weeks ago
            Anonymous

            I never said anything close to that

          • 2 weeks ago
            Anonymous

            Not him but I think you're the lost one, buddy.

          • 2 weeks ago
            Anonymous

            >If your health goes to 0 you might want to change you renderering object to a corpse and change your physics object to a body on the ground.
            lmao, instantly, in the same fricking loop? Do you understand how crap that would even look, performance nonwithstanding? What is this amateur hour shit?
            >For most code you don't, there's only a few areas of a game where you can get significant gains from vectorization
            Yeah, like all the areas where performance matters, as in any code that touches spatial information.

          • 2 weeks ago
            Anonymous

            >lmao, instantly, in the same fricking loop? Do you understand how crap that would even look, performance nonwithstanding? What is this amateur hour shit?
            I don't even know how to respond to this, you don't know what you're talking about
            >Yeah, like all the areas where performance matters, as in any code that touches spatial information.
            Animation, AI, some spatial stuff like broadphase queries
            95% of the code you're writing in a game isn't even run enough to bother vectorizing, or can't be vectorized well

          • 2 weeks ago
            Anonymous

            >95% of the code you're writing in a game isn't even run enough to bother vectorizing
            Since it's also not the bottleneck, it is completely and utterly irrelevant to this conversation.

          • 2 weeks ago
            Anonymous

            What's your point?

          • 2 weeks ago
            Anonymous

            >What's your point?

          • 2 weeks ago
            Anonymous

            >don't even know how to respond to this, you don't know what you're talking about
            for (auto &monster : monsters) {
            monster.update_pos();
            if(monster.health <= 0) {
            monster.texture = get_corpse_tex(monster);
            }
            monster.render()
            }

            Black folk will stand there and pretend this is a sane architecture.

          • 2 weeks ago
            Anonymous

            What are you complaining precisely?

          • 2 weeks ago
            Anonymous

            >update position even if monster is dead
            >texture ID is thrashing same cache lines meant for health calculations
            >render monster right after instead of waiting to collect all monsters of same type that are dead and need to be rendered
            lmao, they really do believe this is how games must be written

            What are you complaining precisely?

            you're braindead

          • 2 weeks ago
            Anonymous

            >thrashing same cache lines
            Holy larp

          • 2 weeks ago
            Anonymous

            noooooooooooo you can't just iterate over a collection, that's nonsense!!!

          • 2 weeks ago
            Anonymous

            >lmao, instantly, in the same fricking loop? Do you understand how crap that would even look, performance nonwithstanding? What is this amateur hour shit?
            yes they all really unironically believe this, they cannot comprehend that using slightly more memory for indirection and then doing one operation in a loop that does not thrash icache will always be faster

          • 2 weeks ago
            Anonymous

            I'd call you a midwit but in typical C user fashion you're actually too stupid to even merit that title. The data structure you want to send to the GPU is going to be horribly unfriendly for how the GPU actually handles data. AND it's not even a better layout for sending it to the GPU! All that matters for sending data to the GPU is that you do it in bulk.

            C users should kill themselves. It would be eugenic for the rest of humanity.

      • 2 weeks ago
        Anonymous

        cool story now make an engine to rival unreal
        if you can't better stfu

  8. 2 weeks ago
    Anonymous

    apologize to jon blow

  9. 2 weeks ago
    Anonymous

    I think the Rust train is slowing down. The toxic community helped kill some of it too.

  10. 2 weeks ago
    Anonymous

    >enginedev blames language instead of himself

  11. 2 weeks ago
    Anonymous

    So he is detransitioning?

  12. 2 weeks ago
    Anonymous

    reminder that literally no one fricking cares about the programming language or engine you use to make your game except other losers like yourself who will never make a good game

  13. 2 weeks ago
    Anonymous

    rust political tool first and programming language second. You think that corporations that hire 3rd worlders value code quality?

  14. 2 weeks ago
    Anonymous

    I haven't even touched Rust but I could easily forsee all the problems the OP is having with it
    Some people catch on slow

  15. 2 weeks ago
    Anonymous

    >gamedev learns why games are made in C and C++

    • 2 weeks ago
      Anonymous

      If you could read you would know he advocates using C# or Lisp

      • 2 weeks ago
        Anonymous

        >Reading articles
        Um, this isn't hackernews.

      • 2 weeks ago
        Anonymous

        >C#
        >Lisp
        lmao this moron is going to learn why games are made in C and C++

        • 2 weeks ago
          Anonymous

          He's using Unity, so it's just C# game logic.

          • 2 weeks ago
            Anonymous

            >Unity
            this moron is ngmi tbh. All good games are made with either RPG Maker, Wolf RPG, or custom game engines.

          • 2 weeks ago
            Anonymous

            Ctrl+Alt+Ego was pretty good, as was Void Bastards and Filcher for me.

    • 2 weeks ago
      Anonymous

      >C#
      >Lisp
      lmao this moron is going to learn why games are made in C and C++

      why do you automatically associate c# with unity? it's a powerful alternative to c++ for engine development unless you don't want your stuff getting decompiled.

      • 2 weeks ago
        Anonymous

        >C# cannot be decompiled
        based moron

        • 2 weeks ago
          Anonymous

          I assume you meant c++ and I mean decompiled to a point where you can rebuild the game from scratch

  16. 2 weeks ago
    Anonymous

    >moron dumps 3 years of your life into making a Rust game engine without realizing it's a total productivity SUCC when writing a memory safe fizz buzz implementation requires 250k LoC and constant help from the dev 'cord
    Jesus, you'd think they'd catch on sooner.

  17. 2 weeks ago
    Anonymous

    Veloren exists and runs on shitty hardware. Seems like a testament to rusts capabilities.

    • 2 weeks ago
      Anonymous

      >Veloren exists and runs on shitty hardware.
      Wow, a Minecraft (2009) clone exists and runs on shitty hardware? Holy shit... Rust, I kneel...

  18. 2 weeks ago
    Anonymous

    >Rust dev figures out why C is the industry standard for game dev til this day
    Rust was fundamentally flawed to begin with yet many people didn't want to believe those flaws and push past those only to figure out its pointless and waste of time
    If Rust win in this timeline then this timeline will be worse than cyberpunk timeline

    • 2 weeks ago
      Anonymous

      >Rust was fundamentally flawed to begin
      how so?

    • 2 weeks ago
      Anonymous

      >>Rust dev figures out why C is the industry standard for game dev til this day
      C is not industry standard for game dev, and it hasn't really ever been.

      • 2 weeks ago
        Anonymous

        I think he meant C++

  19. 2 weeks ago
    Anonymous

    I don't want to debase myself by defending r*st, but every time I see a game dev blog about how <technical thing> sucks, it's always from a person or studio whose games are either obscure crap, or technical dumpster fires.
    Reminds me of when Proton was still novel and some devs had such an autistic hate boner for Linux that they stated an unwillingness to even consider making/patching Windows games to make them Proton-friendly. Spoiler: all of them had games with mixed to negative reviews in general.

    • 2 weeks ago
      Anonymous

      His games don't look good visually, but they appear to be complete and functioning and available for purchase, which puts him above 99.99% of other Rust developers

      • 2 weeks ago
        Anonymous

        That's a pretty low bar in game dev, where shipping games that are either broken or embarrassingly inefficient has become the norm.

        • 2 weeks ago
          Anonymous

          >That's a pretty low bar in game dev
          Depends. For a regular game dev who just makes games and uses Unity or GameMaker? Sure
          For somebody who programs and uses memelangs like Rust? Actually releasing games makes you a god

    • 2 weeks ago
      Anonymous

      There really aren't any rust games.

      • 2 weeks ago
        Anonymous

        Veloren which is also FOSS

        • 2 weeks ago
          Anonymous

          >shitty cubeworld clone that's more irrelevant than cubeworld

          • 2 weeks ago
            Anonymous

            >doesn't count...because...IT JUST DOESN'T OKAY?

          • 2 weeks ago
            Anonymous

            at least if I ask a normie about cubeworld they will remember it, lol

        • 2 weeks ago
          Anonymous

          this game redpilled me on rust. its buggier than the literal scam game it's based on which was made in 2 months.

    • 2 weeks ago
      Anonymous

      yeah, this dev doesn't do anything how i would do it. also they're going back to C# and unity anyway, only themselves to blame. no one forced you to write all this generic shit or get involved in anything like that. you could have written exactly like C code and gotten good results

      • 2 weeks ago
        Anonymous

        You can't write Rust code exactly like C code

        • 2 weeks ago
          Anonymous

          yes, you can. i do it all the time, and save on line count because i can do a lot of 3 line C code i'd write in 1 line with iterators that compiles to the same code. you don't write rust or C

          • 2 weeks ago
            Anonymous

            Rust has a thing called a borrow checker making a lot of the shit you do in C not possible

          • 2 weeks ago
            Anonymous

            yes, i know how to use it. the author constantly talks about issues with the borrow checker

            >I can't count the number of cases where I've accidentally caused a crash because of a double borrow on something, and not because the code was "poorly designed to begin with", but because something else in the codebase forced a refactor, and as I was refactoring I ended up needing to also restructure my use of global state, leading to unexpected crashes.
            this never happens to me

          • 2 weeks ago
            Anonymous

            So if you know how to use it you'd know that you can't do the same shit you do in C because of the borrow checker

          • 2 weeks ago
            Anonymous

            Use unsafe {}. And no, this does not just subvert the borrow checker.

          • 2 weeks ago
            Anonymous

            i know how to use it, write c, and write rust. the borrow checker does not get in my way. you clearly don't know 2 of the 3 things we're talking about

          • 2 weeks ago
            Anonymous

            The borrow checker exists. The borrow checker prevents you from using many programming patterns that people use in C. These are facts
            You can use unsafe, but at that point why are you using Rust

          • 2 weeks ago
            Anonymous

            >The borrow checker prevents you from using many programming patterns that people use in C
            post them

          • 2 weeks ago
            Anonymous

            for (int i = 0; i < 1; i++)

          • 2 weeks ago
            Anonymous

            for i in 0i32..1 {}

          • 2 weeks ago
            Anonymous

            not the same

          • 2 weeks ago
            Anonymous

            for i in 0i32..1 {}

            Oh right, Rust doesn't even have numerical for loops. You can't run a loop without having to perform monomorphization on some generic iterator types.
            There's no way this doesn't cause performance issues from the bloated machine code. It smells like instruction cache misses to me.

          • 2 weeks ago
            Anonymous

            >There's no way this doesn't cause performance issues from the bloated machine code. It smells like instruction cache misses to me.
            your proof

          • 2 weeks ago
            Anonymous

            >There's no way this doesn't cause performance issues from the bloated machine code
            All of it can be statically compiled out

            Go play with Rust for a little bit on compiler explorer, try some for loops with different types. You may notice it tends to generate more machine code than both C and C++ for basically the same functionality, mostly due to monomorphization of generic types.

          • 2 weeks ago
            Anonymous

            I haven't actually used Rust but I've made a language with just one generic "loop" that works on iterators and they can get statically compiled down to the same thing as a regular loop

          • 2 weeks ago
            Anonymous

            >There's no way this doesn't cause performance issues from the bloated machine code
            All of it can be statically compiled out

          • 2 weeks ago
            Anonymous

            The compiler isn't that dumb.

          • 2 weeks ago
            Anonymous

            Now do it with more complex types.

          • 2 weeks ago
            Anonymous

            Rust is an abortion

          • 2 weeks ago
            Anonymous

            Post your games.

          • 2 weeks ago
            Anonymous

            This sums up the problem that I have with most complaints about the language. This person would be writing buggy data races causing corruption in the background in another language, they don't actually want to do the work of making sure their code is correct.

          • 2 weeks ago
            Anonymous

            >data races
            not all code needs to be threaded

          • 2 weeks ago
            Anonymous

            he's writing a threaded engine. even if he wasn't, the checker is there to prevent things like editing over a collection you're mutating which would invalidate pointers

          • 2 weeks ago
            Anonymous

            who the frick does uses threads in video games

          • 2 weeks ago
            Anonymous

            >he's writing a threaded engine
            he shouldnt be, infact I think of his points is about that

          • 2 weeks ago
            Anonymous

            >he's writing a threaded engine
            He isn't, that's one of his points.
            >Global state is annoying/inconvenient for the wrong reasons, games are single threaded

            then what is he doing with mutexes and getting double borrow errors

          • 2 weeks ago
            Anonymous

            >In game code one ends up having to wrap things in a Mutex<T> or AtomicRefCell<T> not to "avoid issues they'd run into otherwise if they were writing C++ and forgot to synchronize access", but rather just to satisfy the compiler's all encompassing desire to make everything threadsafe, even when there isn't a single thread::spawn in the whole codebase.
            There's only one mention of mutex in the article and it's a valid complaint: enforcing thread safety at the language level is pretty much useless for single-threaded applications.

          • 2 weeks ago
            Anonymous

            the xor mutability rules also prevent other issues though. i understand not wanting to be subject to those constraints in single threaded code but it's not just for multithreading. like iterating over a vec while trying to insert/remove

          • 2 weeks ago
            Anonymous

            >like iterating over a vec while trying to insert/remove
            the "just don't do it" rule has never failed me here

          • 2 weeks ago
            Anonymous

            >like iterating over a vec while trying to insert/remove
            That's a logic error in single-threaded code and could have easily been just a compiler warning (or error if vec<T> was a language primitive). Sure, you may get garbage results out of your loop if you do that, but it's not a memory safety issue because you're bounds checking the vec on every access.

          • 2 weeks ago
            Anonymous

            it is a memory safety issue with iterators in c++ because you're holding references to invalidated pointers if the collection is moved by a resize

          • 2 weeks ago
            Anonymous

            >trying to modify something you're iterating over
            this is actually possible to solve by writing a custom iterator and is in fact a logic error

          • 2 weeks ago
            Anonymous

            >this is actually possible to solve by writing a custom iterator and is in fact a logic error

            Memory accesses have nothing to do with logic, you could use a word as a counter but when the program gets compiled to another architecture then word means some other size
            This happens in windows and linux where int in 64bit linux is 64bits and in 64bit windows its 32bit so you have to explicitly say something u_32 or something like that

            >Memory accesses have nothing to do with logic

            This is exactly what I mean

          • 2 weeks ago
            Anonymous

            if vector reallocates you will most likely get a segmentation fault in next PAGE_SIZE bytes and then shit yourself because people who make these nonproblems into real problems don't know how to fix them, it's greay that rust exists and so we don't have to deal with those low IQs

          • 2 weeks ago
            Anonymous

            >he's writing a threaded engine
            He isn't, that's one of his points.
            >Global state is annoying/inconvenient for the wrong reasons, games are single threaded

          • 2 weeks ago
            Anonymous

            I mean, you can still use unsafe and cast references to pointers and just write arbitrary bytes everywhere. Obviously rust is a pretty strong problem, but if you look at it hard enough you can basically do things like treat everything as untyped void ptr garbage like C.

      • 2 weeks ago
        Anonymous

        >you could have written exactly like C code and gotten good results
        Yeah. I really don't understand what's so hard about putting the whole state in a big struct and having it available at all times.

  20. 2 weeks ago
    Anonymous

    Rust developers have never delivered anything meaningful. They live in their own echo chamber.

    They constantly complain about how the world around them is full of unsafe C and C++ code.

    Where is the Rust alternative to PostgreSQL? To the Linux kernel? To nginx?

    • 2 weeks ago
      Anonymous

      >how the world around them is full of unsafe C and C++ code.
      Including the Rust compiler's backend (LLVM) by the way, which has a couple million of lines of C++.

  21. 2 weeks ago
    Anonymous

    >author says people will dismiss his problems saying “the borrow checker is not the problem, you are” and “rust doesn’t get in the way”
    >literally morons in the thread doing exactly what he said
    lmao rusttroons seething

  22. 2 weeks ago
    Anonymous

    won't the need for rust go away in a few years once we have perfect static analysis with LLMS for bad patterns, code smells, overflows etc? then just use whatever you want/whatever you're most productive in

    • 2 weeks ago
      Anonymous

      >once we have perfect static analysis with LLMS for bad patterns, code smells, overflows etc
      this is such an ignorant comment on so many levels

      • 2 weeks ago
        Anonymous

        not an argument

  23. 2 weeks ago
    Anonymous

    >Rust
    AAAAAAAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHA
    TAKE
    YOUR
    TROON
    LANGUAGE
    AND
    ...
    FRICK OFF!!!!!!!!!!!!!!!!!!
    FRICKING JOKE! YOUR LANGUAGE WAS ENGINEERED BY MEN WEARING DRESSES, THINKING THIS MAKES THEM WOMEN!!!!!!!!!

  24. 2 weeks ago
    Anonymous

    Yeah rust for gamedev just seems like a bad idea and mostly pointless. You typically want to write working code even if it's a messy hack and prototype fast. Rust is just not the right tool for that job.

  25. 2 weeks ago
    Anonymous

    what kind of moron started using Rust for games 3 years ago and kept banging his head in a wall for 3 years??
    if you want to make a "fun and interesting" games then you pick up a mature game engine and use the language you are already familiar with, then you can actually dedicate your time to make a fricking game!

  26. 2 weeks ago
    Anonymous

    isn't gamedev all about using a stable LTS base until you release your game?
    Rust is not like that at all.

    • 2 weeks ago
      Anonymous

      no it's about getting shit done and rust is not good for that

      • 2 weeks ago
        Anonymous

        yes that's why I said LTS stuff.
        Don't forget up until a while ago the linux kernel was still using C99(or was it 89?) even though C11 had a spec out for over a decade.

        Productive developers can deal with working on old ass java if they need to.

  27. 2 weeks ago
    Anonymous

    Rust exposed. Meanwhile I'm eating good with C# monogame. It just werks and no a 5ms pause after 60 seconds of garbage literally doesn't matter for 99.98% of games.

  28. 2 weeks ago
    Anonymous

    @100200387
    maybe you should go to a doctor if you heard anything, then you might stop hearing your own larps such as saying that dcache is irrelevant but then talking about data cache as if that's not what dcache is

    • 2 weeks ago
      Anonymous

      I said instruction cache was irrelevant, are you having trouble reading?

  29. 2 weeks ago
    Anonymous

    @100200425
    maybe for your fizzbuzzer programs it is, but when morons like you start making games in their oopsie code, suddenly icache starts thrashing and your game runs at least x100 slower than if it was made by someone with a brain

    • 2 weeks ago
      Anonymous

      Nope, instruction cache is barely worth talking into consideration, maybe if you're doing something extremely stupid like super deep virtual method hierarchies for trival operations
      Data cache is what you should care about for performance (Although even that has been way overblown)

  30. 2 weeks ago
    Anonymous

    @100200477
    >like super deep virtual method hierarchies for trival operations
    yes that's exactly what you do since you're too mindbroken to just use a flat array of data

    • 2 weeks ago
      Anonymous

      No that's not what I do moron

  31. 2 weeks ago
    Anonymous

    @100200515
    yes, not yet, you're just a fizzbuzzer that never did anything, but if you ever get to actually programming that's exactly what you will do since you're too braindead to not be a contrarian, quite ironic that optimal game programming patterns didn't change since N64 and yet you still can't comprehend them.

    • 2 weeks ago
      Anonymous

      Optimal game programming patterns have changed since the N64
      The whole "storing components in a SoA structure" meme is new, because data cache speeds are now relatively much slower and computers have SIMD processors which can take advantage of this

  32. 2 weeks ago
    Anonymous

    @100200561
    sorry, you're right, that's why this new thing runs x6 better on actual N64 than what midwits like you do, ironic, isn't it? https://www.youtube.com/watch?v=t_rzYnXEQlE

    • 2 weeks ago
      Anonymous

      Give me a timestamp to what you're talking about

  33. 2 weeks ago
    Anonymous

    @100200584
    I'm talking about the entire video of course, zoom zoom

    • 2 weeks ago
      Anonymous

      at 9:55 he talks about data cache, he's saying exactly what I'm saying, put your variables next to each other in a structure, don't put them in disparate arrays
      Also doesn't show any benches for this, like I said, data cache being slow is a recent issue so he's cargo culting modern best practices without testing it here

  34. 2 weeks ago
    Anonymous

    gaydevs seething at this post

    • 2 weeks ago
      Anonymous

      >Fixed a crash that occurred when trying to attack a neutral faction village or caravan party while being a mercenary.
      what are the odds that this was nullptr dereference because they used the soulless OOPsie code for everything? LMAO
      @100200626
      Ah of course, I was weary of posting this video because a midwit like you wouldn't understand that N64 isn't a modern computer.

      • 2 weeks ago
        Anonymous

        >you wouldn't understand that N64 isn't a modern computer.
        That's exactly what I'm saying
        Putting shit in arrays to optimize for data cache and SIMD is a modern computer thing, not an N64 thing, so him doing it on an N64 isn't going to make much of a difference

    • 2 weeks ago
      Anonymous

      This guy is a dumbfrick. Bannerlord is written by Turkish uni students and I'm pretty sure a good portion of the game logic is C#.

    • 2 weeks ago
      Anonymous

      >The Cnile's Prayer
      That bug didn't happen.
      And if it did, it wasn't that bad.
      And if it was, that's not a big deal.
      And if it is, that's not my fault.
      And if it was, Rust couldn't have prevented it.
      And if it could have, I wouldn't use it anyway because you're a troony.

      • 2 weeks ago
        Anonymous

        for the kind of problems that exist in videogame programming, rustrannies would replace pointers/references with indices into arrays and then they would risk getting a segfault because now nothing is checked at compile time.

        • 2 weeks ago
          Anonymous

          no, they'd be bounds checked because it's idiomatic to use get() and handle the None case

          • 2 weeks ago
            Anonymous

            >it is idiomatic to have bounds check on every memory access
            no wonder there's no relevant games in rust, even those that exist run like absolute shit

          • 2 weeks ago
            Anonymous

            bounds checking is cheap

          • 2 weeks ago
            Anonymous

            in languages like C++ where you do the sane thing of iterating over dumb arrays and then the bound check is actually just your for loop exit condition and not only just cheap, but free

          • 2 weeks ago
            Anonymous

            which is what rust does too. you'd iterate over collections. you can't even keep your points straight because otherwise you're storing pointers to random shit that's out of cache which is a bad access pattern anyway (same as indices)

          • 2 weeks ago
            Anonymous

            you cannot iterate over collections, midwit

          • 2 weeks ago
            Anonymous

            found the end of your argument chain lmao

          • 2 weeks ago
            Anonymous

            yes it's an efficient circular buffer and you somehow overstepped into beginning that was already read yet not overwrtten yet since you're a nocoder who can't program

          • 2 weeks ago
            Anonymous

            >you can't iterate over collections
            is meaningless nonsense

          • 2 weeks ago
            Anonymous

            yes everything you posted ITT is meaningless nonsense, have a nice day fizzbuzzer

          • 2 weeks ago
            Anonymous

            >you cannot iterate over collections
            What did he mean by this?

          • 2 weeks ago
            Anonymous

            he's been long out of arguments and just calling everyone fizzbuzzers lmao

            yes everything you posted ITT is meaningless nonsense, have a nice day fizzbuzzer

          • 2 weeks ago
            Anonymous

            you will understand when you write something more complex than fizzbuzz and understand how computers work, and that they are in fact not just a faster PDP11

          • 2 weeks ago
            Anonymous

            when your talking points are so dumb and repetitive, it's impossible to tell if there's a human typing the post or a bot

          • 2 weeks ago
            Anonymous

            yes I have a mirror at home too, you can stop acting like an NPC anytime

          • 2 weeks ago
            Anonymous

            But I can iterate over collections, I do it all the time.

          • 2 weeks ago
            Anonymous

            >my fizzbuzz has collections
            impressive, anon, truly

          • 2 weeks ago
            Anonymous

            If I can do it, you can do it too. Believe in yourself.

          • 2 weeks ago
            Anonymous

            knew that'd be your next inane reply lol

            you're doing what i said and know you'd do. you're incapable of independent thought, every argument you make is a predictable one you cycle through every time

    • 2 weeks ago
      Anonymous

      does this nocoder really think most crashes and bugs are cause by memory unsafety?
      fricking midwits on HN man

  35. 2 weeks ago
    Anonymous

    skill issue

  36. 2 weeks ago
    Anonymous

    >the video is fake and it made no difference
    I still don't understand what's the point of larping about knowing things while being an obvious fizzbuzzer who never wrote a program more complex than fizzbuzz.

    • 2 weeks ago
      Anonymous

      >>the video is fake
      Did I say that?
      He didn't benchmark him rearranging data members, he just said that he did it
      He showed benchmarks for a lot of other things, not that

  37. 2 weeks ago
    Anonymous

    there are legitimate criticisms of game dev in rust. but its moot because all the other game engines are worse

  38. 2 weeks ago
    Anonymous

    >NOOOO WE DONT WANT TO WRITE CODE
    Ok, back to C++.
    >NOOOOOOO ITS BUGGY
    Ok, back to C#.
    >NOOOOOOOO IT HAS A GC
    Ok, C with embedded Lua.
    >NOOOOOOOOO WE NEED HOT RELOADING, FAST ITERATION, FAST COMPILE TIMES, LOAD 100 GB TEXTURES EVERY 5 SECONDS
    >WE WANT THE SPEED OF C, THE SEMANTICS OF JAVASCRIPT, AND THE DEBUGGABILITY OF COMMON LISP
    Just execute all gamedevs with extreme prejudice.

    • 2 weeks ago
      Anonymous

      >WE WANT THE SPEED OF C, THE SEMANTICS OF JAVASCRIPT, AND THE DEBUGGABILITY OF COMMON LISP
      Thank God for C++ offering all that.

      • 2 weeks ago
        Anonymous

        but C++ is actually faster than C when you aren't a nocoder so saying "speed of C" is sort of insulting

        • 2 weeks ago
          Anonymous

          True, but stop giving our HPC Chads secrets to the plebs.

  39. 2 weeks ago
    Anonymous

    Why the frick would you need reflection? You don't need that shit for game dev at all (as a Mercedes-Benz S-Class owner)

  40. 2 weeks ago
    Anonymous

    >fizzbuzzer trying to correct me
    what did he mean by this

  41. 2 weeks ago
    Anonymous

    I am really curious what issues they ran into with global state, considering you can do global state in the exact same way you can with any other language in the world.

    >3 years
    >doubt
    Or maybe just trash programmer.

    • 2 weeks ago
      Anonymous

      in Rust, to have global variable, you're basically forced to have a Mutex because um, because WHAT IF another thread accessed this?

      • 2 weeks ago
        Anonymous

        you're not

      • 2 weeks ago
        Anonymous

        What the frick are you talking about? Pointers exist in Rust. Why do you try criticizing something you know nothing about?

        Also how is having a Mutex hard? Lmao

  42. 2 weeks ago
    Anonymous

    >um actually, if you bypass all rust features and do C type programming then it's not that bad
    I can already do this in C++

    • 2 weeks ago
      Anonymous

      You're moronic, and unsafe doesn't do what you think it does. Even if it did your argument is still moronic, but I don't expect you to ever understand why.

      Again, you don't know the language you're trying to criticize. Actual Rust derragement syndrome at play.

      Instead of trying to discuss shit you don't know anything about, go email the C++ commitee and tell them to fix the STL. That would be about 10 times more productive.

      • 2 weeks ago
        Anonymous

        I'll have you know we take professional pride in not having strided iterators after 30 years of STL

        • 2 weeks ago
          Anonymous

          >fizzbuzzing troony larping as professional
          >cannot write his own specific strided iterator for his specific problem
          it's like you aren't even trying

          • 2 weeks ago
            Anonymous

            Exactly the sepples pride I was talking about. It doesn't even make sense
            >yes of course the STL has functions for trivial stuff such as std::max, std::plus or std::next, because muh portability. THIS IS VERY IMPORTANT AND YOU SHOULD ALWAYS USE THEM
            >strided iterators? Do it yourself lmao

          • 2 weeks ago
            Anonymous

            I never used any of these in my entire life

          • 2 weeks ago
            Anonymous

            And yet you say you use the STL, curious

          • 2 weeks ago
            Anonymous

            yes only the useful parts

          • 2 weeks ago
            Anonymous

            >The STL is perfect, Stepanov did nothing wrong
            >actually I don't use 2/3rds of it because it's broken
            I accept your concession.

          • 2 weeks ago
            Anonymous

            I'm not part of any cult so I can do whatever I want and I'm not sure what's your problem, but your buyer's remorse is not my problem troony.

          • 2 weeks ago
            Anonymous

            You're still talking?

          • 2 weeks ago
            Anonymous

            the voice you hear isn't me

          • 2 weeks ago
            Anonymous

            >I accept your concession.
            why do intellectually bankrupt frauds keep using this term? is this something you discovered on reddit?

          • 2 weeks ago
            Anonymous

            it means he ran out of cope to reply with.

          • 2 weeks ago
            Anonymous

            Actually it originated here, tourist.
            Don't put yourself in such a state of emotional distress because I made a simple joke at the expense of your sacred STL.

      • 2 weeks ago
        Anonymous

        How about you slam dunk a wad up your ass, you raging homosexual?

  43. 2 weeks ago
    Anonymous

    The issue we have with rust is the same as the issue with trannies, namely

    SHUT UP
    SHUT UP
    SHUT THE FRICK UP
    SHUT UP AND GO AWAY
    STOP TRYING TO GROOM KIDS
    SHUT THE FRICK UP

    Not trying to stop you, just don't care and don't want to fricking hear about it.

    • 2 weeks ago
      Anonymous

      Do you realize that this thread was made by someone who dislikes Rust, right?

      Majority of Rust discussion on IQfy is started by seething ciniles. You rarely see a Rust thread made actually by a Rust developer.
      If you do not want to hear about Rust, just stop talking about it. It really is that simple. But for some reason Rust lives rent free in every cinile and zigger head for some reason.

  44. 2 weeks ago
    Anonymous

    >rapid prototyping and iteration
    Just get Gamemaker. It's still a lot of work even with most moron-friendly engine.

  45. 2 weeks ago
    Anonymous

    So basically if you're writing anything more complicated than a grep clone, stay away from troony and use C++ instead?

    • 2 weeks ago
      Anonymous

      even then you might as well use Go
      honestly every cli app I've used that was written in Go has been a better experience with more features than anything that was written in rust. most Rust programs have barely any features. their big feature is "memory safety" which means jack shit for the user when the program can still panic like any other program

      • 2 weeks ago
        Anonymous

        fzf is cool and all but it's fzy for me

    • 2 weeks ago
      Anonymous

      No, if you can't comprehend what makes different languages suitable for different task, you should stay away from C++ as well.

      Go was designed with people like you in mind.

      • 2 weeks ago
        Anonymous

        Rust isn't suitable for any task. It cannot even compile itself and has to beg C++ to do it for xer.

        • 2 weeks ago
          Anonymous

          Yes yes. Now go use Go or some other toy while the grown ups are talking.

          • 2 weeks ago
            Anonymous

            Sorry but I am C++ programmer and several commits in LLVM are under my name and you can go eat a dick you moronic Black person troony, Rust will never be a real programming language.

          • 2 weeks ago
            Anonymous

            Yeah, you sure are. You sure are.

          • 2 weeks ago
            Anonymous

            2 more weeks until Rust can compile itself after over a decade of programming by incompetent mentally ill men who can't even program actually

          • 2 weeks ago
            Anonymous

            It sure is it sure is.

  46. 2 weeks ago
    Anonymous

    >is the rust honeymoon phase finally over for gamedevs?
    What the frick are you talking about? Have you ever seen any game made in Rust?

    No one ever recommends using Rust for games. Just because you ""can"" doesn't mean it's the best tool for given task. If you want to actually make a game just use a premade game engine with C# or something on top.

  47. 2 weeks ago
    Anonymous

    Yes and it'll die a faster death when Jonathan Blow's Jai comes out. I heard that its to Odin what C++ is to C.

  48. 2 weeks ago
    Anonymous

    i think rust is definitely not ideal for prototyping and gamedevs would be better off just using a sane subset of c++.
    the only rust game on steam that ive found looks good (by any reasonable metric, including just popularity) is Tiny Glade, which was made by professionals who have worked in the industry for a long time. even embark studios who are very vocal proponents of rust don't actually use a game engine written in rust for their games.

  49. 2 weeks ago
    Anonymous

    >the same rajeet still seething 24 hours later
    Rust lost
    Cniles won

Your email address will not be published. Required fields are marked *