requirements to start

General topics about the Android-Platform itself.
Coding issues please to the subforum right below.

requirements to start

Postby moha1994 » Thu Aug 19, 2010 12:35 am

Hi all ! i want to start developing android games but my question is what do i need to know before i start.


thx!
moha1994
Freshman
Freshman
 
Posts: 6
Joined: Thu Aug 19, 2010 12:28 am

Top

Re: requirements to start

Postby jonbonazza » Thu Aug 19, 2010 3:53 am

No offense, but if you have to ask this question, you probably need to learn a good bit.

First, I would start by reading up on a non-object-oriented programming language (Such as C or C++). After you are comfortable with that, I would move onto Java. After Java, move onto the android SDK. From there you should have a pretty good understanding of programming should know how to move on.
jonbonazza
Master Developer
Master Developer
 
Posts: 665
Joined: Thu Jul 15, 2010 2:58 pm
Location: WV USA

Re: requirements to start

Postby Ath » Thu Aug 19, 2010 9:10 am

@jonbonazza: No offence, but why would one have to learn a non-OO language before you learn Java? Why learn things the 'other' way, before learning it the OO way?
A pointer to Android Basics should be enough, if the OP needs more than that, he should ask again, IMHO, or take a few programming classes, just to find out there are no cheat-codes or short-cuts involved.
If he doesn't know how to develop software, he won't be getting anywhere, anytime soon...
/Ath
Ath
Developer
Developer
 
Posts: 42
Joined: Sun Jun 06, 2010 6:07 pm
Location: NL

Re: requirements to start

Postby MichaelEGR » Thu Aug 19, 2010 11:01 am

@jonbonazza: I'll also no offense the no "offenser" too.. ;) You likely recall the thread from a few days ago where your attempt to convert more complex C / OpenGL model loading code to Java which was riddled with fundamental errors and misunderstandings about Java. Thus yes.. Learning C will not assist with Java per se. And of course you listed C++ which is an OO extension and not functional oriented at all.

moha1994 (I'll take a wild stab and guess he/she may be 16) and may likely be new to software dev (welcome!). It definitely is a journey that takes time to process and the way forward is not always clear or easy especially with game dev. If you are familiar with Java and need help with game development topics that is an entirely different line of inquiry. Basic 2D games can be made without too much math background, but there are topics in 3D dev that are not covered until university level courses (linear algebra being the most pertinent). If you are in highschool pay attention in math class and don't get discouraged when your classes will not promote an application of what you are learning. Luckily 80% of the math that you need to know to do exciting things in 2D / 3D graphics/game dev is not overly complex, but still it takes time to understand how to apply all of it.

The best advice is to take very small steps. If you are new to game dev avoid OpenGL / ES and first start working with the fundamental 2D API available with Android or Java2D on the desktop. Load a bitmap (image) and figure out how to display it on screen then figure out how to connect that to input events so the bitmap can be moved around by touch, key, trackball/navigation, and sensor input.

If you are new to programming and game dev don't get discouraged it takes years to understand many of the complexities involved. It's important though to figure out sooner than later if you have the passion and interest to put in the time necessary to succeed with software dev.

I'll actually be launching comprehensive set of tutorials taking devs through fundamental first apps through a full 3D FPS game engine based on Java middleware called TyphonRT that I'm releasing imminently. Send me an email at the contact address on the site and I'll let you know when things go live:
www.typhonrt.org
Founder & Principal Architect; EGR Software LLC
http://www.typhonrt.org
http://www.egrsoftware.com
User avatar
MichaelEGR
Senior Developer
Senior Developer
 
Posts: 147
Joined: Thu Jan 21, 2010 5:30 am
Location: San Francisco, CA

Re: requirements to start

Postby moha1994 » Thu Aug 19, 2010 2:13 pm

@Michael thanks for your reply it is the best answer i could get and yes i know i am going to start learning the basics of java 2d because it is much more easier then c++ to start with. And keep me up 2 date about your engine and tuts looking forward to it ! :)
moha1994
Freshman
Freshman
 
Posts: 6
Joined: Thu Aug 19, 2010 12:28 am

Re: requirements to start

Postby jonbonazza » Thu Aug 19, 2010 2:55 pm

Haha, yes Michael, that is true, however with that said, I just figured that maybe OO design would be hard to grasp by someone with no prior knowledge in programming. I know that I have a very extensive knowledge of C/C++ (and C++ isn't necessarily OO, it's really just an extension of C, although it does have a lot of OO aspects. I probably should have suggested C instead), and it was still sort of hard to grasp the concept of some of the stuff in Java. Although perhaps that is because I am so used to doing things the "long way around" in C/C++.
jonbonazza
Master Developer
Master Developer
 
Posts: 665
Joined: Thu Jul 15, 2010 2:58 pm
Location: WV USA

Top

Re: requirements to start

Postby MichaelEGR » Thu Aug 19, 2010 3:25 pm

@maha: Check out this book:
http://www.amazon.com/Head-First-Java-K ... 0596009208

I haven't checked it out personally, but I understand it's well regarded easy to digest introduction to Java. For the more hardcore coverage Thinking in Java by Bruce Eckel is nice and I believe is also available online for free. I first experienced Eckel's thorough coverage with Thinking in C++ back in the day. The Eckel book will be intense, but if you get through it you'll have a rather deep knowledge of Java.

Also another good one in the Head First series:
http://www.amazon.com/First-Design-Patt ... 596007124/

