C++ or C#?

closed account (o2ASLyTq)
Hello!

Well, as the title above states, I can´t decide which language to choose really. The thing is that I got a school project which that I kind of want to make a game for, they give us a whole year to complete the project so I got kind of 1 year exactly on me to make a game, I can choose anything I wan´t but this is what I want to do.

Now my frustration is that I have been taking C++ classes for a year now and I would say that I can code in C++ fairly. For my project I wanted to make a sort of 3D/fps game. So I read for quite some time about it on the network and everybody keep saying that it will take ages to do it with C++ and that I should go with C3+XNA, so I looked that up and guess what, XNA is kind of dead....

Please give your opinions, that is all I want, should I keep it to C++ or change to C#, this is quite a difficult choice for me atleast.
I'm currently on my way to learn C++ and OpenGL, although C# is much easier to learn and there are libraries for it like OpenTK and Monogame that make graphics programming much easier than normal.
closed account (N36fSL3A)
I'd say stick with C++. You know it already, so all you have to do is program a game (and maybe an engine if you want), instead of a new language along with a game.

Check out SDL2 or SFML 2.1. You can easily integrate OpenGL with them once you feel comfortable.
Last edited on
Well for making games you can still make them with C++ and SDL/SFML/OpenGL or C# and Unity. Though, I would say to start with 2D games ( http://www.gamedev.net/page/resources/_/technical/game-programming/your-first-step-to-game-development-starts-here-r2976 ) then move to learning 3D games.
2D Games wrote:
Pong = Simple: input, physics, collision detection, sound; scoring
Worm = Placement of random powerups, handling of screen boundaries, worm data structure
Breakout = Lessons of pong, powerups, maps (brick arrangements)
Missile Command = targeting; simple enemy ai, movement, and sound
Space Invaders = simple movement for player and enemy, very similar to breakout with the exception that the enemy constantly moves downward, simple sound
Asteroids = asteroids (enemies) and player can move in all directions, asteroids appear and move randomly, simple sound
Tetris = block design, clearing the lines, scoring, simple animation
Pac Man = simple animation, input, collision detection, maps (level design), ai
Ikari Warriors = top down view, enemy ai, powerups, scoring, collision detection, maps (level design), input, sound, boss ai
Super Mario Bros = lessons of Ikari Warriors (except with side-view instead of top-down view), acceleration, jumping, platforms


That is the list I usually recommend that comes from the article I linked. Others recommend different paths, but I feel that is a solid path to moving from beginner game programmer to 2D to 3D with less confusion.
Topic archived. No new replies allowed.