jDragon
Senior Newbie 
|
 |
«
Posted
2012-06-29 03:43:44 » |
|
Hello everyone!! This is my first post!! I want to create games as a hobbyist first, I am intensively studying java for that but I only know the basic, but I want to know the concept of game development to apply in any language. I made a schedule for my studies: Basic Java > Advanced Java > Java 2d > LWJGL. But I sense I'm forgetting something.
Please, tell me your opinion and your experience in game design, unfortunately I don't know anyone who program games. Sorry for my grammatic, I'm brazillian and don't speak english natively.
|
|
|
|
|
ra4king
|
 |
«
Reply #1 - Posted
2012-06-29 03:54:55 » |
|
|
|
|
|
Gjallar
|
 |
«
Reply #2 - Posted
2012-06-29 04:01:13 » |
|
Hello everyone!! This is my first post!! I want to create games as a hobbyist first, I am intensively studying java for that but I only know the basic, but I want to know the concept of game development to apply in any language. I made a schedule for my studies: Basic Java > Advanced Java > Java 2d > LWJGL. But I sense I'm forgetting something.
Please, tell me your opinion and your experience in game design, unfortunately I don't know anyone who program games. Sorry for my grammatic, I'm brazillian and don't speak english natively.
You know what... you are the best english speaking brazillian I have ever seen, and I play a lot of MobA-games which are flooded with brazillians. 
|
|
|
|
|
Games published by our own members! Check 'em out!
|
|
davedes
|
 |
«
Reply #3 - Posted
2012-06-29 04:08:07 » |
|
I'd recommend the following: 1. Don't use Java2D at all. 2. Don't use LWJGL unless you are unsatisfied with higher level APIs like Slick, LibGDX, Rabbit Engine, etc. OpenGL is not all that fun for somebody who's new to programming. Once you are a good programmer, then you can revisit LWJGL and spend some time pulling your hair out as you try to understand the beast that is GLSL and OpenGL... 
|
|
|
|
SwampChicken
|
 |
«
Reply #4 - Posted
2012-06-29 04:16:10 » |
|
Can you elaborate on why he shouldn't be using Java2D?
|
|
|
|
|
teletubo
|
 |
«
Reply #5 - Posted
2012-06-29 04:17:55 » |
|
Hello everyone!! This is my first post!! I want to create games as a hobbyist first, I am intensively studying java for that but I only know the basic, but I want to know the concept of game development to apply in any language. I made a schedule for my studies: Basic Java > Advanced Java > Java 2d > LWJGL. But I sense I'm forgetting something.
Please, tell me your opinion and your experience in game design, unfortunately I don't know anyone who program games. Sorry for my grammatic, I'm brazillian and don't speak english natively.
You know what... you are the best english speaking brazillian I have ever seen, and I play a lot of MobA-games which are flooded with brazillians.  I didn't even know they had internet down in Brazil, I thought you guys just lived off of dancing salsa, taming monkeys and stuff. Anyway, I hope you have a great time here, the community is very open to newbies, of all around the world.
|
|
|
|
Z-Man
|
 |
«
Reply #6 - Posted
2012-06-29 04:18:21 » |
|
I'd recommend the following: 1. Don't use Java2D at all. 2. Don't use LWJGL unless you are unsatisfied with higher level APIs like Slick, LibGDX, Rabbit Engine, etc. OpenGL is not all that fun for somebody who's new to programming. Once you are a good programmer, then you can revisit LWJGL and spend some time pulling your hair out as you try to understand the beast that is GLSL and OpenGL...  Java2D isn't bad to use while your learning. LWJGL or a higher level API is a matter of preference and how much you want to know about what goes on. As for revisiting LWJGL, the OP said this: Basic Java > Advanced Java > Java 2d > LWJGL
|
|
|
|
|
davedes
|
 |
«
Reply #7 - Posted
2012-06-29 04:33:57 » |
|
It was discussed in this thread. Kappa sums it up well here. If you are indeed serious about game development, just skip Java2D and head straight for an OpenGL-based library. As for revisiting LWJGL, the OP said this Using Java2D won't prepare him for LWJGL. At least with Slick he is a little closer to OpenGL, and if he chose LibGDX then he would be very close to OpenGL (LibGDX is more tied in with matrices, frame buffers, textures, etc).
|
|
|
|
jDragon
Senior Newbie 
|
 |
«
Reply #8 - Posted
2012-06-29 05:30:31 » |
|
Hello everyone!! This is my first post!! I want to create games as a hobbyist first, I am intensively studying java for that but I only know the basic, but I want to know the concept of game development to apply in any language. I made a schedule for my studies: Basic Java > Advanced Java > Java 2d > LWJGL. But I sense I'm forgetting something.
Please, tell me your opinion and your experience in game design, unfortunately I don't know anyone who program games. Sorry for my grammatic, I'm brazillian and don't speak english natively.
You know what... you are the best english speaking brazillian I have ever seen, and I play a lot of MobA-games which are flooded with brazillians.  Really? Thank you  Thanks everyone for the welcome and the tips. I did some applications in java but nothing like a game.
|
|
|
|
|
StonePickaxes
|
 |