If you start working with the Java2D API with J2SE desktop Java you'll find it's quite similar to the Android 2D API. Of course the API is different, but the concepts are essentially the same. If you have and Android device it's certainly fine to jump right to working with it. Consider using a device as soon as possible as the Android emulator is not the best for game dev. While the emulator works ok for the Android 2D API it will not work well for OpenGL ES dev, so get used to developing on a real device.

For Android dev I've never picked up a book, so offhand I don't have a good one to recommend that is game dev focused... Of course as mentioned I'll be writing a thorough set of tutorials soon.. Do drop me a quick email at the contact address on the web page though so I remember to send you a note when the tutorials publicly launch.

I definitely recommend to get a handle on some simple 2D applications, but another route is to use premade engines that assist in game dev. The forum owner here has created one called AndEngine. It's more of a black box engine where the internal OpenGL ES implementation is hidden and it provides an easier to use API for game creation. Another one is Rokon2D. Of course I'll be getting my platform out which has game dev features and a whole lot more soon.

@jonbonazza: ;) I think it's fair to assume starting with Java and OO dev is gentle enough especially considering most universities teach Java out of the gate as the core introductory language for over a decade. I actually got through the uni system with C/C++ just before the switch. It is useful to know about especially since it's a little closer to the hardware so to speak compared to Java.
Founder & Principal Architect; EGR Software LLC
http://www.typhonrt.org
http://www.egrsoftware.com
User avatar
MichaelEGR
Senior Developer
Senior Developer
 
Posts: 147
Joined: Thu Jan 21, 2010 5:30 am
Location: San Francisco, CA

Re: requirements to start

Postby jonbonazza » Thu Aug 19, 2010 3:39 pm

Yea, my Uni teaches C/C++ before java as well.. Although I am taking my last class on C++ and my first class on Java this comeing semester (Starts Monday :x) I am the type of person who likes to learn, so I teach myself a lot of stuff rather than sitting through a summer or two waiting to take a particular class.. Besides, I feel having the background I have will help me ease through the classes when I do have to take them. lol
jonbonazza
Master Developer
Master Developer
 
Posts: 665
Joined: Thu Jul 15, 2010 2:58 pm
Location: WV USA

Re: requirements to start

Postby moha1994 » Thu Aug 19, 2010 5:09 pm

@michael thanks i have send you a e-mail. And yes i have a android device (samsung galaxy s) and i wil try evereything on it but i have a other question at what age did you start learning java developing etc etc ?
moha1994
Freshman
Freshman
 
Posts: 6
Joined: Thu Aug 19, 2010 12:28 am

Re: requirements to start

Postby moha1994 » Thu Aug 19, 2010 5:12 pm

and another question at the central libary of my city they have got java for dummies but it is from 1997 is that a problem ?
moha1994
Freshman
Freshman
 
Posts: 6
Joined: Thu Aug 19, 2010 12:28 am

Re: requirements to start

Postby MichaelEGR » Thu Aug 19, 2010 5:42 pm

@moha: Indeed it will be out of date in regard to Java. You'll want to find a book after 2004/5 preferably. A lot the important performance oriented additions to Java occurred at version 1.4 released in 2002 and there were further pertinent additions (generics, etc.) with version 1.5 released in 2004.

Not sure what means you have to purchase a book, but the Head First Java one will be the best introduction and search out for an ebook. I see it available for around $35US. No shipping with an ebook, etc.
Founder & Principal Architect; EGR Software LLC
http://www.typhonrt.org
http://www.egrsoftware.com
User avatar
MichaelEGR
Senior Developer
Senior Developer
 
Posts: 147
Joined: Thu Jan 21, 2010 5:30 am
Location: San Francisco, CA

Re: requirements to start

Postby jonbonazza » Thu Aug 19, 2010 5:52 pm

Check out Amazon.com. I order books from them all of the time and they have some very good java books including the one that Micahel recommended.
jonbonazza
Master Developer
Master Developer
 
Posts: 665
Joined: Thu Jul 15, 2010 2:58 pm
Location: WV USA

Re: requirements to start

Postby moha1994 » Thu Aug 19, 2010 6:23 pm

@michael ok thank you and i have seen your site egrsoftware and no offence but i think it looks kind a boring/old if you ever want to upgrade i wil create a new nice one for you because i do know allot of php scripting and made allot of other sites.

@jonbonazza ok thanks i wil do
moha1994
Freshman
Freshman
 
Posts: 6
Joined: Thu Aug 19, 2010 12:28 am

Re: requirements to start

Postby jonbonazza » Thu Aug 19, 2010 6:42 pm

Hmmm, Michael, does your Scream API include anything for pitch correction? Also, is this API supported by Android?
jonbonazza
Master Developer
Master Developer
 
Posts: 665
Joined: Thu Jul 15, 2010 2:58 pm
Location: WV USA

Re: requirements to start

Postby MichaelEGR » Thu Aug 19, 2010 6:59 pm

Ahh.. Unfortunately Scream is an API to connect to the SuperCollider3 DSP server and potentially other DSP engines / software that uses OSC (Open Sound Control); OSC is a network protocol for control data for music and other purposes too. I will be releasing an OSC library for Java / Android that should enable app dev in a similar manner as TouchOSC for the iPhone. Perhaps PM me though for more conversation as to not hijack this thread.. :)
Founder & Principal Architect; EGR Software LLC
http://www.typhonrt.org
http://www.egrsoftware.com
User avatar
MichaelEGR
Senior Developer
Senior Developer
 
Posts: 147
Joined: Thu Jan 21, 2010 5:30 am
Location: San Francisco, CA

Top

Return to General

Who is online

Users browsing this forum: Yahoo [Bot] and 3 guests