Jump to content

  • Log In with Google      Sign In   
  • Create Account

Where to start (kind of)


Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

  • You cannot reply to this topic
14 replies to this topic

#1 JEJoll   Members   -  Reputation: 113

Like
1Likes
Like

Posted 19 August 2014 - 08:51 AM

Hi everyone,

 

This is my first post here. I'm a second year programming student at a community college, and my ultimate goal is to graduate and start working in game development. This is my last year of study.

 

I've experimented with Unity, and I even completed a work term with a local game development company. However, I'm starting to get overwhelmed. The more I learn, the more I realize how little I know, and how much more I have to learn to be ready for the industry.

 

I'm beginning to feel like using an engine or game development tool like Unity might not be the best way to continue. I'm starting to feel like it might be better to start from scratch and build my own engine. I really want to have a thorough and well rounded understanding of the development process and game programming. I would love nothing more than to work at a development company, and work independently on my free time. Because of my interest in independent development, I'm also interested in 3d modelling and animation, 2d graphic design and animation, as well as sound and music creation. However, programming is my key focus at the moment.

 

I'm interested in both 2d and 3d development (mostly for web or pc for now, with a potential interest in moving into mobile in the future).

 

I know it's tempting to answer these kinds of questions with "Google it", or some such unhelpful response. Believe me, I have in depth. But there's so much to sift through out there, that researching and finding a good place to start can be every bit as daunting as actually learning.

 

What are your thoughts on this? Do you think I should start from scratch or should I use an existing tool/engine? If you think I should start from scratch, what language(s) would you suggest? If you think I should use a tool/engine, which one? And for each, what learning materials or resources would you recommend?

 

Also, what is your current level of experience or employment as it relates to game development, and how did you start?

 

I'm not afraid of working hard or putting in the time, I just HATE wasting time learning the wrong thing.

 

Thanks all. Every bit of advice is appreciated.

 

 



Sponsor:

#2 Gian-Reto   Members   -  Reputation: 2038

Like
0Likes
Like

Posted 19 August 2014 - 10:44 AM

Can you describe why you think going with an engine like Unity is not the best way?

 

Do you feel like you are not learning enough by using it? What is it that overwhelms you?

 

Building your own engine certainly is a useful thing to do as a learning expierience, especially if you want to concentrate on becoming a game programmer later on. Be aware though that this in itself can be very time consuming and might take away time from building your game, or in your case, studying the other aspects of game development.

 

 

Also be aware, if you mention "working in a studio but work independently on my own time", I instantly think of topics like this that come up from time to time: http://www.gamedev.net/topic/656100-can-an-employer-legally-own-work-that-you-create-outside-working-hours/

The gist of it is, you might be fine as long as you get a good contract and talk through it with your employer beforehand, but you WILL need to do that as you are basically creating a product that might be a competition to what your studio is doing.

 

 

I for my part have a bachelors degree in CS, worked as a business programmer for about 10 years (still doing that part time), and started game dev as a hobby 5 years ago, which has turned into a a very time consuming and expensive hobby by now (but then I got off "plastic crack" thanks to having no time for it anymore, as a former Tabletop gamer I am used to time consuming and expensive hobbies ;) ).

I have not released anything until now, but I am preparing a demo that maybe, one day, will be the seed for something bigger... who knows?

 

So yes, I have little expierience about the insides of Game Dev studios or the industry... just a lot of knowledge about Unity by now, if you have questions about that.


Edited by Gian-Reto, 19 August 2014 - 10:45 AM.


#3 Aliii   Members   -  Reputation: 1448

Like
1Likes
Like

Posted 19 August 2014 - 10:50 AM

"Building my own engine for the sake of building my own engine" would not be a very good idea. If you mean "start making small games with the focus on components and code reusability" thats better. But you have to finish things, not just always be working on something  - like an engine - or you will lose motivation soon. ...even if you have a lot of it now.



#4 Glass_Knife   Moderators   -  Reputation: 5406

Like
2Likes
Like

Posted 19 August 2014 - 10:59 AM

http://scientificninja.com/blog/write-games-not-engines

 

Here's a great opinion on the subject.


I think, therefore I am. I think? - "George Carlin"
Indie Game Programming

#5 3Ddreamer   Crossbones+   -  Reputation: 3169

Like
0Likes
Like

Posted 19 August 2014 - 11:25 AM


I'm beginning to feel like using an engine or game development tool like Unity might not be the best way to continue. I'm starting to feel like it might be better to start from scratch and build my own engine.

 

Building a game engine so early in your career is a dead end. If it were only a hobby then that would be fine for the fun and adventure.  You can't waste months and years in your career.

 