«
Reply #9 - Posted
2012-06-29 05:37:23 » |
|
I really don't understand all of the hate on Jave2D for a starter  I would recommend starting with Java2D. It has all you'll need for just starting. Once you start to get frustrated with it not being able to do higher level stuff, move on to Slick, LWJGL, or JOGL. | Nathan
|
|
|
|
Games published by our own members! Check 'em out!
|
|
davedes
|
 |
«
Reply #10 - Posted
2012-06-29 06:02:54 » |
|
I really don't understand all of the hate on Jave2D for a starter  I would recommend starting with Java2D. It has all you'll need for just starting. Once you start to get frustrated with it not being able to do higher level stuff, move on to Slick, LWJGL, or JOGL. | Nathan Why waste your time pulling your hair out with Java2D only to find out that you need to start all over again from scratch, using a different library? Meanwhile, you could have spent that time actually making a game in LibGDX or Slick2D, rather than fiddling and copy + pasting game loops, JavaSound hacks, alpha composites for transparency/blending tricks, etc. [size=6pt]I've been developing GUI software at work with PyQt, and I'm beginning to realize how much time I wasted with Swing/Java2D that would have been better put to another library...[/size] 
|
|
|
|
ra4king
|
 |
«
Reply #11 - Posted
2012-06-29 07:12:29 » |
|
Did you learn anything while using Swing/Java2D? It's not so much about wasting time with a useless library, it's more about a newbie learning basic game design without moving on to more complex tech like OpenGL.
|
|
|
|
andyMak
Senior Newbie 
|
 |
«
Reply #12 - Posted
2012-06-29 07:14:13 » |
|
I really don't understand all of the hate on Jave2D for a starter  I would recommend starting with Java2D. It has all you'll need for just starting. Once you start to get frustrated with it not being able to do higher level stuff, move on to Slick, LWJGL, or JOGL. | Nathan Why waste your time pulling your hair out with Java2D only to find out that you need to start all over again from scratch, using a different library? Meanwhile, you could have spent that time actually making a game in LibGDX or Slick2D, rather than fiddling and copy + pasting game loops, JavaSound hacks, alpha composites for transparency/blending tricks, etc. [size=6pt]I've been developing GUI software at work with PyQt, and I'm beginning to realize how much time I wasted with Swing/Java2D that would have been better put to another library...[/size]  So what do you reccomend for someone new to java that would like ot make 2d games such as pong, breakout, tetris up to a Mario bros style game later on?? i was reccommended Java2D to get a feel for game design and them move on once i am comfortable
|
There are 3 types of people in this world, those who can count and those who can't!
|
|
|
gimbal
|
 |
«
Reply #13 - Posted
2012-06-29 09:22:15 » |
|
So what do you reccomend for someone new to java that would like ot make 2d games such as pong, breakout, tetris up to a Mario bros style game later on?? i was reccommended Java2D to get a feel for game design and them move on once i am comfortable
I would recommend Java2D for the pong, breakout and tetris games - such simple games don't require much and Java2D works perfectly fine no matter how badly you use it. For the mario type game it would be more of a challenge, but along the way you'll probably have learned enough about Java2D to make it happen anyway. I take example from this excellent remake of the classic Gods done by an internet buddy of mine: http://jotd.pagesperso-orange.fr/gods/index.htmlWeb design not indicative of the game quality 
|
|
|
|
|
davedes
|
 |
«
Reply #14 - Posted
2012-06-29 13:20:23 » |
|
So what do you reccomend for someone new to java I'd recommend using a game library (Slick2D, LibGDX) rather than a graphics library (Java2D)... It's really as simple as that. You will save yourself a lot of time and headache.  If you don't believe me, try writing a breakout clone in both libraries, then decide for yourself. Honestly I feel like the only people recommending Java2D are those who have never developed a game in both Java2D and Slick2D/LibGDX, or are simply so accustomed to Java2D that they are too lazy/scared to learn something else. Did you learn anything while using Swing/Java2D? It's not so much about wasting time with a useless library, it's more about a newbie learning basic game design without moving on to more complex tech like OpenGL. After a year of Swing/Java2D I had learned a lot about programming and OO design. I would have learned the same had I been using Slick, LibGDX, PyQt, or what have you -- the only difference is that I would be gaining experience with a library that I would later use, as opposed to later not use. Regarding "more complex tech like OpenGL" -- Slick hides OpenGL.
|
|
|
|
gimbal
|
 |
«
Reply #15 - Posted
2012-06-29 13:42:42 » |
|
So what do you reccomend for someone new to java I'd recommend using a game library (Slick2D, LibGDX) rather than a graphics library (Java2D)... It's really as simple as that. You will save yourself a lot of time and headache. A tool can only help you make a job easier if you already know how to do that job. Blindly recommending people to use game libraries is easily said when you've already been through all the hard work yourself. There are always multiple perspectives on the same subject, yours doesn't have to be the only correct one. Perhaps you're only sometimes right.
|
|
|
|
|
h3ckboy
|
 |
