Skip to main content
GameDev.net gamedev.net
🔒 Locked

Switch or Not?

Started by Nathan2222_old Mar 5, 2014 at 10:05 PM 74 replies 13.9k views
Original Post
Nathan2222_old
Nathan2222_old
Well, i've been learning c++ for 4 months (at March 1st) and it's been good-ish.
So far, i've learnt: variables, loops, functions, arrays, vectors, enums, switch & if/else, pointers & references, dynamic mem. allocation, conditional operators and recently, classes.
I haven't learnt much on classes because i realised the '~' key exists periodically on the computer i'm using.
The plan was to learn c++ for 6 months (console part) then learn c++ for another 6 months with Qt (gui part) and the directx, maths, physics before making games. I didn't have a problem with this other than the fact that i don't like the console. I don't mind using it to learn c++ but if i had a choice, i would leave it for qt immediately.
Another idea today about a game but it was different because it's always about 3d games but this one was about a 2d game. An open world, third person game based on the best 2d cartoon/animation ever created that's available for Microsoft (xbox, pc, phone), Apple (i, pc) and Google (android).
I've got everything worked out except the fact that 1) it's based on a cartoon (license needed) 2) Unity seems like the best option 3) Unity uses C# (i know about the boo and javascript).
It's the first game idea that didn't make me not like Apple, the idea of making a 2d game, being available on mobile and multiplayer support.
I was just wondering if i should start learning C# and pause the learning of C++ and then continue learning C++ later on (in order to accomplish my other dreams) or continue learning C++?
Sorry for how long it is.
UNREAL ENGINE 4:
Total LOC: ~3M Lines
Total Languages: ~32

--
GREAT QUOTES:
I can do ALL things through Christ - Jesus Christ
--
Logic will get you from A-Z, imagination gets you everywhere - Albert Einstein
--
The problems of the world cannot be solved by skeptics or cynics whose horizons are limited by the obvious realities. - John F. Kennedy
kop0113
kop0113

Why does Unity seem like the best option for your 2D game?

If you switch to C#, are you going to start from the console level again? Or jump a few steps straight to using a game engine?

My suggestion is keep with C++ and a use a simple 2D graphics library like SDL to start your game.

In particular I recommend using SDL 1.2 and following these great tutorials: http://lazyfoo.net/SDL_tutorials

Read the corresponding tutorial as you need it for your own game. After all, he best way of learning is by doing.

http://tinyurl.com/shewonyay - Thanks so much for those who voted on my GF's Competition Cosplay Entry for Cosplayzine. She won! I owe you all beers :)

Mutiny - Open-source C++ Unity re-implementation.
Nathan2222_old
Nathan2222_old

Why does Unity seem like the best option for your 2D game?
If you switch to C#, are you going to start from the console level again? Or jump a few steps straight to using a game engine?

My suggestion is keep with C++ and a use a simple 2D graphics library like SDL to start your game.

In particular I recommend using SDL 1.2 and following these great tutorials: http://lazyfoo.net/SDL_tutorials
Read the corresponding tutorial as you need it for your own game. After all, he best way of learning is by doing.

SDL uses opengl (and other open ).
Unity 2d is a game engine and allows release for all platforms and from numerous posts seems easier
UNREAL ENGINE 4:
Total LOC: ~3M Lines
Total Languages: ~32

--
GREAT QUOTES:
I can do ALL things through Christ - Jesus Christ
--
Logic will get you from A-Z, imagination gets you everywhere - Albert Einstein
--
The problems of the world cannot be solved by skeptics or cynics whose horizons are limited by the obvious realities. - John F. Kennedy
Vortez
Vortez

I haven't learnt much on classes because i realised the '~' key exists periodically on the computer i'm using.

I don't really understand what you mean by that, but personally i just do Alt + 126 for a '~'.

(Hold Alt then press 1, 2 and 6 :))

Nathan2222_old
Nathan2222_old


I haven't learnt much on classes because i realised the '~' key exists periodically on the computer i'm using.


I don't really understand what you mean by that, but personally i just do Alt + 126 for a '~'.
(Hold Alt then press 1, 2 and 6 :))
What i meant is that if i'm writing a program, after a certain time, the symbols and their keys change and only then does ~ work.
I will try that.
UNREAL ENGINE 4:
Total LOC: ~3M Lines
Total Languages: ~32

--
GREAT QUOTES:
I can do ALL things through Christ - Jesus Christ
--
Logic will get you from A-Z, imagination gets you everywhere - Albert Einstein
--
The problems of the world cannot be solved by skeptics or cynics whose horizons are limited by the obvious realities. - John F. Kennedy
Nathan2222_old
Nathan2222_old

But also if all your symbols are switching how are you able to program anything??

. . . by restarting vc++ everytime it happens.
It's just c++ is getting a bit boring and i really love this game idea.
UNREAL ENGINE 4:
Total LOC: ~3M Lines
Total Languages: ~32

--
GREAT QUOTES:
I can do ALL things through Christ - Jesus Christ
--
Logic will get you from A-Z, imagination gets you everywhere - Albert Einstein
--
The problems of the world cannot be solved by skeptics or cynics whose horizons are limited by the obvious realities. - John F. Kennedy
kop0113
kop0113
Well, C++ by proxy of C does support trigraphs.
I dont suggest using them but if you cannot seem to get the '~' character to work this might be a last ditch effort ;)