A game engine worth creating would take you years until beta releases if you are working on the 3D game engine alone.  It often takes a team years to create one and usually the thing is inferior to put it mildly [time, performance, results, sucks progress!].  Again, fine for a hobby but you are not ready to make a pro game engine for years to come. You need to know how games are coded before you start thinking about game engine development.  The toolset alone for a game engine would take you 1-2 years to make and use already existing tool libraries.  The 3D game engines just take years for a team to create, not even considering the many months or a few years to create a 3D game and publish it.  By the time you did all that, it is likely that your game engine would be behind the times significantly. In contrast, if you stay the course of learning how to make games, then you might have a published one relatively soon and make some money from it.

 


I'm not afraid of working hard or putting in the time, I just HATE wasting time learning the wrong thing.

 

For professional goals it is my opinion that one should spend months or even 1-2 years in creating broad base functioning 2D games before moving to 3D. Since you mentioned having taken so much on the table, obviously you need to streamline while you are in college.  About all the average student can do is school full time and a job or school full time and work on your own games on the side.  To do all three is doable but you will suffer in quality and understanding of coding. It is best to handle your career in stages that you give all you got instead of too much parallelism and being spread too thin. Coding needs all your attention and uncompromising effort!

 

Coding skills in general are good in you, but we are talking game development here which is a different animal than almost anything else out there.  To really do it right, game development should get much more of your attention if you are to learn at a pace that keeps well with technology advances (both software and hardware). 

 

A game engine is highly recommended because you will have a development framework to show you how games are made.  Added to the other huge advantage of the game engine online community of developers, you would be getting exactly what you need to learn how to make games.  The only thing out there that competes with this approach is to attend a comprehensive game development school, but they will likely put you eventually on a game engine to accomplish the same process of learning. See?

 

Tons of help is available with any of the good game engines.  Some have thousands of forum threads, hundreds of video tutorials, workshops, and many people willing to correspond or talk with you thru technical questions.  All that takes time.  

 

For now I suggest that you focus on your schoolwork and expanding your experience in the job market as you primary time consumption.  When you get a little free time on the side and you want to play with a game engine, then fine. Priorities!   Get you degree and then your availability and opportunity to be a dedicated game developer will open to you.

 

Enjoy your school and work until then.  Work hard and have fun!  smile.png  

 

 


Personal life and your private thoughts always effect your career. Research is the intellectual backbone of game development and the first order. Version Control is crucial for full management of applications and software.  The better the workflow pipeline, then the greater the potential output for a quality game.  Completing projects is the last but finest order.

 

by Clinton, 3Ddreamer


#6 Deflinek   Members   -  Reputation: 274

Like
0Likes
Like

Posted 19 August 2014 - 12:50 PM


I'm not afraid of working hard or putting in the time, I just HATE wasting time learning the wrong thing.

 

At start I have to say I'm not in game dev industry, but I work as developer for quite a few years. Along my career I learned some technologies are no longer used and sometimes even forgotten right now. Should I say I wasted my time learning C, because I no longer use it? Or I wasted my time learning Silverlight as it is no longer supported?

The thing is you can't tell today what will be used tomorrow. And nothing learned is a waste as at least it gives you different point of view. On the other hand you don't need to be PHD of every area to successfully use it.

 

Try to learn different things so you can use them. Along the way you will find one (or more) that will interest you more than others so you can specialize in that area.



#7 JEJoll   Members   -  Reputation: 113

Like
0Likes
Like

Posted 26 August 2014 - 07:14 PM

Can you describe why you think going with an engine like Unity is not the best way?

 

Do you feel like you are not learning enough by using it? What is it that overwhelms you?

 

Building your own engine certainly is a useful thing to do as a learning expierience, especially if you want to concentrate on becoming a game programmer later on. Be aware though that this in itself can be very time consuming and might take away time from building your game, or in your case, studying the other aspects of game development.

 

 

Also be aware, if you mention "working in a studio but work independently on my own time", I instantly think of topics like this that come up from time to time: http://www.gamedev.net/topic/656100-can-an-employer-legally-own-work-that-you-create-outside-working-hours/

The gist of it is, you might be fine as long as you get a good contract and talk through it with your employer beforehand, but you WILL need to do that as you are basically creating a product that might be a competition to what your studio is doing.

 

 

I for my part have a bachelors degree in CS, worked as a business programmer for about 10 years (still doing that part time), and started game dev as a hobby 5 years ago, which has turned into a a very time consuming and expensive hobby by now (but then I got off "plastic crack" thanks to having no time for it anymore, as a former Tabletop gamer I am used to time consuming and expensive hobbies ;) ).