«
Reply #16 - Posted
2012-06-29 15:12:28 » |
|
you will probably all disagree with me, but I personally like java 2d. I have used slick as well, and slick is awesome but as I stated in another thread I like having more control over my program, and that control is simply not available in slick.
I in general avoid all those engines, libraries, etc. because I want to learn the things that they hide. The only case where I use a library is kryonet because its awesome, and I could never function without it.
I personally think this is a good order of development:
Java2D->Slick->Java2D
it lets you learn the basics with java2D, then you can put them out of the way with slick and learn complex stuff, then combine them back together with java2D.
|
|
|
|
|
ReBirth
|
 |
«
Reply #17 - Posted
2012-06-29 16:32:41 » |
|
@h3ckboy back to java2D? I don't think anyone who has used Slick want to do it, except for 4K.
|
|
|
|
h3ckboy
|
 |
«
Reply #18 - Posted
2012-06-29 16:56:32 » |
|
I did, maybe I am just one of those people who needs to it all himself, but I personally prefer java2D, although to be honest one of the main reasons was that then I wouldnt have to sign my jars  .
|
|
|
|
|
davedes
|
 |
«
Reply #19 - Posted
2012-06-29 17:10:48 » |
|
A tool can only help you make a job easier if you already know how to do that job. Blindly recommending people to use game libraries is easily said when you've already been through all the hard work yourself. Java2D is a tool just like any other; and you'll still need to learn how to use it, except it will involve writing/learning a lot more to achieve the same thing. If you are really set against using a game library to write a game (i.e. you want to write your own game library), then at the very least you should be using JavaFX over Swing/AWT/Java2D. JavaFX is the "new standard" and Swing/AWT/Java2D will only continue to exist for legacy/compatibility reasons. This is just my own opinion, based on years of experience with both Java2D and Slick2D, and years of watching beginners struggle with Java2D only to find out that it does not suit their game's needs.
|
|
|
|
aazimon
|
 |
«
Reply #20 - Posted
2012-06-29 18:19:26 » |
|
Welcome to JGO jDragon! As for the APIs: I say, learn the way that is comfortable for you. Don't get bogged down in all the API when you are still trying to figure out Java. 
|
|
|
|
|
h3ckboy
|
 |
«
Reply #21 - Posted
2012-06-29 19:38:50 » |
|
What do you mean "suite their games needs"?
I hear people talk about how java2D is too slow or whatever, and I have to be honest, if a 2d game is giving them that much issue, the slowdown is likely somewhere else.
|
|
|
|
|
|
|
jDragon
Senior Newbie 
|
 |
«
Reply #23 - Posted
2012-07-03 03:37:14 » |
|
Thanks for all the help!! I have just a little question: Do I have to master every basic aspect of Java to begin as a gamedev?? For example (ArrayList, JTable, etc...). I want to know what Java tools I need to master in order to develop a game.
|
|
|
|
|
teletubo
|
 |
«
Reply #24 - Posted
2012-07-03 03:44:34 » |
|
Thanks for all the help!! I have just a little question: Do I have to master every basic aspect of Java to begin as a gamedev?? For example (ArrayList, JTable, etc...). I want to know what Java tools I need to master in order to develop a game.
I think you shouldn't do it like this, you'll get bored. I'd do it the other way around: learn things as I see the need. Eventually you should check a book to see if there are better ways of doing what you're doing. I for myself wrote java code for 1.5 year or so, then I went studying for the SJCP certification, and I realized I could do many things in better ways. But I think just "learning" a lot of stuff without a real problem/challenge/objective is fruitless.
|
|
|
|
jDragon
Senior Newbie 
|
 |
«
Reply #25 - Posted
2012-07-03 03:56:02 » |
|
Hm... Makes sense. Then you think I need to study more the language Java, programming logic or jump directly to game programming??
|
|
|
|
|
teletubo
|
 |
«
Reply #26 - Posted
2012-07-03 04:06:38 » |
|
If you don't know programming logic, you should try those small games like "number guessing" games and such, so you kinda do both of them at the same time; java and game programming... and later on you start doing graphical stuff.
|
|
|
|
jDragon
Senior Newbie 
|
 |
«
Reply #27 - Posted
2012-07-03 05:39:40 » |
|
If you don't know programming logic, you should try those small games like "number guessing" games and such, so you kinda do both of them at the same time; java and game programming... and later on you start doing graphical stuff.
I know some programming logic, but I am not a master on it. I'm average level programmer, because I did some applications involving java, db4o, jasperreports, sql... But nothing on par with games. I will try something on this week and show it for you.
|
|
|
|
|
ReBirth
|
 |
«
Reply #28 - Posted
2012-07-03 15:50:54 » |
|
Common applications have different logic with game.
|
|
|
|
|