4 ms·
Why would you expect to perceive GC stutters? Much as I loathe Java-the-language, it continues to amuse me that the game that sold for $2.5B (and that's after
by jholman 6y ago
Why would you expect to perceive GC stutters?
Much as I loathe Java-the-language, it continues to amuse me that the game that sold for $2.5B (and that's after extracting revenue from 60 million sales) was written entirely in Java.
I continue to suspect that GC concerns are mostly (but not entirely!) FUD. Can GC pauses cause some impact, certainly, but how much?
Console certification standards are very gruelling, so for a studio with a huge budget, no price is too high to avoid failing certification because two frames go bad in ten minutes. Otherwise, how big an issue is it really?
- Matheus28 6y agoMinecraft's java version has (or had, back when I played it) noticeable stutter issues (not necessarily caused by the gc). The Bedrock version (written in C++) is much smoother in comparison. The Java version is only for pc/linux/mac. Bedrock is used for modern consoles and mobile. I believe they also had a separate C++ code base for older consoles.
- jholman 6y agoRe: the Java version having stutter issues, hmn, fair enough. I didn't notice any, way back when I last played Minecraft. Re: a rewrite to C++ for consoles and mobile, yeah, when you've got hundreds of millions of dollars for a game whose prototype took about two human-years to write, seems like a good choice to rewrite it for a few-percent perf gain. And, repeating myself, console certification standards being what they are, it makes sense for a company trying to ship to console to be terrified of gc stutter, even if GC only drops one frame a minute. So yes, if you have a console goal, or yes if you have almost infinite engineering money, writing or rewriting in C++ is probably a good idea. Do you know anything about why modern console and older consoles allegedly have separate codebases?