I have not released anything until now, but I am preparing a demo that maybe, one day, will be the seed for something bigger... who knows?

 

So yes, I have little expierience about the insides of Game Dev studios or the industry... just a lot of knowledge about Unity by now, if you have questions about that.

 

I guess the main reason that I felt like using an engine wasn't the best way is because it kind of feels like a shortcut. I know it's probably the quickest way to develop, but that isn't necessarily my goal at the moment. I'm more interesting in gaining as much knowledge as possible to prepare me for a career in game dev. I kind of feel like maybe I'd be missing out on some of the fundamentals of game development by using an engine. 

 

As far as what overwhelms me: it's just the sheer amount of what I feel I need to learn to be a successful programmer and indie dev. The list that comes to mind is massive:

  • Rendering
  • Graphics Pipeline
  • Programming
  • Programming Shaders
  • Modelling
  • Animation
  • Design Principles
  • Development Principles
  • "Proper" coding and development practices ... to name a few.

And it seems that the more I research these topics, the more I add to the list. I guess the world of development is so huge and requires so many areas of expertise that it's just overwhelming to figure out how to prioritize my learning. I would love to find some book or other resource that takes multiple aspects of development into consideration, instead of just focusing on one particular skill set like programming or art. I guess I'm also concerned with understanding how all of these different parts of development integrate with one another, and being able to integrate them myself in a professional way to bring a high grade (or at least non-crappy) game to fruition.

 

Also, thanks for the mention of the potential problem of working on independent projects while under contract. I'd never considered that.

 

You mention that game dev has become an expensive hobby. How so? Just with licensing software? 



#8 JEJoll   Members   -  Reputation: 113

Like
0Likes
Like

Posted 26 August 2014 - 07:19 PM

"Building my own engine for the sake of building my own engine" would not be a very good idea. If you mean "start making small games with the focus on components and code reusability" thats better. But you have to finish things, not just always be working on something  - like an engine - or you will lose motivation soon. ...even if you have a lot of it now.

 

My intention wouldn't be to build an engine just because per se. I guess I would just like to know how to develop a game without using an engine as a crutch so to speak. And when I say an engine, I don't mean something highly sophisticated, not even necessarily 3D. Even something relatively simple like a from scratch 2D platformer. 

 

My reason for wanting to do this is just to gain a higher understanding of game development and have a more rounded skill set.



#9 JEJoll   Members   -  Reputation: 113

Like
0Likes
Like

Posted 26 August 2014 - 07:26 PM

http://scientificninja.com/blog/write-games-not-engines

 

Here's a great opinion on the subject.

 

Thanks. I guess maybe what I meant by 'engine' is this:

 

I simply want to develop a game from scratch. And from scratch I mean taking care of the graphics and graphics handling, AI, GUI, animation, physics and other programming by my self. This isn't because I think I wouldn't be able to make the same game using something like Unity, it's simply because I want to know it ALL. I want to be able to make a game without a tool like Unity. Part of me just feels like that would make me a better and more knowledgeable dev. Maybe this is a misconception and something I have to get past.

 

Also, bear in mind that I don't necessarily want to develop a 3D game at the moment. 



#10 Kaptein   Prime Members   -  Reputation: 2207

Like
0Likes
Like

Posted 26 August 2014 - 08:37 PM

If you just want to learn, then go ahead. Just keep in mind that AI and physics are very complicated subjects. Indie game development does require you to put on many hats, but efficient programmers sidestep all the complicated, hard and (subjectively) unfulfilling tasks. For example by using existing libraries, or by researching things previously done by others to reduce risk, time waste and simply learn faster. Everyone learns new things, all the time, in programming.

 

It could for example be fun to make your first BMP reader and writer: My advice would be to do research the things you think sound interesting, do the least complicated version of it in tandem with some actual implementation or even a tutorial if one exists.

Being second year at college, I don't know what that means, but it sounds like you are just starting out learning to program. If I were you I would focus on how to be efficient at learning what you set out to do. If I could travel back in time, I would tell that to myself 10 years ago.


Edited by Kaptein, 26 August 2014 - 08:40 PM.


#11 Gian-Reto   Members   -  Reputation: 2038

Like
0Likes
Like

Posted 27 August 2014 - 01:47 AM

I guess the main reason that I felt like using an engine wasn't the best way is because it kind of feels like a shortcut. I know it's probably the quickest way to develop, but that isn't necessarily my goal at the moment. I'm more interesting in gaining as much knowledge as possible to prepare me for a career in game dev. I kind of feel like maybe I'd be missing out on some of the fundamentals of game development by using an engine. 

 

