• Announcements

    • khawk

      Download the Game Design and Indie Game Marketing Freebook   07/19/17

      GameDev.net and CRC Press have teamed up to bring a free ebook of content curated from top titles published by CRC Press. The freebook, Practices of Game Design & Indie Game Marketing, includes chapters from The Art of Game Design: A Book of Lenses, A Practical Guide to Indie Game Marketing, and An Architectural Approach to Level Design. The GameDev.net FreeBook is relevant to game designers, developers, and those interested in learning more about the challenges in game development. We know game development can be a tough discipline and business, so we picked several chapters from CRC Press titles that we thought would be of interest to you, the GameDev.net audience, in your journey to design, develop, and market your next game. The free ebook is available through CRC Press by clicking here. The Curated Books The Art of Game Design: A Book of Lenses, Second Edition, by Jesse Schell Presents 100+ sets of questions, or different lenses, for viewing a game’s design, encompassing diverse fields such as psychology, architecture, music, film, software engineering, theme park design, mathematics, anthropology, and more. Written by one of the world's top game designers, this book describes the deepest and most fundamental principles of game design, demonstrating how tactics used in board, card, and athletic games also work in video games. It provides practical instruction on creating world-class games that will be played again and again. View it here. A Practical Guide to Indie Game Marketing, by Joel Dreskin Marketing is an essential but too frequently overlooked or minimized component of the release plan for indie games. A Practical Guide to Indie Game Marketing provides you with the tools needed to build visibility and sell your indie games. With special focus on those developers with small budgets and limited staff and resources, this book is packed with tangible recommendations and techniques that you can put to use immediately. As a seasoned professional of the indie game arena, author Joel Dreskin gives you insight into practical, real-world experiences of marketing numerous successful games and also provides stories of the failures. View it here. An Architectural Approach to Level Design This is one of the first books to integrate architectural and spatial design theory with the field of level design. The book presents architectural techniques and theories for level designers to use in their own work. It connects architecture and level design in different ways that address the practical elements of how designers construct space and the experiential elements of how and why humans interact with this space. Throughout the text, readers learn skills for spatial layout, evoking emotion through gamespaces, and creating better levels through architectural theory. View it here. Learn more and download the ebook by clicking here. Did you know? GameDev.net and CRC Press also recently teamed up to bring GDNet+ Members up to a 20% discount on all CRC Press books. Learn more about this and other benefits here.
Sign in to follow this  
Followers 0
kronus980

Game programming help

9 posts in this topic

I've been studying programming for some years, and I'm well versed in C++ and Java. I know the very basics of coding in OpenGL, whilst currently learning OpenGL ES 2.0, and had a few questions:

- Before programming a 3D world, I hear it's suggested to start off with 2D. Is it recommended to do so? And how much is it recommended?

 

