Java Games - Just Ranting

OK so I have been asking my self this question for a long time why do most games written in java look like crap?

OpenGL and java work together nicely. Even back in the day of Java3D Things I made still looked OK.



I mean come on Blender is free and back in the day there was Anim8or. “Witch I found out is still alive WOW”



A great example of a game that is destroying peoples perception of 3D java games is Shattered World they need to look at there artwork it offends me.



Does anyone else feel this way?

It’s really a matter of assets and artists, and since java is just getting into the gaming scene, there aren’t any big companies making AAA games with it yet to get the fancy art out there. Hopefully in the next year or two we will see the gfx pick up.

It doesn’t really bug me, I just have to look at what is coming out of jme and it raises my spirits for what is to come. :slight_smile:

1 Like

Well, it really depends what you call to “look like crap”. Minecraft doesn’t look like crap to me, for example. It really depends what you want to search for. In the graphics area, I really look for the ambient more than the amount of polys vertices and textures. If you have a good ambient with sound/music, you can put the worst graphics ever and still get a good looking game.

i know skidrunner what you mean.



i talked with person who know only c/c++ and know nothing about Java/Blender(or any of 3d programs)/OpenGL/Shaders/etc… he said java is slow and stupid. and even if i say a lot of arguments about java + openGL, he say “then why java games look like a crap?”.(even if i say why, he were still using only this argument)



bad i had no laptop to show him JME projects. even not best graphics, but look much better than minecraft(the only game he known).



there are a lot of people who know “nothing”(not much) and telling you, that they are right without giving any rational argument.



for me both c and java have advantages and disadvantages, but are equals in sum.



edit: and BTW don’t worry, soon will be better games based on JME. C based games were ugly before too :wink: it all depends on artists and their experience.

2 Likes

In an artistic context:



I believe good pieces of art are something that is stimulating in a positive manner to both people that are proficient and non-proficient at creating art.

Barring outliers, most individuals who are good at creating art have created countless “sub-par” pieces in their struggle to become a proficient artist. All these pieces of art, good or bad, have been birthed into existence and remain as remnants of every artist’s journey.



The internet lets us view everybody’s art – and assuming most people have opinions on art, this results in categorization: good and bad. We look at all of the art, and say “wait…why is there so much bad art?” Speculatively, the answer could be… “because there always has been, and always will be bad art in every artistic medium in existence. It is merely a byproduct of the creation of art within a society who categorizes it as such.”

3 Likes

Erm, the question is rather: Why should a 3D model look different in a C++ engine compared to a Java Engine when having the exact material/shader pipeline? There is no reason. THEY WILL LOOK THE SAME… So why no “beautiful” Java games?



AAA titles just try to squeeze every ounce of run-time performance out of the machine, therefore C++. Of course, I know that Java is catching up blabla… but fact is that C++ has just use-cases where IT IS faster. But that still does not mean that I prefer it, I don’t. I love Java for all the other benefits that outweigh C++'s speed superiority (~15% ?! ).



So in a nutshell: Crysis 2 in that quality and that performance in Java today… nah… but games from the, let’s say mid-range to higher-range (including every Indie game out there, also games that were published a few(2+) years ago) should be doable in all its glory. Just find the team that is willing to try it in Java, find a publisher willing support it, take JME and start it!



If I were to develop an Indie game, there would be no other way for me than to go JME, that is for sure. Just my 2 pesos…

2 Likes

I guess indies C++ 3d games do not look better…I don’t think this is a java gaming condition but more an indie gaming one.

Most programmers don’t have amazing artistic skills. Also creating assets can be what takes the most time in a game development process…



I agree with you that graphics are one of the most important part of a game, but game play is over it unarguably. So when you can’t make nice graphics, you focus on the game play.

Some fail in both ways though :stuck_out_tongue:



One sure thing is that you’ll never play long to a boring beautiful game, but you might get caught by an ugly fun game.

I have to admit that this Shattered World is one of a kind…

I bet that in 1-2 years we’ll have a lot of jME games to show to you. The thing is, jME just got in Beta, with a lot of bugs yet to be fixed. And other Java engine/games are generally more simple than jME capabilities.

I’d be surprised if C++ gets a 15% speed superiority, once the Java is JIT compiled and optimised etc. C++ does have advantages in determinism but that’s about it really and even that can be mitigated if needed.



There is no reason you couldn’t write crysis in Java. The problem is the artwork assets budget - not anything to do with the technology…



C++ does have one big advantage…which is that all the “big boys” are using it - so all their programmers are experienced in it…so all their tools are tailored for it…etc. It’s a nice little positive reinforcement cycle which means that it will be the language of AAA games for quite a few more years - something really big will be needed to break that cycle.

