• 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
Assassinbeast

I want to be a 2d gameprogrammer. But where should i start?

6 posts in this topic

Hello gamedev community![img]http://public.gamedev.net//public/style_emoticons/default/smile.png[/img]

I want to know where is the best place to start learning gamedevelopment.

I know c++ quite well and also learned a little about the allegro library and made some minigames. But ive heard that in allegro you cant make multiplayergames over the internet, so i kinda dunno if i should continue learning allegro, because it would some waste of time if i should start learning some other library anyway...

So at this moment im aiming to be a professional 2d gamedeveloper, and my dream is to make a 2d game that is very big and can get into the esports (thats easy enough to say, BUT THATS MY DREAM! and i have a very good idea to my game [img]http://public.gamedev.net//public/style_emoticons/default/biggrin.png[/img] ).

But the big problem is that im a newby when it comes to the background, history and simple knowledge of gamedevelopment and programming. When i read in forums and on the internet, people talk about for example .net framework, win32 and all kinds of crazy stuff i have no idea what it is about. Ive tried to search around, but its hard to find an exact anwser to that. So i dont really know how to start

But anyway. Ive been looking around and i have been thinking about to start learning directx/direct2d because its very popular and there are many books that teaches it. But is it the right choice?
Where should i begin?
What do u suggest i should learn when i in the future want to be a proffessional 2d gamedeveloper if not directx?
What are the best books you guys have experienced from?

this topic might change my life, because im a very motivated guy who loves games and love c++ coding. I started from 2 months ago with this c++ and since then, ive been sticked to the screen and im so happy that i found the beauty about programming and ive come a big long way. Ive found my passion its fun, and its my daily hobby for me.

I would appreciate everyones replies and help

Thank you everyone for taking time to help a noob[img]http://public.gamedev.net//public/style_emoticons/default/laugh.png[/img]
0

Share this post


Link to post
Share on other sites
[quote name='Assassinbeast' timestamp='1349478715' post='4987277']
But ive heard that in allegro you cant make multiplayergames over the internet, so i kinda dunno if i should continue learning allegro, because it would some waste of time if i should start learning some other library anyway...
[/quote]
That's not quite correct. I don't believe Allegro includes networking functionality itself -- so you would need to use a networking only library as well -- but you [i]can[/i] still use all of the other functionality (windowing, input, drawing, etc.) and create a multi-player game. It's quite normal to use multiple libraries for different purposes, and you would do the same if you had chosen SDL as an alternative to Allegro.

If you'd prefer a similar library that also includes networking however, you might try [url="http://sfml-dev.org/"]SFML[/url] instead.
2

Share this post


Link to post
Share on other sites
SFML is beast, a lot of people say it is restricted, but with SFML 2.0 all those (insignificant) problems are away. I found that coming from an object oriented standpoint, it's definitely better for newer programmers.
0

Share this post


Link to post
Share on other sites
[quote name='superman3275' timestamp='1349495765' post='4987321']
SFML is beast, a lot of people say it is restricted, but with SFML 2.0 all those (insignificant) problems are away. I found that coming from an object oriented standpoint, it's definitely better for newer programmers.
[/quote]
That is correct, sfml 2.0 is HOT at this time.
But SDL should not be a turn off, it is a worthy opponent of sfml.
SDL provides few things better then SFML, but SFML provides more things then SDL and others better then SDL.
its up to personal like at the end.

SDL it currently OLD and there is announced update.
SFML is at the moment HOT with sfml2.0 out and currently kinda hard to find good tutorials about,
but there is SFML documentation on their main page where they provide everything you need to know, and its easy to use. Edited by BaneTrapper
0

Share this post


Link to post
Share on other sites
[quote name='jbadams' timestamp='1349489116' post='4987311']
[quote name='Assassinbeast' timestamp='1349478715' post='4987277']
But ive heard that in allegro you cant make multiplayergames over the internet, so i kinda dunno if i should continue learning allegro, because it would some waste of time if i should start learning some other library anyway...
[/quote]
That's not quite correct. I don't believe Allegro includes networking functionality itself -- so you would need to use a networking only library as well -- but you [i]can[/i] still use all of the other functionality (windowing, input, drawing, etc.) and create a multi-player game. It's quite normal to use multiple libraries for different purposes, and you would do the same if you had chosen SDL as an alternative to Allegro.

If you'd prefer a similar library that also includes networking however, you might try [url="http://sfml-dev.org/"]SFML[/url] instead.
[/quote]

Cool... Does that mean if i transition into SFML, then can set my game and servers up, so people all over the world can log on, join chatrooms, create game and play together up to e.g. 20 players etc etc...

Sorry, i know it sounds pretty dumb... but i just want straightfoward answers [img]http://public.gamedev.net//public/style_emoticons/default/laugh.png[/img] and not going into the wrong direction, because i just started 2 months ago from scratch, and i dont really know about client/servers/ip/udp and all those crazy things. but im pretty sure it costs money (from my experience when i was a kid and play online games) if u need to set servers up that are not lagging.

But with my knowlegde about c++ and programming... i can barely imagine how to set up chatrooms/servers. But i know i can learn it.

Anyway... thank you for helping me. gamedev community rocks!
0

Share this post


Link to post
Share on other sites
SFML is useful for developing your [i]client-side[/i] applications -- the actual game that your players would run.

Unless your clients are connecting [i]to each other[/i] directly (this is called [i]"peer-to-peer" networking[/i]) you would also need to develop a server application separately. You could theoretically do this using the networking functionality SFML provides as well, but it would probably not be the ideal choice for your server code. You would also need to have one or more servers for your players to connect to -- and yes, if you want to provide a lag-free playing experience world-wide this can potentially be quite expensive.


Online multi-player is a pretty advanced topic, and it can be a very difficult task to get everything working smoothly. If you've only started learning from scratch a couple of months ago multi-player (other than perhaps starting to play around with simple one-to-one chat or very simple two-player games) is probably something you would be better to put aside until you are more experienced. I won't go so far as to tell you not to try it if it's what really interests you, but I would strongly recommend getting more comfortable with the basics of game development as well as programming in general before you try to tackle online multi-player.

In the meantime, working with SFML -- or Allegro and later having to learn a separate networking library for that matter -- is a good choice that will not hold you back in the long run, and personally I would suggest you continue learning. Once you're comfortable creating single-player games you could try moving on to basic multi-player (that is, two players, directly connected rather than than via a server) and then eventually work your way up to more complex online multi-player games with a server.


Don't worry about potentially having to learn new libraries in the long run -- that isn't something you should be concerned about or trying to avoid -- skilled professional developers use many languages and libraries during their career, and successful independent and professional games often use [i]many[/i] libraries for any given game. If you stick with it and become a skilled programmer you will learn to use multiple languages and libraries too!


Hope that's helpful! [img]http://public.gamedev.net//public/style_emoticons/default/smile.png[/img]
0

Share this post


Link to post
Share on other sites
[quote name='jbadams' timestamp='1349590669' post='4987597']
SFML is useful for developing your [i]client-side[/i] applications -- the actual game that your players would run.

Unless your clients are connecting [i]to each other[/i] directly (this is called [i]"peer-to-peer" networking[/i]) you would also need to develop a server application separately. You could theoretically do this using the networking functionality SFML provides as well, but it would probably not be the ideal choice for your server code. You would also need to have one or more servers for your players to connect to -- and yes, if you want to provide a lag-free playing experience world-wide this can potentially be quite expensive.


Online multi-player is a pretty advanced topic, and it can be a very difficult task to get everything working smoothly. If you've only started learning from scratch a couple of months ago multi-player (other than perhaps starting to play around with simple one-to-one chat or very simple two-player games) is probably something you would be better to put aside until you are more experienced. I won't go so far as to tell you not to try it if it's what really interests you, but I would strongly recommend getting more comfortable with the basics of game development as well as programming in general before you try to tackle online multi-player.

In the meantime, working with SFML -- or Allegro and later having to learn a separate networking library for that matter -- is a good choice that will not hold you back in the long run, and personally I would suggest you continue learning. Once you're comfortable creating single-player games you could try moving on to basic multi-player (that is, two players, directly connected rather than than via a server) and then eventually work your way up to more complex online multi-player games with a server.


Don't worry about potentially having to learn new libraries in the long run -- that isn't something you should be concerned about or trying to avoid -- skilled professional developers use many languages and libraries during their career, and successful independent and professional games often use [i]many[/i] libraries for any given game. If you stick with it and become a skilled programmer you will learn to use multiple languages and libraries too!


Hope that's helpful! [img]http://public.gamedev.net//public/style_emoticons/default/smile.png[/img]
[/quote]

It was indeed helpfull!! thank you so much [img]http://public.gamedev.net//public/style_emoticons/default/biggrin.png[/img]
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