- What parts of the game are to be coded first? (i.e; if it's a 3D game, the model loader? Or menus and getting them to work?)

 

- Is a mastery of an API necessary before using it? (i.e; Knowing most of it off the top of your head)

 

- And what is the best light linux IDE? I love Geany and I've yet to find something as conveniently packed with features whilst being this light.

 

Any knowledge on any of these topics would be appreciated.

1

Share this post


Link to post
Share on other sites

2D is much much easier. Start out with the GUI and login system. then move on to the database and get everything set up correctly. There is no point in programming a game if you cant correctly implement you data for the game, simply because you have yet to create the database/storage of data... BTW - for the sake of the meme - "One does not simply.... program a game without a database"

 

oh right, the best ide for linux would have to be netbeans ide for java and c++... or eclipse (some prefer that)

sudo apt-get install netbeans

sudo apt-get install eclipse

Edited by JinixVomitorium
0

Share this post


Link to post
Share on other sites
Working with a 3D world is more complex than working with a 2D world. You may want to try the easier of the two before you try to tackle the harder. It's just a matter of not overwhelming yourself with too much new stuff at once.

Design comes first. Build your design from the top down (in your head or on paper) and then start writing the code that will implement that design. Obviously you can't test much until you have that component built from the bottom up, so I usually start from the bottom and build a system outside of the main project, test it thoroughly and then import it once I'm confident that it's working.

You should know at least the general concept of how an API is used and it's a good idea to flip through the docs and see what all it offers, but trying to memorize the whole thing would be silly. Just use the documentation as a reference and you'll usually automatically memorize the stuff you use the most.

About linux IDEs... vi? O wait... lol I dunno. I only use bash on emulators. I'm sure there's some good ones though.
2

Share this post


Link to post
Share on other sites

[quote name='Khatharr' timestamp='1357344325' post='5017571']
Working with a 3D world is more complex than working with a 2D world. You may want to try the easier of the two before you try to tackle the harder
[/quote]

Ehh..we'll see wink.png I usually accept a challenge.

 

[quote name='Khatharr' timestamp='1357344325' post='5017571']
Design comes first. Build your design from the top down (in your head or on paper) and then start writing the code that will implement that design.
[/quote]
Right, and agreed.

 

[quote name='Khatharr' timestamp='1357344325' post='5017571']

Just use the documentation as a reference and you'll usually automatically memorize the stuff you use the most
[/quote]

 

I've memorized a few small API's wacko.png I thought it was normal sad.png

0

Share this post


Link to post
Share on other sites
I've been studying programming for some years, and I'm well versed in C++ and Java. I know the very basics of coding in OpenGL, whilst currently learning OpenGL ES 2.0, and had a few questions:

- Before programming a 3D world, I hear it's suggested to start off with 2D. Is it recommended to do so? And how much is it recommended?

 

- What parts of the game are to be coded first? (i.e; if it's a 3D game, the model loader? Or menus and getting them to work?)

 

- Is a mastery of an API necessary before using it? (i.e; Knowing most of it off the top of your head)

 

- And what is the best light linux IDE? I love Geany and I've yet to find something as conveniently packed with features whilst being this light.

 

Any knowledge on any of these topics would be appreciated.

 

I'd definitely suggest writing a few simple 2d games before jumping into 3D.  Making games is SOOO much more than the graphical representation shown on the screen, and having a 3D game will increase the complexity beyond the act of making a game.  I'd recommend learning the nuances of making a game, then moving to 3D if you want to. 

 

 As many games have shown us (Dwarf Fortress is one), the GFX often mean the least as far as how fun a game is.  

1

Share this post


Link to post
Share on other sites

[quote name='JinixVomitorium' timestamp='1357343831' post='5017567']
BTW - for the sake of the meme - "One does not simply.... program a game without a database"
[/quote]

 

That's a silly quote.  Are you saying an Angry Birds clone needs a database?  

 

Or are you trying to say a database is simply external data that drives the game content; in that case, I'd agree, but in  the case of traditional databases, you can make tons of fun games without them.

0

Share this post


Link to post
Share on other sites
I've memorized a few small API's ... I thought it was normal ...

For small API's it is because there's just not much to pick up, but it would be a waste of time to intentionally memorize every API call in OpenGL or something. Knowing what's available in the API is more important than being able to make obscure calls without referring to the docs. Especially with IDE features like intellisense (or equivalents) being able to fill in the blanks with a lot of stuff.

Basically you don't want to memorize a bunch of stuff that's going to be outdated when the next version rolls around. You've got better things to do. ;)

BTW - for the sake of the meme - "One does not simply.... program a game without a database"



That's a silly quote. Are you saying an Angry Birds clone needs a database?

Or are you trying to say a database is simply external data that drives the game content; in that case, I'd agree, but in the case of traditional databases, you can make tons of fun games without them.



For real, I don't know why it seems like everyone is obsessed with formal databases these days. There are certainly uses for them but it's not as if languages don't have other highly effective methods for storing and retrieving data.
0

Share this post


Link to post
Share on other sites

I've been studying for years, yet it feels like I know very little/nothing. At least for when it comes down to advanced stuff(things I find advanced at least). What would be the best way to familiarize myself with game programming? (i.e; Graphics/sound included.)

0

Share this post


Link to post
Share on other sites

Your question regarding to what you want to do is a bit vague. you can make a game in a game engine without understanding hard concepts. With that said, I am going to assume that you are trying to create your own engine. If this is the case, my first and foremost suggestion to you would be learning linear algebra(vector and matrix calculations) and trigonometry. you will have to face these maths in every path you take during your bumpy ride. I would suggest you to stay away from OpenGL ES 2.0 until you are capable of using matrix transformation to manipulate matrix operation of the OpenGL ES 1 manually, rather then using push and pop matrix function of the OpenGL. If you don't have a strong grasp of these mathematical concepts you are more likely to loose your motivation right at the beginning.

0

Share this post


Link to post
Share on other sites
If you've already got decent programming skills then just start checking out libraries like OpenGL, DirectX, FMOD, etc. Really just jump in. Start making your tic-tac-toes and pongs to get familiar with your chosen libraries or engine and just keep pushing forward.

You'll have a lot of trouble. Just come back here and ask about it. We can answer specific questions as they come up better than we can give overarching guidelines for game making. smile.png
0

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0