These days AAA games are written in C++ so that they can deploy on consoles. Otherwise it’s just ignorance. The “performance” argument breaks down pretty quickly just from the variety of platforms a game has to run on… on some it will be fast and on some it will be slow. Relatively speaking that will have a much larger impact than any Java-related issues that may or may not exist.



It’s funny because the scale of AAA development sort of forces some weird interdependencies: big budget means you have to have good art to make sure the game sells. Good art means you have to have a big budget. To maximum ROI you need to deploy to as many platforms as possible. To deploy to as many platforms as possible you need to invest in extra infrastructure for multiple art conversion pathways and multiple platform engines, tweaks, etc… or you buy something. To do all of that you need a big budget. And so on.



You find a cheap way to make good quality art and you can break the cycle. Though it would still be nice if we could get our Java/JME apps easily deployed on all of the consoles. :slight_smile:

I think that most of you have the wrong idea about the hole thing I’m not comparing anything to AAA games. Thats like comparing apples to oranges.

I mean come on Shattered World is 22 years old and an RPG right so does that mean I should compare it to Final Fantasy?



No I am comparing it to like Sherwood Dungeon apples to apples.





Sherwood Dungeon



Shattered World



EDIT:
I should note that this kind of thing is why I think people end up trying to argue that java is bad for game programming.

I agree there is a lot more crap java software out there than crap native software… Simply because its easier to get something going with java than with C or C++ or whatnot. So obviously theres more people with less than mediocre programming skills doing Java software than native software. And these draw mostly crap designers then :wink:

Java makes it easy to write crap software but that doesn’t mean you can only write crap software with it of course.

3 Likes
@emanresu said:
In an artistic context:

I believe good pieces of art are something that is stimulating in a positive manner to both people that are proficient and non-proficient at creating art.
Barring outliers, most individuals who are good at creating art have created countless "sub-par" pieces in their struggle to become a proficient artist. All these pieces of art, good or bad, have been birthed into existence and remain as remnants of every artist's journey.

The internet lets us view everybody's art -- and assuming most people have opinions on art, this results in categorization: good and bad. We look at all of the art, and say "wait..why is there so much bad art?" Speculatively, the answer could be... "because there always has been, and always will be bad art in every artistic medium in existence. It is merely a byproduct of the creation of art within a society who categorizes it as such."

@normen said:
I agree there is a lot more crap java software out there than crap native software.. Simply because its easier to get _something_ going with java than with C or C++ or whatnot. So obviously theres more people with less than mediocre programming skills doing Java software than native software. And these draw mostly crap designers then ;)
Java makes it easy to write crap software but that doesn't mean you can only write crap software with it of course.


Period.
1 Like

@shirkit You act like this is a debate :smiley:

We all know the cause that’s why I am ranting.

This whole thing is all of us just preaching to the quire.



I just wish people would take the extra time to make java games look good and run like they should.

I don’t think it’s a debate, that’s just my opinion =] We’ll have good looking java games in the next 2 years (my guess).

skidrunner:



then let’s make good graphics game :wink: i believe, that some of JME members can make really good graphic!



im not Blender specjalist, but after learning myself + studies i have ability to make good graphic.(even if im not that good as someone who make 3D art since i was young).



and my first condition of game graphic is:

  • make Guild Wars / GuildWars 2 graphics.(something between or same like in Guild Wars 2, but it’s totally hard making 3d arts alone.)



    my actual progress is bewtween GW1 and GW2. in GW2 imo they gived too many vertices. i want to keep good polycount.



    GW1 vs GW2:

    http://i.imgur.com/WTERB.jpg



    let’s look at my progress:

    old avatar:

    http://i.imgur.com/5tSge.jpg

    new avatar:

    http://i.imgur.com/J9xid.jpg

    (and don’t worry i have much more armors/faces/etc, it’s just my favorite face).



    so actually it’s better than GW1, but i have some work to make it same good as GW2.



    do you have idea how to make it look same good? more vertices?(i don’t want more than 400(without hair) per face).



    if you have idea/informations that could help me make better skin or something like that, it would be grateful :slight_smile:

    because im not able to make that good as GW2 :frowning:

@oxplay2 I will take you up on this offer pm me and we will discuss the details of what we bolth want to accomplish.

A lot of the detail on high quality game models comes not from vertices but from textures and normal maps.



Create the model at ultra-high resolution with thousands of vertices - and then there are ways to bake that into a normal map and generate a lower resolution model which then uses the normal map to get back up to the original quality.



They probably also use LOD stuff to show more detail on things closer to the screen.

It’s all about Topography and Texturing try Google low poly mass effect in an image search.


EDIT:
The blend file is available at Polycount if you want to look at how the characters are made.