Normal Minecraft

>Normal Minecraft
>Runs like shit
>Due to Java

>Win10 Minecraft
>Can run on a Commodore 64 without needing a normal household fan pointed somewhat towards the CPU.
>Due to C++ magic

What makes Java so shit, and if it's so shit why do so many games use it?

Other urls found in this thread:

youtube.com/watch?v=Us5mPBWlkm8
philippsen.com/JGI2001/finalpapers/18500097.pdf
deathbytape.com/articles/2015/01/30/c-vs-c-performance.html
onlinelibrary.wiley.com/doi/10.1002/cpe.1416/full,
sciencedirect.com/science/article/pii/S0167642311001420)
quora.com/What-is-the-most-efficient-way-to-sort-a-million-32-bit-integers/answer/Anders-Kaseorg
twitter.com/NSFWRedditVideo

Nice shilling. What benefits does the W10 version of Minecraft have anyway?

Notch is just a bad coder and no one ever got around to rewriting his janky code until now.

Do I have to buy it again if I have the java version?

It's more like
>Regular Minecraft had Notch spaghetticode that is now being replaced with even worse code each passing update thanks to Dinnerbone

>all the other versions (Console, Mobile/Win10, etc) were developed by actually competent people

You can go through Mojang.com to get it for free.

It runs better.

That's... pretty much it.

If you have friends, they can pop into your single players worlds. There are no servers. It's all just "Hey, come help me with something real quick" and your buddy can pop into your world through a game invite.

There's plenty of downsides, though.

>Having to pay for texture packs
>Being able to pay for skins. (You can still upload a custom skin, but even having the option to pay for skins is retarded)
>No servers
>Interface designed with controllers in mind.

However

>Normal Minecraft
>easy as fuck to mod due java being accessible and easy
>already has a modoing community that keeps the game relevant and afloat

>Win10 Minecraft
>virtually no modding due C++
>C++ has a high bar of entry/learning curve that will discourage your average Joe from making mods like
>while that might be a good thing in terms of mod quality, there would basically be a desert in terms of mod availability.
>micro$oft won't leave any hooks/comments/direction in the code meaning modders are modding blind.
>this will discourage what little people are left who can make mods.
>Microshill would probably release some sort API
>It would probably cost money

Don't forget.
>usually behind on updates compared to PC
>no mods

Your first mistake was playing minecraft

Today I learned that Java has a built in process where it dumps unused memory automatically and somewhat randomly, and when it does everything else freezes. Its easy to learn, and easy to make compatible with different hardware, but it just isn't reliable.

Did you hear about the guy who played minecraft on windows 10?
HE WAS DESTROYED

they're adding modding support though, they showed it at e3

Was it your first day in comp. Science?

yea, actually.

I will try to explain it in layman term.

The reason why Java is slow is because it was designed to be easily ported between platforms/OS.

Look at it like this
Your microwave can run Java through Java runtime environment (JRE)
Your phone can run Java through JRE
Your fridge can run Java through JRE
Your PC/Laptop can run Java through JRE
But the trade off is that, as you have known, JRE is very slow because it needs to adapt to multiple architecture as the same time.

Meanwhile, a C++ application that is built on a specific platform is more optimized toward such architecture, therefore it is faster.

However, Java has become better over years and Notch was probably just a shit coder.

I doubt we'll get anything near what 1.7.10 has though.

Makes sense I guess

disgusting

>Today I learned that Java has a built in process where it dumps unused memory automatically and somewhat randomly
Kind of, generally we want it to dump memory blocks with no ref to it.
Most of the times, it doesn't do shit and just leave them be though.

>>virtually no modding due C++
>>C++ has a high bar of entry/learning curve that will discourage your average Joe from making mods like

Factorio says hi

shilling for a port of a port

>walked in on two creepers

Doing what?

Are you retarded? Factorio offers a lua based API. You never have to touch c++. In fact, mods should rather be called plugins since they don't actually change the game code directly, unlike java minecraft.

Java runs in a VM, so it's always bloated. That VM is what makes it cross-platform, and thus appealing to some.

notch was a retard coder plus C++ programs will run really fast. you can think of it as the harder the language is to learn, the better it runs. java is very user friendly hence runs like shit.

Stop saying C++ is hard to learn omfg

youtube.com/watch?v=Us5mPBWlkm8

Ok, so I feel bad for all the people in this thread especially since he still has a chance at not being fooled.

Java being bad is a meme. It is a meme from the time before memes were a thing.
How did it become a meme ? Very simple. Professors which worked with Java 1 and 2 in the 90' thought it was slow. They thought it was slow in comparison to C (NOT C++) and stuff like COBOL and Fortran. So a culture developed around Java where university professors would make fun of it for being slow.

That's it.

Java is slower than C. It is NOT slower than C++, or ok, it's negligibly slower than C++.
Also, as far a video games are concerned, the most intensive operations are handled by the GPU so the difference in speed literally disappears.

