I'm new to GameDev, and programming, and have decided to make the first language I learn Java.

So far I've been watching TheNewBoston's tutorials. I've managed to learn a bit about variables, classes, methods, switches, etc. but for some reason am now having trouble understanding new material. :/ What do you think is the absolute best method for learning Java? Especially for designing games(3D).

What do you think is the absolute best method for learning Java? Especially for designing games(3D).

I would say that jumping in to 3D programming immediately is NOT a recommended method.

Start small. Learn concepts one at a time, preferably with an experienced instructor or well-written books.

Learn one thing, master it, then add a second thing that both incorporates the original thing and adds the new concepts. Repeat thousands of times.

Since you are just beginning to learn the field of computer science you have many years worth of learning ahead of you. Those who complete a 4-year degree taught by competent instructors are often barely qualified for the entry level jobs they take. Add another several years of real-world experience before you fully learn the concepts.

That said, there are people who jump right in and decide to go the baptism-by-fire route. It is a full-blown FPS or nothing. I have never known anybody to successfully travel that route.

As others have said, forget 3D games for the moment. There are a number of projects that are designed to help teach Java programming by getting you to customise a game. Robocode is one example - you write code to control a robot tank that battles against others. This will not only help you learn programming in Java but also introduce you to some of the concepts of game programming. It doesn't cover that much of Java though so you'll still need to look at other tutorials.

You said you watched the material. But have you perform an activity on the material? Whether it is homework exercises that test your conceptual and fundamental understanding of Java.

You do not learn Java just by watching someone. Sure you might understand the concepts but you need to test your understanding by yourself. You really need to think about this stuff and apply it right away to go from a passive mind to an active mind. Start thinking of the algorithm on paper, implement on paper and make sure you understand what problems can potentially happen. If there is no problems on paper, implement the code on the IDE.

What new material is troubling you? Do you understand the entirety of the concepts you mentioned earlier?

Since you are still learning the basics of the language, you should not even start programming 3D games yet alone 2D games. It is not how programming works. I really think you need to actively do the exercises to really hone your skills as a programmer.

You need to have at least met these minimum requirements: an intermediate level understanding of the programming language(the short answer is doing the exercises in a Java textbook you cannot go wrong with an academic textbook), on top of general knowledge of graphics that is built into Java. Good coding style is a must. Even a simple game requires a huge codebase.

You can easily download an open source project of a 2D game and see which areas you still need to know and improve on. This could be libraries you never worked with or just conceptual knowledge you have missed out on.

Eventually, you will explore the "object-oriented" side of things and it is super important because after all Java is an object-oriented language.

Tip: Always have the Java API as a handy reference. That way you can look up which method correspond to which class. An example suppose you forgot where the parseInt method is, google will tell you it is from the Integer class.

Tip: Never mix Awt and Swing libraries together. They are not meant to be mixed because they are different libraries.

Game Dev is an absolutely wonderful base of helpful people Thanks everyone, I should've mentioned I've been working on a text-based Java game and have tested my abilities somewhat thouroughly. I'm going to get a couple of books on Java, maybe it'll be a little easier for me. You're all wonderfully helpful people and I'll be sure to use everything suggested. ^.^

What do you think is the absolute best method for learning Java? Especially for designing games(3D).

I would say that jumping in to 3D programming immediately is NOT a recommended method.

Start small. Learn concepts one at a time, preferably with an experienced instructor or well-written books.

Learn one thing, master it, then add a second thing that both incorporates the original thing and adds the new concepts. Repeat thousands of times.

Since you are just beginning to learn the field of computer science you have many years worth of learning ahead of you. Those who complete a 4-year degree taught by competent instructors are often barely qualified for the entry level jobs they take. Add another several years of real-world experience before you fully learn the concepts.

That said, there are people who jump right in and decide to go the baptism-by-fire route. It is a full-blown FPS or nothing. I have never known anybody to successfully travel that route.

Nils 762 is correct. At Full Sail Edu, which is an extremely reputable school, they teach you the basics of programming and bang it hard in you so you know what it does at the machine level. At midpoint of the degree, you're assigned a team project to create only a 2D game. It is after this phase when 3D gaming begins. Near the tail end of the course, another team project is assigned, with a scope of 3 months to develop a fully working and presentable 3D game. 22 months is equivalent to a 4 year traditional college degree at Full Sail. No one really starts 3D development until after the 11th month, if even that soon and that's with a 12 hour a day, 5 days a week training environment.

Nils 762 is correct. At Full Sail Edu, which is an extremely reputable school, they teach you the basics of programming and bang it hard in you so you know what it does at the machine level. At midpoint of the degree, you're assigned a team project to create only a 2D game. It is after this phase when 3D gaming begins. Near the tail end of the course, another team project is assigned, with a scope of 3 months to develop a fully working and presentable 3D game. 22 months is equivalent to a 4 year traditional college degree at Full Sail. No one really starts 3D development until after the 11th month, if even that soon and that's with a 12 hour a day, 5 days a week training environment.

Uh, actually I don't know... Based on what you're saying it doesn't sound like ANY college degree is "equivalent" to that school.

I learned almost nothing from college regarding actual development (and that was a supposed top national "tech" school)... I think you need to DO this stuff on your own to learn it. All the people who clearly didn't put forth any extra effort ended up useless. (The type that you dreaded being on a "team" with, because you knew you'd be doing all the work.) And I mean extra effort on their OWN time, from genuine interest--not because they wanted an easy, high paying job.