Jump to content
  • Advertisement
Sign in to follow this  
Akaisanlahti

Advice (mainly) on beginning 2D graphics

This topic is 2587 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Hello there. I'm a beginner programmer who would like advice mainly on how to get started in implementing graphics, sound - essentially the stuff that I'm not in charge of making as a programmer. I have done a little bit of C++, although I'm keeping it on hold until my degree programme goes through it, unless there's a reason to start it again before that. Until then, I'm probably doing C#, which is what we're using with the basics. Sometimes the amount of readily usable stuff horrifies me compared to C++, but I guess I can manage that.

At the moment I'm applying the tools and knowledge I get/discover to console applications, which does teach me a lot. I haven't actually programmed any games yet, I'm just curious on how to implement certain ideas in general as well as applying it to the console, such as moving a char representing the player around (the legendary @), checking for obstacles before moving, how to handle moving in a menu and so on. At first I "bruteforce" my idea through so that it at least works as intended and then I usually come up with solutions to actually making it better, more general and easier.




XNA is often associated with C# and I might want to try it out as well, but I would like to actually do more open-ended programming. Especially in the future I wouldn't like to restrict myself to specific platforms. Of course I've read a little bit about SDL as well as well as other ideas for implementing 2D, but since I'm not that knowledgeful, I'd like to hear and see more. Regardless of what I start with, I would appreciate very much if I could get my hands on some site introducing the "tools" associated with the framework/library/whatever-in-question. By tools I mean similar concepts such as just a basic for, while, do while loops. Introducing the basic idea behind it, maybe some examples and problems one can easily create (e.g. infinite loops).




To sum it up: While entertaining myself with the basics and applying them, I'm looking for resources and advice on starting with the other areas needed for most games. 2D is perfectly fine at this point. I need to revise my mathematics before starting 3D, especially more difficult calculations with matrices.

//sorry, apparently I got a double topic. Delete the other one


Share this post


Link to post
Share on other sites
Advertisement
Sorry for bumping, but I suspect the probability of this thread being read goes down as I fall through a page or two. Any resources you guys would know of?

Share this post


Link to post
Share on other sites
Well just try some easy tutorial for your favorite language. moving a sprite around is nothing more then (if certain button is pushed then change position.). The 3 questions you ask are pretty much all very different, you should look to get advice on them one by one but...To learn collision there are plenty of tutorials out there, most commonly you just check if 2 rectangles intersect eachother. Moving in a menu can be done on several ways, you could make some string entries with a on/off state attached to them. When you scroll through the menu those states switch on and off and when the player picks a entry you could sent the correct ID to show the next screen or even directly attach that screen in somekind of menu management system.

I think you mean functions, you can just look 'm all up online. If you want to check out loops just type "(prefered language) loops". Once you start working and use google efficiently all these functions will start to get familiar to you. Un infinite loop is pretty simple to comprehend, it's a loop that does not finish. Like you do something in a while loop till a number reaches a specific height, but you forget to increment that number inside the loop. 99% of your question will get answered if you start doing some programming, lookup some tutorials that interest you, google some functions and get familiar with the explenations they give on those such as syntaxes.

If you did not program any games yet you should really try out XNA, especially when you have some good knowledge of C#. With XNA you can leave the hard work behind you for now and really focus on making games. Showing a sprite on the screen can be done in less then 1 hour, if your good you can even put some controll on it in the same amount of time. With XNA you can quickly make games, and learn whats going on. XNA still has a lot of freedom, i bet you can make anything your capable off in your first decade of starting out as a programmer. Just download it, do a couple of tutorials and fall in love.

Good luck!

Share this post


Link to post
Share on other sites
Take a look at my blog 2D Game Making Blog I have created a simple 2D game, and I blog about the development from start to finish. Go to the 1st post and read backwards.

While my blog isn't for extremely new programmers, it will certainly give you some ideas and understanding of working in a 2D environment.

Good Luck.

Share this post


Link to post
Share on other sites

Well just try some easy tutorial for your favorite language. moving a sprite around is nothing more then (if certain button is pushed then change position.). The 3 questions you ask are pretty much all very different, you should look to get advice on them one by one but...To learn collision there are plenty of tutorials out there, most commonly you just check if 2 rectangles intersect eachother. Moving in a menu can be done on several ways, you could make some string entries with a on/off state attached to them. When you scroll through the menu those states switch on and off and when the player picks a entry you could sent the correct ID to show the next screen or even directly attach that screen in somekind of menu management system.

I think you mean functions, you can just look 'm all up online. If you want to check out loops just type "(prefered language) loops". Once you start working and use google efficiently all these functions will start to get familiar to you. Un infinite loop is pretty simple to comprehend, it's a loop that does not finish. Like you do something in a while loop till a number reaches a specific height, but you forget to increment that number inside the loop. 99% of your question will get answered if you start doing some programming, lookup some tutorials that interest you, google some functions and get familiar with the explenations they give on those such as syntaxes.

If you did not program any games yet you should really try out XNA, especially when you have some good knowledge of C#. With XNA you can leave the hard work behind you for now and really focus on making games. Showing a sprite on the screen can be done in less then 1 hour, if your good you can even put some controll on it in the same amount of time. With XNA you can quickly make games, and learn whats going on. XNA still has a lot of freedom, i bet you can make anything your capable off in your first decade of starting out as a programmer. Just download it, do a couple of tutorials and fall in love.

Good luck!


I appreciate the fact that you did post to this topic and I do realise that I have a habit of expressing myself quite obscurely sometimes, but that is kind of exactly what I was not asking for. I'll try to express myself more clearly in case I was not that clear. Most of what I described above I have already tried out using ASCII/Unicode characters and such in a console application. For example I have created a small map and tried not to crash it, overwrite walls with the character or anything like that. That is not the issue at the moment.

Instead of a tutorial saying "insert this code", I am looking for basically resources describing a tool which I can try out myself and play with it as I wish. The loops I mentioned in my first post were used as examples. There are already many places describing the very basics of programming languages, but I am looking for resources (books, websites, whatever) describing graphical (and implementing other media) programming in the same way.




Take a look at my blog 2D Game Making Blog I have created a simple 2D game, and I blog about the development from start to finish. Go to the 1st post and read backwards.

While my blog isn't for extremely new programmers, it will certainly give you some ideas and understanding of working in a 2D environment.

Good Luck.


Thank you for your answer. Just in case I took a look and could understand some parts of the code on a shallow level. I do agree that the material is not for my level yet. I might read it later on when I get my basics to a good level.


Share this post


Link to post
Share on other sites
Tutorial just saying "insert this code" are no tutorials.

There are plenty of full game tutorials that have way more lines of explanation then code in it. For XNA i can throw some at you:
Tower defense tutorial You can reply to these blogs and firefly, the developer of it will comment/answer your question. Atleast he did for me some time ago within a day of posting. BTW, uppon finishing this you will not end up with a game but with the knowledge on how to create your own tower defense game.

RPG in XNA 3.0/3.1 yeah it sucks that it's for 3.1 but there are plenty of resources out there to help you convert something from 3.0 to 4.0. This guy explains every little detail and uppon finishing this you know plenty to create your own RPG.

Just look around the web, or search some threads where people ask for books, plenty of topics out there.

About the functions, well you could go to the documentary of your language and scroll through all functions. They all have explenations and samples. Some have the options for readers to comment on these and people will show dozens of uses on particlar functions. For instance all you want to know about socket programming in C# is listed here : http://msdn.microsoft.com/en-us/library/system.net.sockets.socket.aspx

Good luck,

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!