cancel
Showing results for 
Search instead for 
Did you mean: 

General Discussions

tarikkun
Adept I

Anyone knows how to make games

Does anyone know how to make games for Windows? I've recently bought brand new AMD and now I can run more graphically demanding games however I would also like to make my own games, preferably in 3D, and games that work on Windows.

I dont really know coding though, and im not sure which language should I choose. Does anyone know where should I start?

0 Likes
6 Replies

There are lots of, how to, advice on You Tube and elsewhere on the net, start there. 

0 Likes

This Microsoft website gives you all the information you need on how to create games for Windows 10. It has links to several guides including "Getting Started": Windows 10 game development guide - UWP applications | Microsoft Docs 

But the first thing you need to do is learn a programming language like C++ or Visual Basic or some other computer programming to start learning how to code your games.

YouTube as mentioned previously is a good way to look for suggestions on how to create games for Windows.

Here one YouTube on how to start creating Windows Games: How to make a Video Game - Getting Started - YouTube 

leyvin
Miniboss

There is no specific approach to getting into Game Development... but what I will ask is, why? 

Just because you now have Hardware that is potentially good enough, doesn't explain or even showcase you have any particular drive/passion for such.

Developing Games is something that frankly requires a lot of drive and/or passion, because it can be frustrating beyond belief... especially creating them on your own., as you have to essentially dabble in every discipline to some degree or another., but more than this is the fact that the end product is always an unknown

The idea you start with, isn't necessarily (in fact rarely) is what you end up with... because an idea doesn't always work in practice.

Now personally speaking., I'd suggest either Unreal Engine (Creative) or App Game Kit (Mechanical).

With Unreal Engine, you can Visually "Program" the Logic; so never really need to know how to actually Program., and the Engine is robust enough that it can do almost anything without ever needing to touch the source code. 

It's also good from the perspective that you can quite rapidly get something fairly "Complete" and "Polished" going pretty quickly... so there is that instant feedback, with very little chance of something you do actually making your project unable to even start.

App Game Kit is a Middleware Interface Engine., and it's actually great for those who want to learn programming. 

And the reason behind this, is the same reason as to why when people say they want to learn C++., I actually tend to walk them through creating a (Software) 3D Engine on C first. 

C++ and C# especially in their Modern Incarnations., with UWP and DirectX 12 can be ... well seriously overwhelming and difficult to follow the Code Flow. 

BASIC is, well basic in it's approach... it's procedural (like C) so it's fairly easy to follow the Code Logic, but unlike C you have a style to the code that feels more natural; and that's good for when you're learning the Concepts of Programming. 

Now the reason why I think AGK is a good Starting Point, is because while it has a BASIC Language; the Engine itself has an SDK for C++... so when you feel ready to then migrate., you can do so by porting your existing (working) projects from AGK BASIC over to C++ with AGK SDK. 

Then once you have that, you can then strip away the AGK Functions and Engine, to switch over to other API; like DirectX 12 or Vulkan + OpenAL + SDL, etc.

Which approach you take, well that's up to you.

I'd suggest starting with simple arcade games., like Space Invaders, Pac Man, Space Wars, etc. 

DO NOT look up Source Ports of them, instead just play them... try to break down what is happening... map out the logic... and try to build it yourself. 

Don't worry about it being "Perfect" ... just get it working and complete. Take what you learn and remake a different classic game.

It might not seem like it., but believe me; it'll help you more doing such than Tutorial Series (from YouTube / Udemy) ever will. 

See the issue I have with Tutorial Series for Game Development, is they're not teaching Creative Thinking., what they're doing is at best teaching concepts but now how/why/when to apply them. 

When you do that on your own however, without a guide... well you're forced to creatively approach problems to come up with solutions. 

leyvin wrote:

There is no specific approach to getting into Game Development... but what I will ask is, why? 

Just because you now have Hardware that is potentially good enough, doesn't explain or even showcase you have any particular drive/passion for such.

 

Developing Games is something that frankly requires a lot of drive and/or passion, because it can be frustrating beyond belief... especially creating them on your own., as you have to essentially dabble in every discipline to some degree or another., but more than this is the fact that the end product is always an unknown. 

The idea you start with, isn't necessarily (in fact rarely) is what you end up with... because an idea doesn't always work in practice.

 

Now personally speaking., I'd suggest either Unreal Engine (Creative) or App Game Kit (Mechanical).

With Unreal Engine, you can Visually "Program" the Logic; so never really need to know how to actually Program., and the Engine is robust enough that it can do almost anything without ever needing to touch the source code. 

It's also good from the perspective that you can quite rapidly get something fairly "Complete" and "Polished" going pretty quickly... so there is that instant feedback, with very little chance of something you do actually making your project unable to even start.

 

App Game Kit is a Middleware Interface Engine., and it's actually great for those who want to learn programming. 

And the reason behind this, is the same reason as to why when people say they want to learn C++., I actually tend to walk them through creating a (Software) 3D Engine on C first. 

C++ and C# especially in their Modern Incarnations., with UWP and DirectX 12 can be ... well seriously overwhelming and difficult to follow the Code Flow. 

BASIC is, well basic in it's approach... it's procedural (like C) so it's fairly easy to follow the Code Logic, but unlike C you have a style to the code that feels more natural; and that's good for when you're learning the Concepts of Programming. 

 

Now the reason why I think AGK is a good Starting Point, is because while it has a BASIC Language; the Engine itself has an SDK for C++... so when you feel ready to then migrate., you can do so by porting your existing (working) projects from AGK BASIC over to C++ with AGK SDK. 

