Advice on where to start?

Started by
2 comments, last by DigitalNomad 7 years, 4 months ago

Hello. This is gonna be broken up into parts to organize my thoughts a little better so bear with me.

Background: I am currently a high school sophomore. About a year ago I had an idea for 3D game and since my high school had a course called "Game and Simulation Foundation" I decided it would be a good opportunity. During that school year I created three basic games. Two were created in Multimedia Fusion 2 and the other in Adobe Flash (or Animate) CC 2015. Now I am learning 3D modeling in 3ds Max and will be starting with Unity 3D later in the school year. I also know two programming languages currently which probably won't be too useful when programming for a game; HTML and CSS.

Goal: The idea I had back in my freshman year was for a 3D open-world fantasy RPG. Obviously a complex game like the one I have in mind can't be created over night.

Questions: What is the game creation process (storyboard, plot, concepts, etc.)? I know I want to be a designer or programmer. Where should I start? What would be the benefits of using C# over other programming languages and vice versa for any specific language. What kind of games should I practice making? What high school classes should I take? The "Getting Started" guide really only told about the very basics of beginning; recommendations and whatnot.

Answers to any or all of these questions are appreciated. If you would like my to specify anything or explain something that may be unclear, let me know and I'll be sure to respond.

Advertisement

Hello and welcome,

First, HTML and CSS arent programing languages rather than markups, you should know how to use at least one real programing language like C', C++ or whatever you prefer. When using Unity 3D you must the one or the other hand learn C# because it is mostly used in there.

C# has the benefits that it is something like C++ but without all the memory managing in it. You could also call native C++/C functions from C# and package naming/ namespaces isnt as strict as in Java.

The basic game creation process is more a kind of paralell development and design where you write down your desired concept into a game design document and maybe proof your concept with a prototype or tech demo at this time. After you have completed your concept and/or tech demo phase you could think of such things like story and graphical design of your game and start developing (maybe based on your prototype).

For whatever role you want to play in the development process there are specific links in the FAQ section of the beginners forums.

The games you should making first should be simple ones to test and evolve your development management without loosing motivation because your game has too little progress.

Now your goal, what you are planing could be done in Unity 3D as well as in every other game engine. There are a few major systems you should create and test before making a game (prototyping) that are some kind of streaming in Unity what means loading and unloading parts of your world while the player walks over it. We have developed such a system a few months ago for our game also using level of details for each chunk loaded. And your general character controlling, interaction system. If you have all these systems you could start designing your game, writing dialog and quest systems, combat, magic and whatever you like and then go to the strangest and most time consuming part; level design and graphics

I also know two programming languages currently which probably won't be too useful when programming for a game; HTML and CSS.

As you stated using HTML and CSS wouldn't be useful to create a game, and they are not a programming language. C/C++/Java are some explains of a programming language and learning one of them is very useful, personally, I would say learn C or C++ as you can do some low-level programming with them and it's easy to learn the other if you know one of them. In these languages,

in 3ds Max and will be starting with Unity 3D later in the school year
you have to learn to manage memory, which in languages like Java or C# you don't have to do yourself.

Now I am learning 3D modeling in 3ds Max and will be starting with Unity 3D later in the school year.

If you are using Unity you will be using C#, so learning C# would be a good language to learn.

What is the game creation process (storyboard, plot, concepts, etc.)?

Creating your first game, especially in Unity, I would start off small. If your project scope is too large you will struggle to finish it and most likely never will as you have lost motivation.

Start off by coming up with some ideas, develop one or two of the ideas you like the most in more detail (i.e. what sort of gameplay are you thinking about or the platform you are developing for). Make you have the foundations and a clear vision of what you want your game to be before you start to get into Unity or 3DS Max and start making anything. Once you have a clear vision, create small prototypes and keep iterating on them to develop the game. The first version you might just use cubes to represent characters etc. just to make sure your camera controls work or whatever task you started with. Build your game from the ground up, start with core systems and finish with final touches to controls, artwork or game logic.

As you stated using HTML and CSS wouldn't be useful to create a game, and they are not a programming language. C/C++/Java are some explains of a programming language and learning one of them is very useful, personally, I would say learn C or C++ as you can do some low-level programming with them and it's easy to learn the other if you know one of them. In these languages,

Agreed. I would recommend learning some C++, C#, Java, and perhaps a little Python. If you still need to learn the basics, this is a great article outlining coding basics and also mentions a few options for learning coding online for free or for a minimal price. Might be worth it to check it out.

This topic is closed to new replies.

Advertisement