As far as what overwhelms me: it's just the sheer amount of what I feel I need to learn to be a successful programmer and indie dev. The list that comes to mind is massive:

  • Rendering
  • Graphics Pipeline
  • Programming
  • Programming Shaders
  • Modelling
  • Animation
  • Design Principles
  • Development Principles
  • "Proper" coding and development practices ... to name a few.

And it seems that the more I research these topics, the more I add to the list. I guess the world of development is so huge and requires so many areas of expertise that it's just overwhelming to figure out how to prioritize my learning. I would love to find some book or other resource that takes multiple aspects of development into consideration, instead of just focusing on one particular skill set like programming or art. I guess I'm also concerned with understanding how all of these different parts of development integrate with one another, and being able to integrate them myself in a professional way to bring a high grade (or at least non-crappy) game to fruition.

 

Also, thanks for the mention of the potential problem of working on independent projects while under contract. I'd never considered that.

 

You mention that game dev has become an expensive hobby. How so? Just with licensing software? 

 

 

Game Dev being expensive:

 

Notice my emphasis when I said ".. my expensive hobby". Now I am a perfectionist and collector of shiny things, that is why I have a lot of pro grade hardware standing around in my home office / man cave and a lot of bought art software and engine licenses. But then I have a well paid part time job, and as said, I am used to expensive hobbies (that got replaced by game dev lately)

 

You certainly don't need any of this. Every software you need you will find a free / opensource alternative for on the web. All the hardware you need to start is a mouse, a keyboard and a crappy little computer.

 

In my opinion, pro grade hardware and software CAN be worth the money (if you have the skill and time to use it), in my case some things made me work more efficient. But none of it is really needed, especially not if you are just starting out.

 

 

On the subject of engine or not and amount of stuff to learn:

 

be aware, at some point you will have to make a choice - to target a career in the industry and a bigger studio, or become an Indie dev, possibly even go lone wolf for the start.

 

To achieve the first, you will have to make further choices. There are many disciplines involved nowadays in game dev (programmer, artist, game deisgner, ...), and there are even specializations within these disciplines (graphics programmer, ai programmer.... level designer as a specialization of game designer). You will need to find out what interests you most.

From what I gather from your posts, that would be programmer. Now, to create portfolio material for a programmer career, you do not need to become an artists. Stock art, or plain simply horrible looking programmer art can do the job. Be aware, the studios you will show these portfolio pieces later on will have the knowledge to concentrate on the parts of your demo reel important for your future position and ignore the garish art used.

 

Certainly, for this decision, using engines is a bad idea for a start, and might not add too much to your portfolio even later on (the more of you own code is involved, the better).

 

This of course is again completly different for a career as artist. Don't even try to become an adept programmer in this case. Get the easiest engine you can find to create a demo of your art.

 

 

If you want to go Indie, the whole thing changes a little bit. For one, you cannot specialize just as much. Especially not if you are a lone wolf. And you will have to be able to use all the "crutches" you can find to full effect. Yes, that means using premade engines!

Of course for simple games writing everything from scratch is most probably the better Idea. But as soon as things get complex, most people will start using premade engines for a good reason.

 

If you have to do everything, and you are paying for it with your own time and money, you cannot afford to lose any time re-inventing the wheel!

 

 

Now, as has been said, for learning purposes writing games from scratch is a very good start anyway. Using an engine from the start will give you a different learning curve, but in the end you will also have to learn some low level stuff... its just less bottom-up (and most probably less thourough).

But instead of trying to digest everything at once when it comes to different topics to learn, I would "divide and conquer".

Focus on what interests you most, cut out stuff you are not able to do at the moment (ignore sounds, ignore graphics and go full text-based,...).

 

Even if you want to learn all of it, you don't have to learn all at once (and you will not be able to).


Edited by Gian-Reto, 27 August 2014 - 01:49 AM.


#12 HyperV   Members   -  Reputation: 932

Like
0Likes
Like

Posted 27 August 2014 - 01:55 AM

Wasn't there an article on GameDev that you should make games not engines?



#13 inkdrips   Members   -  Reputation: 162

Like
-1Likes
Like

Posted 27 August 2014 - 03:39 AM

In my spare time and with all my spare money I run a small amateur game team - developing my first game with Blender - it's a robot simulation.

I'm writer/producer but I want to be more involved in the programming process.

 

What's the best system (programming language or tool/game engine) to learn for 2d games.

 

Here is my concept. Please help me. I'm frazzled.

 