Then once you have that, you can then strip away the AGK Functions and Engine, to switch over to other API; like DirectX 12 or Vulkan + OpenAL + SDL, etc.

 

Which approach you take, well that's up to you.

I'd suggest starting with simple arcade games., like Space Invaders, Pac Man, Space Wars, etc. 

DO NOT look up Source Ports of them, instead just play them... try to break down what is happening... map out the logic... and try to build it yourself. 

Don't worry about it being "Perfect" ... just get it working and complete. Take what you learn and remake a different classic game.

 

It might not seem like it., but believe me; it'll help you more doing such than Tutorial Series (from YouTube / Udemy) ever will. 

See the issue I have with Tutorial Series for Game Development, is they're not teaching Creative Thinking., what they're doing is at best teaching concepts but now how/why/when to apply them. 

When you do that on your own however, without a guide... well you're forced to creatively approach problems to come up with solutions. 

This is true that game design requires a lot of passion but if I hadnt heart such and similar statements when I was 16, I would already make a great game by now (I am 27) but Ive always put it off telling myself its impossible to make a good game alone and the like.

TO THE OP:

Truth is there are many good indie games that were made by just one person like Stardew Valley and while its harder, you also wont have any of your employees ruining it or not understanding your idea and creating something else. Indie games are always so much more unique than AAA games, and thats how they gain players. Promoting your games is different subject thought.

Nowadays you make games using game engines (not libraries or frameworks). Learning them from documentation may be hard so you should use google to find some good tutorials (free ones are available) for the genres that you like, e.g. this is free unity 3D RPG tutorial but there are more sites with good stuff if you look. Just dont pay for udemy courses or whatever because you can find exactly same stuff (that they learned from) or even better one for free.

The reason why I recommend Unity is because Ive been messing in all major engines and this is certainly the easiest choice but also most powerful one.

0 Likes

This is true that game design requires a lot of passion but if I hadnt heart such and similar statements when I was 16, I would already make a great game by now (I am 27) but Ive always put it off telling myself its impossible to make a good game alone and the like.

Making Games "Solo" is far from impossible., but there is a certain challenge to it that isn't present when working on a project as a Team. 

Like don't get me wrong... Team Development (esp. as a New Developer) also has challenges in regards to keeping to a specific Vision, Feature Creep, Team Cohesion, etc. 

Still Friendship tends to actually resolve a lot of these issues., because enjoying the company and personalities of those you're working with... being able to have honest opinions and feedback on each others work... plus already knowing that you're working from a similar page (so-to-speak). It keeps things running (reasonably) smoothly.

Where-as when you're working Solo., well that's where things can fall apart. 

As such depending on your personality can be cripplingly lonely and the time you have to dedicate, well it can also be quite anti-social.... and if you do try to balance a Social Life with it (just to keep yourself sane), well then you have to be willing to accept that various tasks can take days or weeks before you start seeing any reasonable progress. 

You need people around you who are both supportive but also are willing to let you Vent (typically about stuff they either don't care, or don't understand about)., and I will guarantee you; when you're young (like a Teenager., that support IS NOT going to be coming from Friends; and Family will typically tell you that you're just wasting your time, suggesting you should focus on something else).

The same is true in regards to getting feedback on what your working on.

You'll find a lot of people fall into two key categories... 1 • They'll needlessly faun over whatever you've done as if it's just the most awesome thing ever... or 2 • Have zero respect / understanding of how much effort something just took, and rip it to shreds

Most tend not to really understand what "Constructive Criticism" is. 

Beyond that... there's also the usual frustrations with Development, such-as hitting Road Blocks; which in a Team can sometimes be resolved through Fresh Eyes looking at the Problem, where-as on your own; you can easily get tunnel vision on something. Various set backs can even lead you to want to throw it all in the Recycle Bin and Give Up. 

This is why I'm saying that Passion and Drive is important, especially on your own. 

Developing a Creative Product is a Difficult and Challenging Process., even with a Team who have a Shared Idea / Goal / Drive... on your own, well frankly for the most part I'd say it requires a certain type of Person and Personality. 

• 

It's why I said what's most important is initially picking an achievable project and just seeing it to completion., as that's the first and most important hurdle to overcome in any creative project. 

Once you achieve that, each time it becomes a little easier to do it the next time. 

Failure is also the Default. 

Sure, there are people who have Solo Developed their Ideas into Popularised "Indie" Games., but ask them how long it took them, how many projects they burned through BEFORE they got to that point. It's why for the most part you have to build Projects for YOU rather than an Audience to begin with... as frankly you're going to be the only person who ever sees / plays them. 

• 

The last point I'm going to make, is avoid Unity like the plague. 

It's a fantastic Middleware Development Tool., for those looking to create Commercial Projects... but in regards to Learning / Neophyte Game Development, it's the absolute worst platform.

And the reason for such might sound counter-intuitive... but it is really easy to produce results with.

There are countless Asset Packages, Plug-Ins, Sample Code, etc. that when you also add in the fact that it's Visually Driven Development with a Scripting Engine., well it's teaching A LOT of bad habits and reliance on things that you simply can't rely upon beyond Unity.

What's worse about it is, that it's a Jack-of-all-Trade Middleware... this means generally speaking "Optimisation" isn't a flaw in how YOU as a Developer have gone about doing something but rather is due to how the Engine itself is accomplishing said task.

Like it's key focus has always been on making Development Easier., rather than providing a Fully Featured and Robust Tool. 

I'm not saying not to keep Unity in-mind., just that I would steer clear of it as a Learning Platform... use it once you have the fundamentals down, and are looking to work on more serious / marketable projects. 

0 Likes

I can help if you have some specific ideas in mind

0 Likes