Jump to content

  • Log In with Google      Sign In   
  • Create Account


HELP!


Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

  • You cannot reply to this topic
23 replies to this topic

#1 Saint Squireen   Members   -  Reputation: 181

Like
0Likes
Like

Posted 05 July 2012 - 12:01 AM

I am starting my career as a programmer and I know very very basic C++ but before i go any farther, I was wondering what kind of.....idk....... 2d/3d audio/visual/networking thing I should use!!! As you can see I know nothing about this topic at all (especially since I dont have any idea what it is called:D) and I have been scrounging around the web for any type of material that could help sway me to a certain one but came up empty handed and starving for info!!!! Could somebody please help me?!?!? So far all I have come up with is 'SFML' and it looks sounds good but I cant tell if thats the one I should use..... Just to give you an idea on what Im looking for, I want to be able to implement:

Object-oriented features
2d/3d features
Very basic: visuals/audio/(perhaps even some multiplayer capabilities although I wont need them)/GUI implementation
Ability to make an instance of an object(be able to make a box or something and have it displayed over a hundred times, with all the same characteristics but with out making a sprite for everysingle one)(example: 2d/3d minecraft clone capabilities)
Usably by an indie developer
Not to hard to set up

Any help on this matter would be so beneficial for me you wouldnt believe it!!!! I hope that with all this info given, somebody can help enlighten me with one that hits more than half of the criteria if not all of it.

Please help, thanks,
Saint Squireen

~Saint Squireen

Sponsor:

#2 xbattlestation   Members   -  Reputation: 295

Like
0Likes
Like

Posted 05 July 2012 - 12:33 AM

Sounds like you are after a game engine perhaps? Seeing as you dont have much in the way of programming experience, I'd suggest Game Maker - see yoyogames.com.
Storm Clouds over the Western Front - 2D aerial combat WIP | DarklightXNA on Twitter | 2DFlightSim on Youtube

#3 Dragonsoulj   Crossbones+   -  Reputation: 2008

Like
2Likes
Like

Posted 05 July 2012 - 12:36 AM

If you intend to go the programming route instead of something like Game Maker, SFML can do that. 3D may take a little extra work.

#4 Saint Squireen   Members   -  Reputation: 181

Like
0Likes
Like

Posted 05 July 2012 - 12:44 AM

Well, see, the thing is that, at this very second (Dont take me too literally haha), is basically draw something on the screen. Maybe at a later time like next week or next month or next year I will get to all of the stuff that makes a game, a game but right now I want to focus on learning straight up C++ and very, very, very basic Gui/ drawing/coloring stuff.

~Saint Squireen

#5 Saint Squireen   Members   -  Reputation: 181

Like
0Likes
Like

Posted 05 July 2012 - 12:49 AM

[Dragonsoulj] I did do a little more research on SFML and it does look like a very nice and helpful (library?). The problem is that it also seems very hard and not helpful to set up properly.

~Saint Squireen

#6 DevLiquidKnight   Members   -  Reputation: 834

Like
4Likes
Like

Posted 05 July 2012 - 12:55 AM

Well, see, the thing is that, at this very second (Dont take me too literally haha), is basically draw something on the screen. Maybe at a later time like next week or next month or next year I will get to all of the stuff that makes a game, a game but right now I want to focus on learning straight up C++ and very, very, very basic Gui/ drawing/coloring stuff.

A game is no different then writing a large piece of software, the only thing that is different is its designed to be game. Their are literally tons of steps you must take before you reach what you can consider a game. My suggestion is you stop focusing on large things, such as a, "mine-craft clone" and start focusing on smaller projects. Not to make you feel bad but it's going to be years, before you get to where you can make a mine-craft clone. Especially if your not even fluent in C++ yet.

Edited by DevLiquidKnight, 05 July 2012 - 01:00 AM.


#7 Saint Squireen   Members   -  Reputation: 181

Like
0Likes
Like

Posted 05 July 2012 - 05:58 AM

Ok. Totally understandable. Dont worry about that, its not that harsh hahaha Everywhere Ive looked has told me (and the actual people it was addressed to) start with a tic-tac-toe game, or a 'Guess my Number' game where sometimes the player has to try to guess the randomly generated number and sometimes the computer will have to try to guess the players picked number. All of these seem within my capabilities right now so I think thats what I should stick to for the time being. Does that seem right to you?

~Saint Squireen

#8 Inuyashakagome16   Members   -  Reputation: 835

Like
1Likes
Like

Posted 05 July 2012 - 06:40 AM

[Dragonsoulj] I did do a little more research on SFML and it does look like a very nice and helpful (library?). The problem is that it also seems very hard and not helpful to set up properly.

