Lately I have been answering a lot of questions by people who would like to create video games. Well instead of posting to everyone’s specific needs(I will still help if you need it though) I thought it might be a good idea to create a guide for those thinking along the lines of video game development.
1: many of you are always asking what language to learn. The easy answer to this is C++ but I will explain the rest in a bit. Sorry guys but I am running out of room. I will continue in the comments area.
@Jax... I certainly appreciate your attempt in posting a guide for others to refer to. I also think, given the audience here, your suggestions help answer a lot of common questions.
@Chris... I'm not sure if it was intentional... but your response came off a bit too abrasive. Rather than being confrontational, this would be a fantastic opportunity for you to expand on this disucssion with the additional insight you have to offer.
For me personally, I've enjoyed cutting my teeth on some basic 3D game development in Unity. I will admit, that the larger the game with a lot of detailed landscape mesh, the more I realize I need to switch to beefier hardware for development. Currently my maxed out MacBook Pro 2015 with 16GB and 1TB fast SSD is brought to its knees - something I never see.
Has anyone compared the performance differences when developing in Unity vs Unreal Engine?
I’m pretty sure I spelled noobs wrong in the tags but oh well.😕
2: you want to know if you can do it on your own. I was there too a while ago and the answer is a definite yes!
3: you don’t know where to begin. That is often a big issue but that can easily be remedied. First(as I learned very recently) you want to develop a good story line before you start the game itself. After that you will find it much easier knowing what to do and where to do it.
4: you don’t know enough C++ to create a good game and you won’t know it for a long time. That’s fine practice makes perfect(it’s true).
I hope this helped you and if you have anything to add please do so in the comments section. And if you have any questions please do not hesitate to ask. That’s what sololearn is for, learning to better yourself and your code!
you missed the line: "if you have anything to add please do so in the comments section"
next time read properly, the poster has not claimed to be a 'professor' in game creation , he only gave out his own knowledge and created a room for 'too knows' (like ya) to add yours
I am sorry you do not like my post and as ogbuagu beloved Francis said, I did not claim to be a professor of video game development and I just gave my opinion. Everyone’s opinions vary and I believe games SHOULD have story lines. It’s okay that you don’t, it’s just my opinion. And as for the switching from C++ to C# I was trying to explain that for video game creation from scratch, C++ is the way to go, but from Unity, which is in MY OPINION a very good alternative to other forms of video game development uses C#. So, like I said, this is my opinion on video game development which I believe can help people a lot.
I'm sorry if I sounded rude, I basically just left my bed before I read this thread.
Still, the guide tells newcoming game developers to start with writing a story instead of finding gameplay ideas first and trying to implement them. In my opinion that's the wrong way to go. Lots of famous games don't have any stories, most multiplayer games don't have stories, and still they're popular. There are games with great stories, but people don't finish them because the gameplay doesn't deliver.
If you write a great story and find out you're not capable of putting them into a game so it meets your expectations, it's demotivating. Implementing gameplay features without having time to implement the great story is demotivating.
Stories can be inspirational, I give you that. But a good story doesn't make a good game, whereas a game with a bad story can still be enjoyable if the gameplay is fun.
@Lakin Where's the story of the Super Mario games? And yet they have tons of sequels and they're all popular.
Moreover, telling that C++ is the best language but then telling newcomers to learn C# instead is a very wrong way to put it. I kinda agree with the statement (as I said, Unity is great for beginners, but not suitable for big projects) but you really shouldn't write it like that. It's basically saying "Good devs use C++, but you're not good, so do this instead and you'll have a long way to go."
Chris, you mistakes. Ofc gameplay is a "head" of every game. But storyline is important too. Imagine if MGS have no a story? Only story gives a fuel to make a sequel. There is a lot of games needs storyline. Good gameplay and storyline is a core components to complain a perfect game. Sorry for my English
C++ is great, and there a LOT of tutorials out there for the Unreal Engine, which uses C++. Unity is also a great development platform, and uses C#. There are loads of great tutorials out there for Unity as well. Point being, you can learn either language and use either engine to make great games.
You don't necessarily need a great story line to make a great game. You don't even necessarily need a great Design Document. But what you should have whenever you set out to make a game of any complexity, is a very solid grasp of what you *intend* to do. You'll make much better progress if you decide on the type of game you want to make - and the type of gameplay features you want to include - ahead of time, as opposed to trying to figure that out as you go. So whether its a storyline that helps you decide these things, or a Design Document, doesn't necessarily matter. It's the *direction* that matters. The direction you want the game to go, and direction of its features.
All that said, start small. Don't try to create your Magnum Opus as your first game. Remake Pong. Remake Asteroids. Remake Super Mario Bros. Remake your favorite arcade or browser game. Whatever small projects you choose to work on early on, use those projects to learn the language, or the engine, or both. By remaking an existing game, you can work on gaining some experience with coding concepts that can help you make more informed decisions about how to guide your future original masterpiece. Obviously, don't release these projects to the public and call them yours, but use them to learn the necessities: collision detection, pathfinding, sprite manipulation, memory management, etc. Choose smaller projects to learn the concepts, gain experience, gain skill, and most importantly for someone starting out - gain confidence.
Now, go find some good tutorials, and make a game. 👍💪
First you keep saying "Learn C++", then you say "Hold out on C++ and learn C# because Unity is simple", lol.
"First you want to write a good storyline before you start the game itself."
No, no, no! Games survived for over 20 years without having stories at all. Even today, where's the story in Half Life 2? People loved it for the gameplay. People complained about the lack of story in MGS V but still play it because the gameplay is great. Where's the story in all of the Super Mario games, in every single Android game? People love them anyway.
NEVER focus your game on a story, except if you want to direct a movie but lack the budget. Gameplay ALWAYS comes first. Find a good idea that makes the game worth playing, THEN think about a story if you want to add one.
Btw, just because Unity is simple to use, it's not one of the best engines. It's very good for beginners, but shouldn't be used for big ambitioned projects. It lacks quality graphics and also important features such as scene graphs.
Sorry, no upvote from me. Your guide lacks structure and doesn't deliver any useful information.
@Chris thank you for your point of view and I agree the way I put the C++ and C# thing could have been done better. Btw most of the new super Mario bros games actually do have storylines. And a lot of games are made with Unity you just don’t know it. One very anticipated game which had something to do with giant beasts is being created in Unity. But thank you for you feedback.