Live data from Hacker News

Leaving Rust gamedev after 3 years

loglog.games

901–910 of 996 posts

Re: Leaving Rust gamedev after 3 years

#901
post #46

> Rust gamedev ecosystem lives on hype I've been saying this for years. I've tried to get into Rust multiple times the past few years and one of the things I've tried was gamedev with Rust (specifically the library ggez when it was still being worked on, and a little bit of Bevy). I admittedly never got far, but I gave it a solid shot. My experience was instantly terrible. Slow compile times and iterations, huge pack…

This might be controversial, but "Safety" and "Speed", in the same ecosystem, are not free. The cost is heavy syntax and heavy cognitive climbs. Why Rust was ever sold as a language for the masses is beyond me. A safe, fast, hard language is something you use for operating systems, aircraft, etc. I adore Rust because it does all the things I remember being told to do in C, but without me remembering to do them: Error…

It's possible to write unsafe and slow code in Rust.

Re: Leaving Rust gamedev after 3 years

#902
post #46

> Rust gamedev ecosystem lives on hype I've been saying this for years. I've tried to get into Rust multiple times the past few years and one of the things I've tried was gamedev with Rust (specifically the library ggez when it was still being worked on, and a little bit of Bevy). I admittedly never got far, but I gave it a solid shot. My experience was instantly terrible. Slow compile times and iterations, huge pack…

> Rust game development feels like a solution looking for a problem to fix. The same can be said for ordinary CRUD backends. Java, C#, Go and Typescript (Node, Deno or Bun) are all memory safe with good type systems and more than good enough performance. Evangelism around Rust is unfortunately still a thing. A good example is the latest hype in the community because some Google Manager said at a Rust conference that…

When single bug may cost millions of dollars, then Rust is cheaper and faster than Go. Google manager is not a liar.

Re: Leaving Rust gamedev after 3 years

#903

Earlier quoted context omitted.

So you're saying if you write your database engine in C++ you're not going to see any segfaults? https://jira.mariadb.org/browse/MDEV-14248?jql=text%20~%20%2...

That is significantly dependent on the software architecture. MariaDB's design is not particularly modern (not a knock against MariaDB, it is an older system) and employs none of the software architecture required for high-scale and high-performance kernels that, as a side-effect, makes it difficult to accidentally create the conditions for a segfault regardless of the language. The design motivation is actually opti…

Sounds interesting. What reading on such modern architectures would you recommend?

Re: Leaving Rust gamedev after 3 years

#904
post #754

Earlier quoted context omitted.

That doesn't mean that it was used primarily with C++ though. IIRC Watcom C/C++ mainly became popular because of Doom, and that was written in C (as all id games until Doom 3 in 2004 - again IIRC though). The actual killer feature of Watcom C/C++ was not the C or C++ compiler, but its integration with DOS4GW.

Btw, dont’t remember Turbo C or Borland C++ to be able to compile to 32-bit x86 on DOS

Borland C++, Microsoft C/C++, and GCC (DJGPP[1]) could all target 32-bit extended DOS, but Watcom was the first[2] to bundle a royalty-free DOS extender[3].

[1] https://news.ycombinator.com/item?id=39038095

[2] https://www.os2museum.com/wp/watcom-win386/

[3] https://en.wikipedia.org/wiki/DOS_extender

Re: Leaving Rust gamedev after 3 years

#905
post #566

Earlier quoted context omitted.

Sorry I got lost in that sentence. What is Rust's model?

Rust has traits on structs instead of using inheritance. Aka composition.

AFAIK composition, in the traditional sense, means that you put your objects/concepts together from different smaller objects or concepts. Composition would be to have a struct Car that uses another struct called Engine to handle its driving needs. A car “has a” engine. A trait that implements the “this thing has an engine” behavior isn’t composition, it’s actually much closer to [multiple] inheritance (a car “is a” motorized vehicle).

Re: Leaving Rust gamedev after 3 years

#906
post #801
post #257

Just waiting for someone to write a 5000 word essay on why they are moving from Rust to do data science stuff. Totally puzzled by everyone trying to get on to the Rust bandwagon on DS/DE, when being able to iterate and make changes fast is why Python rules even though it is dog slow.

Why do you think it is dog slow? Most of the ds/de libraries are in C/C++, with python just calling. I personally checked JSON parsing with Go/Rust/Python. Guess who won.

So, python is not slow if you don't use python and depend on C/C++. Got it. LOL.

Re: Leaving Rust gamedev after 3 years

#907
post #613

Earlier quoted context omitted.

I'm talking about games specifically. I don't know much about the needs of web browsers.

I've parallelized emulators in C++ and work on parallel parts of Bevy now, which is probably the closest you're going to get to someone who has worked on parallelizing parts of large game engines in both C++ and Rust. It was far easier in Rust.

Ah, you mean specifically parallellizing a complex non-parallel system? Not designing a parallel system from scratch?

Re: Leaving Rust gamedev after 3 years

#908

> wait I can't add this new thing because things will no longer compile, and there's no workaround other than code restructuring I definitely think that's a great feature. I want to learn on day 2 that the design is a dead end, not on day 101 when I ship on day 100 and there was a race condition on day 2 I never noticed. But the thing about gamedev (I guess - I'm not a game developer) is that the code being great and…

> game development is also game engine development

not necessarily. Loads of games and game developers do not engage in any engine development at all, they just use an off the shelf engine and make their game, treating engine developing about as close as web devs treat database development.

Re: Leaving Rust gamedev after 3 years

#909
post #563

Earlier quoted context omitted.

Just a small addition: Godot also has great C# support. It is a real charm to work with.

The godot-rust project crates take a minor amount of adaptation to understand how it exposes the Godot object system in Rust but it's also pretty well developed.

Nice to hear! Really want to get into Rust at some point. This might be a nice segue into it

Re: Leaving Rust gamedev after 3 years

#910
post #885

Earlier quoted context omitted.

Sure, open 5 tabs named mod.rs, so which mod are you in?

Open 5 libs.rs, which crate are you in? Always look at full path instead of filename. A mod.rs means a much more cleaner organization, as you know that all of a folder module's content is within that module, and you don't have to look elsewhere.

Yes this would be a problem if for every module you had to create a lib.rs, which is not the case. mod.rs has a much higher # of occurrences.
Post reply on HN