i disagree 100%. SFML is NOT that hard to setup. It's just like any other game engine/graphics library. http://www.gamefromscratch.com/page/Game-From-Scratch-CPP-Edition.aspx < That link shows how to set it up for C++ for VS Express. http://www.sfml-dev.org/tutorials/ < and that link shows how to set it up for multiple platforms.
I set it up in VS and Code::Blocks with no problem. SFML is easier than DX and OpenGL when it comes down to syntax, how is that hard? o.o I started with SFML and it's pretty simple to understand. I mean considering that you're just getting started in this field somethings may seem difficult in that aspect but I'm sure after awhile you'll see that it's rather simple. :)

#9 Inuyashakagome16   Members   -  Reputation: 835

Like
0Likes
Like

Posted 05 July 2012 - 06:46 AM

And i agree that you should probably start small and work you're way up. If you're going with C++ there is a book on amazon for game programming which teaches you C++ while making small games. http://www.amazon.com/Beginning-Game-Programming-Development-Series/dp/1592002056/ref=sr_1_8?ie=UTF8&qid=1341492387&sr=8-8&keywords=C%2B%2B+game < Check it out.

#10 Josh Petrie   Moderators   -  Reputation: 2943

Like
1Likes
Like

Posted 05 July 2012 - 09:31 AM

Please don't go so overboard tagging your post (for example, there is no need to tag your post with variations of your own username or variations of the word "programming" that are spelled incorrectly or different capitalizations of various APIs).

I have removed most of the tags.

Edited by Josh Petrie, 05 July 2012 - 09:31 AM.

Josh Petrie | Core Tools Engineer, 343i | Microsoft C++ MVP


#11 Saint Squireen   Members   -  Reputation: 181

Like
0Likes
Like

Posted 05 July 2012 - 12:17 PM

Thank you for all the helpful insight, guys!! This is exactly what I was hoping for when signing up for these forums! I will definitely take a look at that book and try again with SFML later today! Also thanks for the useful tip- I wont be overloading the tags anymore. Some websites that I have visited were so large that you needed to use alot of tags just to get what you were asking about, glanced at.

~Saint Squireen

#12 dkrogmann   Members   -  Reputation: 143

Like
0Likes
Like

Posted 05 July 2012 - 12:23 PM

Just my opinion, but, C++ requires a lot of Library's to achieve a lot of what your looking for, or you have to do the grunt work to write the system handlers that you are asking for.

If you don't mind shifting to C# you can use Game Studio and it's XNA Framework to do most of that heavy lifting for you, plus, you get the added benefits of having all of that Creators Club material at your disposal. This will allow you to use Visual Studio Express 2010 as your IDE and Game Studio 4.0, to target the XBox 360, WP 7+, and the PC.

I realize this is all Microsoft specific and I will get trounced on by those that hate Microsoft, but this will get you started and building games faster, and then you can look for replacements for the XNA sub-systems, when you understand better what they are all doing.

I have used these systems, while getting my Associate's in Programming, Bachelor's in Game and Simulation, and my Master's in Game Design Degree's; and I could now use anything I want because of that starting foundation.

I now have a Game Framework I use for almost any project that I start, and can modify that as needed from project to project; as long as I'm targeting any Microsoft platform.

#13 Wackidev   Members   -  Reputation: 307

Like
0Likes
Like

Posted 05 July 2012 - 06:28 PM

As dkrogmann suggested, C++ is probably not the best choice for your first endeavors in programming. Perhaps try something easier, like Python or maybe C#. If you search the forums for "C++ first language" you'll turn up a lot of reasons why.

I recommend Python and Pygame. It seems someone has already told you the typical "do a guessing game and then Pong" suggestion; they're right. Work up from printing "Hello, World!" to making more and more advanced games. You'll get there if you keep at it!

gamedev.stackexchange.com is a great resource, as is this site. I've found books are the most useful learning tool for beginners. There are plenty of good ones for Python; I think I bought some from Amazon.

Good luck!

#14 DevLiquidKnight   Members   -  Reputation: 834

Like
0Likes
Like

Posted 05 July 2012 - 06:33 PM

As dkrogmann suggested, C++ is probably not the best choice for your first endeavors in programming. Perhaps try something easier, like Python or maybe C#. If you search the forums for "C++ first language" you'll turn up a lot of reasons why.

I disagree, if he already knows basic C++ it would be unwise to switch. Just stick with what you know, C++ may be harder but if your going to have to learn it anyways, and already know some of it, its more of a pain to switch. It is basically a waste of time to go learn something else just because people say its "easier."

Any language is easy if you work hard enough, quit being lazy and put in some hard work. Posted Image

Edited by DevLiquidKnight, 05 July 2012 - 06:35 PM.


#15 Wackidev   Members   -  Reputation: 307

Like
0Likes
Like

Posted 05 July 2012 - 06:50 PM