Missions are things the player can do to earn money.
The goal is to buy stuff and earn more money and act like a pimp.
Quests are smaller steps needed to achieve in order to progress through a mission.
The game is set in high school. The goal of the game is to make money. There are six different enterprise missions. Money buys clothes, cigarettes, pies, pepsi and tattoos.
If Ned goes too long without pepsi he falls asleep.
If Ned goes too long without pies, he dies.
As long as Ned wears out of date clothes, he is in danger of being beaten up without provocation.
Unless he has completed the porno mission.
If Ned is dressed like a white rapper, goths will beat him up.
If Ned is dressed like a goth, other goths will congregate near him – potential customers.
If Ned is dressed preppy, girls will congregate near him – potential models, but goths will beat him up.
If Ned is dressed bland, or trendy, no one will beat him up. No one will congregate near him. He will have to be proactive to find customers.
Eventually Ned will die from malnourishment - Doctor: “What did you think? That you could live on pies and pepsi forever?” There is no way to avoid this ending.

 

 

“You must get rich, any way you can. There are six concepts floating around in your ambitious little brain for making money, right now. Choose one and go for it. You need to buy clothes, cigarettes, pies, pepsi and tattoos. So you need money. What are you waiting for? Do it Ned!”

 

Enterprise Missions

1.      Trading Cigarettes

2.      Selling stolen porno mags and cigarettes

3.      Starting a miniature painting business

4.      Selling stolen magic cards

5.      Betting on fights

6.      Selling erotic photos of female friends

 

 

I think my game will be edgy but not illegal, somewhat tasteful there will be censor bars ie cigarette brands/17 year old nudity.

I did 23hours learning C# and got bogged down with all the maths. apparently alot of it doesn't need to be known in order to make games.

 

so i gave up on C#. Flash is too expensive because adobe are aholes if you're not a student.

I hate html5 because CSS confuses me.

game maker seems restrictive. Can you do 2d in unity? and are there any good books on unity for absolute beginners?

Python seems like a mission.

WAAAAHHHHHH! help please?



#14 Gian-Reto   Members   -  Reputation: 2038

Like
0Likes
Like

Posted 27 August 2014 - 07:47 AM

Hijacking threads is not a very nice thing to do.... I don't know really what the gamedev.net policies on that are, but in the future, maybe open your own thread with your questions instead of hijacking the thread of someone else.

 

Anyway....

 

[snipped]

 

I think my game will be edgy but not illegal, somewhat tasteful there will be censor bars ie cigarette brands/17 year old nudity.

I did 23hours learning C# and got bogged down with all the maths. apparently alot of it doesn't need to be known in order to make games.

 

so i gave up on C#. Flash is too expensive because adobe are aholes if you're not a student.

I hate html5 because CSS confuses me.

game maker seems restrictive. Can you do 2d in unity? and are there any good books on unity for absolute beginners?

Python seems like a mission.

WAAAAHHHHHH! help please?

 

O_o okay, slowly now. C# is to much.... HTML5 is to much.... Flash is to expensive (I thought "with all your money"? Agreed that Adobe can be on the expensive side with their products, still)... and Game Maker is not good enough?

 

Look, as a total beginner you probably need to put away your current idea and just start small. Game Maker will do just fine for that. And, as far as I understood it, Game Maker is just fine for 2D Game dev even if you have bigger ambitions... its just not as "drag-and-droppable" anymore then. Coding involved. Sorry.

 

Yes, 2D in Unity is possible. Unity even added a full toolset for 2D Games some releases ago. You still will have to code at some point. C# or Unityscript (Javascript). Sorry again.

 

 

You WILL have to learn to code if you cannot afford a programmer or can convince someone to work for free (though you talk about having a team, so why not let the programmer decide on the technology?).

There is no tool on the market where you can drag and drop together a full game save very easy ones with tools like Game Maker, some Templates you can get for Unity (basically a finished project you can skin with your own art), and some visual scripting tools available for Unity or Unreal Engine.

 

So instead of skipping every language and tool because it either looks to hard or too limited (which are two statements to go against each other... almost all tools that give you more capabilities are harder to learn for a newbie), just go back and try again.

You will find that C# actually is pretty easy to learn (but takes much more than 23h to master), HTML5 can be used without CSS, Flash, while being expensive proprietary tech from adobe, might have a opensource / cheaper alternative (don't know, I am not a flash specialist), Game Maker is much less limited than it looks at first. Or that the new 2D Tools in Unity are well documented on the official Unity webpages.


Edited by Gian-Reto, 27 August 2014 - 07:48 AM.


#15 inkdrips   Members   -  Reputation: 162

Like
0Likes
Like

Posted 27 August 2014 - 04:33 PM

I apologise for hijacking the thread. I didn't think about it. So it looks like Unity and C# are the way to go.






Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.



PARTNERS