The only time you can say Java is slow is when it's used for scientific calculation. But guess what ? C++ is slow for that as well, unless you limit yourself to C syntax or use assembly.

Python is slow
C# is slow-ish.
Basic is slow-ish.

Java is fast.

The Sun JVM is written in C++. Thus, Java binaries running under this JVM will always be slower than C++.

“Also, as far a video games are concerned, the most intensive operations are handled by the GPU so the difference in speed literally disappears.”
I agree. The difference in speed is the same since drawing triangles is handled by the GPU. This isn’t an argument.

>HE MADE A SECOND ONE

>>usually behind on updates compared to PC
because Windows 10 is not PC
what

>Did you meat?
>He had

But muh mods!

>why do so many games use it?

It's easy as fuck to use, even a monkey could make a game with it.

just like the meme about windows freezing and bsoding all the time
its a thing of the past

>Win10 Minecraft
You don't even need Win10 to get the .exe versionl.

>paid texture packs

Are you fucking shitting me right now

>Java is slower than C. It is NOT slower than C++, or ok, it's negligibly slower than C++.
sre you by chance, mentally handicapped? C++ is as fast as C, since it's just an expansion of it and is usually compiles, Java runs in a virtual machine CODED IN C++ so by definition it will be slower.
>Also, as far a video games are concerned, the most intensive operations are handled by the GPU so the difference in speed literally disappears.
this is not true for minecraft, since the most intensive operations are handled by the CPU (removal of big chuncs of terrain, management of loads of entity in one place, redstone), and even the graphics manage to be shit because the part of it that is managed by the CPU (sending vertices and textures buffers to the GPU) is built on an unoptimized library built for OGL 2.0
>The only time you can say Java is slow is when it's used for scientific calculation. But guess what ? C++ is slow for that as well, unless you limit yourself to C syntax or use assembly.
what in the actual fuck? Are you from the 90s or using a compiler from that time? C++ is as fast as C.

Are you a woman by chance?

Ok first:
philippsen.com/JGI2001/finalpapers/18500097.pdf
Here is a paper comparing Java and C++.
Here is a quote from the conclusion:
"On Intel Pentium hardware, especially with Linux, the performance gap is small enough to be of little or no concern to programmers."
The reasons for this include: Java GC allows you to reduce cache misses, pointers make memroy optimization difficult, Java's runtime compilation allows it to be compiled specifically for the model of CPU you have(yes sometimes C++ is compiled more generic than the JIT compilation of Java).

Second here are the differences between C and C++:
C++ can compile to normal C but then why are you using C++ and not C ? If you are using C++ then you are also using the Standard Template LIbrary and you are not doing everything by hand with pointers and malloc. That means that you will incur some heavy performance hits, putting you much closer to java(see the above article).

Are you a typical Cred Forums fag that hasn't even finished highschool "computer" classes yet ?

...

>C++ can compile to normal C but then why are you using C++ and not C ? If you are using C++ then you are also using the Standard Template LIbrary and you are not doing everything by hand with pointers and malloc. That means that you will incur some heavy performance hits, putting you much closer to java(see the above article).
>the STL is slow
how fucking wrong can one single person be? C++ decent compilers can always get C++ to actually be the same or faster than standard C
Try it yourself, look for some examples, idk deathbytape.com/articles/2015/01/30/c-vs-c-performance.html

>java can be as good as C in scientific computation
Yes I agree, quote me on where I said it wouldn't be. However mind that many of those papers (some others, btw onlinelibrary.wiley.com/doi/10.1002/cpe.1416/full, sciencedirect.com/science/article/pii/S0167642311001420) are also about scientific simulation that are very different from games (more multicore stuff going on, high parallelism and less branching) thus meaning that the JIT is more efficient in those cases.

>Java's runtime compilation allows it to be compiled specifically for the model of CPU you have(yes sometimes C++ is compiled more generic than the JIT compilation of Java)
this is actually a problem with the closed source nature of games, I'll agree. I couldn't find a benchmark on this however, and I am sure most programs hardly "feel" this difference. I happened to have recompiled only specific scientific programs to suit my CPU, I doubt games get really any improvement since there is more stall than your usual scientific application.

forgot another link about the STDL:
quora.com/What-is-the-most-efficient-way-to-sort-a-million-32-bit-integers/answer/Anders-Kaseorg

>deathbytape.com/articles/2015/01/30/c-vs-c-performance.html
This guy complete ignores the importance of memory management by saying that GC is a big overhead.
And his benchmarks are two tiney programs which ignore the face that, if you use c++ you do it for the extended functionality, you don't write c code in c++. And even he says that you can rewrite his code in c to be faster.
Also the tests were done with optimizations turned off...

>scientific simulation are very different from games
A lot of game code is math, physics, sorting. The small amount of code that governs the game logic and is branching, non-parallel, etc is insignificant in my opinion.

And if you are allowed to be a pedantic fag and say that Java is slow because of the literal zero overhead of translating bytecode to binary then I am definitelly allowed to call out the overhead penalty of using STL stuff.