I disagree, if he already knows basic C++ it would be unwise to switch. Just stick with what you know, C++ may be harder but if your going to have to learn it anyways, and already know some of it, its more of a pain to switch. It is basically a waste of time to go learn something else just because people say its "easier."

Any language is easy if you work hard enough, quit being lazy and put in some hard work. Posted Image


I think we have gauged his skill level differently. I got the impression that he's just starting to look into game development and hasn't really made a commitment to C++ or coded more than a few console tests. (He says a guessing game is "within his capabilities", not that he's done one yet.)

As to needing to learn C++ anyway: not necessarily. There are plenty of libraries and platforms that can be used to develop games that don't use C++. In any case, learning C++ first is probably not the best way; I'd recommend a more gentle introduction. Learning C# or Python first is not being "lazy." We don't start our careers coding MMOs, we code "hello, world."

#16 DevLiquidKnight   Members   -  Reputation: 834

Like
0Likes
Like

Posted 05 July 2012 - 06:57 PM

As to needing to learn C++ anyway: not necessarily. There are plenty of libraries and platforms that can be used to develop games that don't use C++.

Not if your going to do a career in it as he said.

Learning C# or Python first is not being "lazy." We don't start our careers coding MMOs, we code "hello, world."

It is to an extent, when you considering everything is basically already implemented for you in C#, and more so in Python. I didn't recommend he code an MMO, instead of hello world, I recommended he stick to what he already has experience with. Posted Image

That is not to say you cannot learn in those languages, you can, but you will be missing the finer details.

Edited by DevLiquidKnight, 05 July 2012 - 06:59 PM.


#17 Wackidev   Members   -  Reputation: 307

Like
0Likes
Like

Posted 05 July 2012 - 07:15 PM

Not if your going to do a career in it as he said.


Once again we have interpreted him differently. I took "career" more generally.

It is to an extent, when you considering everything is basically already implemented for you in C#, and more so in Python. I didn't recommend he code an MMO, instead of hello world, I recommended he stick to what he already has experience with.

That is not to say you cannot learn in those languages, you can, but you will be missing the finer details.


Everything already implemented? If you're referencing the standard/.NET libraries: true, many low-level tasks are abstracted to save you from "reinventing the wheel", so to speak. But if he wants to write a web scraper, should he really be initiating the socket connection and parsing HTTP to do so?

As to missing the finer details: If you're referring to pointers/memory management/low-level programming stuff in general, then yes, he will be missing it at first. I'm not objecting to his learning low-level languages down the road. I'm just suggesting they may not be ideal at first.

#18 Telastyn   Crossbones+   -  Reputation: 3712

Like
0Likes
Like

Posted 05 July 2012 - 07:41 PM

That is not to say you cannot learn in those languages, you can, but you will be missing the finer details.


Yes, missing fine details like how to smelt your own steel when all you want is a roof over your head.

C++ is nothing but a string of landmines for beginners to walk into repeatedly.

#19 DevLiquidKnight   Members   -  Reputation: 834

Like
-1Likes
Like

Posted 05 July 2012 - 07:50 PM

Yes, missing fine details like how to smelt your own steel when all you want is a roof over your head.

Your analogy is a bad one, what your trying to learn to begin with is how to build the roof, so it makes sense to start with the basics. If all you want is a roof, go ahead and take a game already made and mod it.

So I shall clarify, code reuse is useful.

However, if you don't understand what the code is doing in the first place your at a serious disadvantage. Sure you can reuse a red-black tree implementation, but if you don't even know what it is doing or the complexity requirements you probably shouldn't even be using it.

If your using an animation library that uses quaternions for rotations, and don't even know basic quaternion mathematics how can you possibly hope to make your game work?

Understanding how to implement such things is important. C# abstracts most of this away so that you don't even have to think about it, this is the wrong way to learn.

Edited by DevLiquidKnight, 05 July 2012 - 07:59 PM.


#20 Saint Squireen   Members   -  Reputation: 181

Like
0Likes
Like

Posted 05 July 2012 - 08:26 PM

To make myself a little clearer, I just want to say that I have been linear programming for over a year now and hit the point where I literally cant do anything else. I cant learn anything new, nor get better at implementing by practicing, nor have any trouble what so ever with making games that linear programming can handle. I have done guess my number, a memory game, hangman, tictactoe, text rpg, a very small Skyrim game with money, experience, coin, leveling up system, shop, fishing (although not implemented in actual game), battles/battle sequences, and a save and load feature using 'lists' to arry a bunch of variables. To restate(summarize): Im finished with small, easy, slow languages and Im ready for the big leagues. Im very interested in what object oriented programming can accomplish and I do very much want to turn this into a life long career.

I hope this has cleared up some of these vague, foggy thoughts.

~Saint Squireen




Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.



PARTNERS