#include <iostream>

int main(int argc, char* argv[])
{
  std::cout << "??-" << std::endl;
  return 0;
}
When compiled with the -trigraphs compiler flag, this will infact output "~".

One of the most important skills you can learn in game development is to stick to something. If you keep losing interest, this is not going to produce a good outcome.
http://tinyurl.com/shewonyay - Thanks so much for those who voted on my GF's Competition Cosplay Entry for Cosplayzine. She won! I owe you all beers :)

Mutiny - Open-source C++ Unity re-implementation.
exOfde
exOfde

Unity 2d is a game engine and allows release for all platforms and from numerous posts seems easier

SDL does the same too

and to answer your question, in my opinion you should first finish learn c++. after that its only a small step to c# or other languages

Ludus
Ludus

If you're getting bored of C++ then it's probably because you're not creating anything that really motivates you. You've probably learned enough C++ to start making simple games, so I suggest picking up an API such as SDL. After becoming somewhat familiar with the basic operations of that API, start making simple games such as Tic-Tac-Toe, Pong, or Snake. Sure, there will be gaps in your knowledge as you create these games, but you can learn as you create. There is no need to learn absolutely every aspect of a programming language or API before you start making games.

Angus Hollands
Angus Hollands

All programming languages become boring eventually, because the user confuses their own lack of direction with a fault in the language (not that I'm accusing you of that in these circumstances). Except Brainfuck. I can't see how you'd ever get bored, because you'll never understand what is going on :)

If you're trying to produce a game, using an existing framework / engine will help you get there quicker. But if you're truly passionate then it's inevitable you'll one day take a step back and implement the same things for yourself, so it's where you start.

Nypyren
Nypyren
Switching between languages is free. Learning other languages is an investment.

Feel free to try out C#. It's not like you have anything to lose.
Nathan2222_old
Nathan2222_old

If you're getting bored of C++ then it's probably because you're not creating anything that really motivates you. You've probably learned enough C++ to start making simple games, so I suggest picking up an API such as SDL. Start making simple games such as Tic-Tac-Toe, Pong, or Snake.


I've made Tic-Tac-Toe more than 3 times (with and without arrays). I prefer directx to open .
UNREAL ENGINE 4:
Total LOC: ~3M Lines
Total Languages: ~32

--
GREAT QUOTES:
I can do ALL things through Christ - Jesus Christ
--
Logic will get you from A-Z, imagination gets you everywhere - Albert Einstein
--
The problems of the world cannot be solved by skeptics or cynics whose horizons are limited by the obvious realities. - John F. Kennedy
Nathan2222_old
Nathan2222_old

What makes you think switching languages is the answer?

Me learning C++ is a product of switching from vb (after trying to fix a problem that had no solution for more than 2 weeks) and realising that i needed something else.
I won't say the knowledge didn't help me because it did.
I think i'm bored because i haven't learnt anything NEW, the most outstanding things i see left console-wise are classes and templates.
UNREAL ENGINE 4:
Total LOC: ~3M Lines
Total Languages: ~32

--
GREAT QUOTES:
I can do ALL things through Christ - Jesus Christ
--
Logic will get you from A-Z, imagination gets you everywhere - Albert Einstein
--
The problems of the world cannot be solved by skeptics or cynics whose horizons are limited by the obvious realities. - John F. Kennedy
Ludus
Ludus




I've made Tic-Tac-Toe more than 3 times (with and without arrays). I prefer directx to open .

In that case, it's time to move onto something bigger. Try something that takes place in real time, such as Snake or a shoot 'em up. After that, you might try making a simple platformer.

Nathan2222_old
Nathan2222_old


I've made Tic-Tac-Toe more than 3 times (with and without arrays). I prefer directx to open .


In that case, it's time to move onto something bigger. Try something that takes place in real time, such as Snake or a shoot 'em up. After that, you might try making a simple platformer.
In the console?
UNREAL ENGINE 4:
Total LOC: ~3M Lines
Total Languages: ~32

--
GREAT QUOTES:
I can do ALL things through Christ - Jesus Christ
--
Logic will get you from A-Z, imagination gets you everywhere - Albert Einstein
--
The problems of the world cannot be solved by skeptics or cynics whose horizons are limited by the obvious realities. - John F. Kennedy
Ludus
Ludus




In the console?

No, you'll need to start working with graphics. Select an API and learn some of its basic functions (creating a window, getting user input, drawing graphics, etc.) then start making simple graphical games with that API.

Nathan2222_old
Nathan2222_old


In the console?


No, you'll need to start working with graphics. Select an API and learn some of its basic functions (creating a window, getting user input, drawing graphics, etc.) then start making simple graphical games with that API.
That would be directx.
Cin >> isn't for input in a gui?
UNREAL ENGINE 4:
Total LOC: ~3M Lines
Total Languages: ~32

--
GREAT QUOTES:
I can do ALL things through Christ - Jesus Christ
--
Logic will get you from A-Z, imagination gets you everywhere - Albert Einstein
--
The problems of the world cannot be solved by skeptics or cynics whose horizons are limited by the obvious realities. - John F. Kennedy

Topic Locked

This topic has been locked by a moderator. New replies are not allowed.

Sign in to reply to this topic.