Jump to content

  • Log In with Google      Sign In   
  • Create Account


Member Since 19 Dec 1999
Offline Last Active Dec 22 2014 10:44 AM

#5199295 I need help with some maths

Posted by Eck on 20 December 2014 - 01:38 PM

Whatever game you're working on, may be outside your current skill-set. You can either move back to simpler games and build up those skills over time, or start learning a little more about Vectors right now. The site khanacademy.org is pretty darn cool for learning math.




- Eck

#5199214 Where should I start learning game development?

Posted by Eck on 19 December 2014 - 11:45 PM

Where should you start? Posting here was a great fist step. Welcome to gamedev sir. 


I realised that I need to know 3D modelling before starting with Unity


I'd like to correct this statement. No, you don't need to know 3D modelling before starting with Unity. You can build your own game objects out of primitives in the editor if you're going for a Minecraft look. Or, you can make use of the Unity Asset store to import 3D models into your game. Many of them are even free. 



Or you can use Unity to make 2D games without any 3d models at all.


3D models aren't the only thing in the Asset store either. There's sound effects, music, textures, code modules, etc. Most of which have decent free options as well.


The online tutorials are really slick too. Check it out.


- Eck

#5198459 0 experience in programming and game development

Posted by Eck on 15 December 2014 - 09:27 PM

You're almost done with school and you're going to start making money as a game developer, but you have no experience whatsoever? That isn't very likely...


I'm assuming you're finishing high school this year. If so, see if your school offers any electives in programming and sign up for them. If you're finishing up college this year. What's your degree in and why didn't you take any programming or graphics design courses?


Take a look at the FAQ:



Pick a language and a set of tools to learn to see if you even like game development. Playing games and making games are two completely different things. If you're not sure what to choose, download the free version of Unity and start looking at some video tutorials on their site.


- Eck

#5198139 My Game Plan

Posted by Eck on 14 December 2014 - 10:50 AM

Of the countless beginner threads around, this one seems far more grounded in reality,  so long as you don't expect this to be just a 2-3 month journey before releasing your game. :)


You show some concern for not starting with C++ since most games are written in C++. While it's true that most triple-A games are written in C++, I don't believe this is going to hinder you. Your goal seems to be towards indie game development and not joining a big studio. Maybe you should learn C++ eventually to better round yourself out as a developer, but that's a long way off and not worth worrying about right now. Plenty of indie games are written in C#.


To avoid getting overwhelmed in the early days, I recommend that your first few weeks be in just C# as you're learning the syntax. Once you get the basics down: variables, loops, branching, functions, classes, etc. Make some simple text based games like guess-a-number or hangman.


Once you're ready for more game development, I think starting with XNA/C# is an excellent idea. It allows you to get closer to the low level/inner workings of a game, but it's abstract enough that you can get a sprite showing on the screen in short order which is pretty darn motivating. Motivation is going to be one of your biggest hurdles early on. (later on too). XNA is no longer actively supported by Microsoft, but I think it's still a good choice for learning. You may also look at MonoGame which is an open source port of the XNA framework and the community is still active.


Pong -> Platformer may be too big of a leap of skill. Take a look at this article about which games you should make early on and why. 



And here are a couple of XNA links that I found very useful:




After you've made a couple of simple games in XNA though, I recommend you take a look at Unity. At this future point in your education you should have a decent grasp on programming and understand the basics of game development. Follow a couple of Unity video tutorials and once you have the basics of Unity down, remake a few of the simple games you made in XNA like pong. You shouldn't have to remake all of them, but it's a good way to learn the tool and see how far you've come as a developer.


Sometime during all this, you're going to want to learn more about object-oriented programming, design patterns, software architecture, more advanced C# features, etc. But that will come with time. For now, go crank out a "Hello World" program. It's where we all started at. :)


Good luck, and when you run into problems, let us know and we'll help you out,

- Eck

#5197397 game running slow but only consuming a tiny proportion of the CPU

Posted by Eck on 10 December 2014 - 10:06 AM

VS Express may not have a profiler tool, but you can do your own profiling with the .NET StopWatch class. You can start by seeing how long the entire update takes in one pass by starting the timer at the beginning of the update function and reading it at the end of the update function. Read that stop watch at various points in your update code, or put in more stop watches to zero in on where the bulk of that time is coming from. 


Once you start getting closer to where the problem is you'll probably be able to figure it out yourself. If not, post some code and we'll see if we can spot anything.


- Eck

#5197307 game running slow but only consuming a tiny proportion of the CPU

Posted by Eck on 09 December 2014 - 08:43 PM

I can't count the number of times I've seen people try to fix a performance problem without profiling. It almost always happens like this:


0. Eck says use some profiling to narrow the problem down.

1. Programmer dismisses Eck. Pffft, I don't need no stinky profiling and he looks at the code and thinks the problem is in section A

2. Programmer optimizes section A but it's still not fast enough.

3. Programmer further optimizes section A, but it's still not fast enough.

4. Programmer looks at the code some more and thinks the problem is in Section B

5. Optimizes B, but still doesn't fix it.

... A few days pass

21. Programmer finally uses some form of profiling and figures out where his problem is.

22. Programmer optimizes that section.

23. Code is finally fixed.

24. Eck says, "I told you so..."


- Eck

#5197306 Where to go next?

Posted by Eck on 09 December 2014 - 08:32 PM

Admittedly, the early steps of programming can be pretty boring. But know that they are building blocks to a much larger puzzle. A few days of C++ learning may be a little too soon to jump into game dev, but maybe not. Have a look at the Beginner's FAQ first. The FAQ actually steers you away from C++, but if you decide to stick with it, do some searching on C++ and SFML. Then look up some SFML tutorials to see if you're ready to jump in. If not, get back to the C++ basics and keep chugging away.


If you decide to switch to C#, it probably won't be too difficult for you.


A link to the beginner's FAQ:



Here's an awesome article on what games you should create first and why:



And some parting advice. Don't start out with your mega-uber-awesome million dollar idea. You will get overwhelmed and frustrated very quickly.


- Eck

#5196737 Game creation software for kids?

Posted by Eck on 07 December 2014 - 12:01 AM

It honestly depends on the 9 year old. Instead of assuming what you think he might want to do, call his parents so you can talk to him for a bit and see what HE wants. He may want to make a game, or he might have thought up an idea for an ipad app. He might want to learn to program, or he may just be the idea man and want you to do all the work. :) If you get a little more information on what he wants out of this, I think we'll all have an easier time identifying what tools might be a good fit.


Without knowing that, RPGMaker, Scratch, or Unity might be fun enough to get him interested in programming. If he goes the Unity route, the video tutorials are pretty good and he can work at his own pace. If he has trouble understanding what's going on, he might be motivated to learn to program on his own with something like Python for Kids.


- Eck

#5196460 I can code up a decent console game, but the jump to graphics is stumping me

Posted by Eck on 05 December 2014 - 10:48 AM

If you'd like to use MonoGame, I think it should be fine. It wraps up game programming concepts in a similar easy to use fashion as SFML. 


You say you don't like following tutorials, but would rather look through code. However, I've found these very useful and they have pretty concise code examples.





I'm including the XNA link since MonoGame is an open source port of XNA so you'll probably find them useful too.


If you're having trouble getting started on a game project because you're not sure what pieces you'll need, you might want to tackle simpler games. Take a look at this article and pick one of the games early in the list to do. It explains which game types you should make first and why. Pong is a great first start.



Let me know where I can pick up my VHS tapes...


- Eck

#5195787 Unity or C++?

Posted by Eck on 01 December 2014 - 03:49 PM

I've been a professional developer for 15 years and messed around with game development to some degree or another as a hobby during that time. I worked on my own engine with different tech stacks, OpenGL, Direct X (6 I think?), and XNA. I tried a couple other game engines before and was 'meh' about them. Most of the time, I found myself fighting the tool and telling myself, this would be so much easier if I had total control. So, I continued working on my engine, building framework code and refactoring things as I better and better understood the problem.


During all that time, I never finished a game until recently. I jumped into the recent Week of Awesome II game jam with my custom XNA engine (about a year or two in the making). I was thrilled with what I produced, but I also saw how awesome the Unity projects looked and how quickly they were able to put them together. Looking at the other entries in that weeklong contest opened my eyes to the awesomeness of Unity. 


Unity IS real coding. It just does a LOT of the heavy lifting for you. For the "scripting" I use is real C#. The editor I use is real Visual Studio. If you aren't a good programmer, Unity probably isn't the right tool for you because it requires so much programming. It's not just drag-and-drop sprite sheets to re-skin a common game type.


It let's you focus on building a game without having to spend a year or two building the toolset that will help you build a game. :)


I've even bought a few Unity games off steam recently. 


So the next time you get bashed for using Unity, tell them you're having trouble hearing them over all the cool programming you're doing. :)


- Eck

#5195559 Should I keep a dev/programming journal?

Posted by Eck on 30 November 2014 - 03:43 PM

Some people find it motivating, and motivation is one of the biggest hurdles to overcome. I say give it a try and see if it works for you. Even if you don't have a dedicated following, being public with what you're doing can cause you to worry about your public image.


- Eck

#5195556 fully motivated to make a video game since could not find right one

Posted by Eck on 30 November 2014 - 03:31 PM

Don't use the term MMO because I don't think it's what you mean. You're talking about people starting up their own servers which is more along the lines of just a multiplayer game. Plus if you say you're a new developer working on an MMO, you're likely to attract negative responses since one person simply can't do it. If you don't believe me, go find a "simple" mmo, and look at the credits screen for it. Count the number of people and assume they worked on the project for 1-2 years...


And if you've never completed a project, you may want to set your sites a little lower. Give this article a read:



It walks you through the early projects you should complete and why you should.


- Eck

#5195552 Starting Programming Dilema

Posted by Eck on 30 November 2014 - 03:20 PM

If you're going with Unity, I recommend C#. And the video tutorials on how to use unity are great, but you'll have an easier time if you already know how to program:



- Eck

#5195313 Where It all begins

Posted by Eck on 28 November 2014 - 10:56 PM

Start with the FAQ:



Since you're open to the suggestion of a new language, I'll recommend C# with Unity. But if you want to stick with C++, I recommend SFML. Find some tutorials you're happy with, and start tinkering around.


Once you decide on a language/engine, give this article a read. It explains which games you should make first and why.



Keep to simple projects at first. If you jump right in trying to make your dream game, you'll quickly get overwhelmed. Your poorly designed code will become a nightmarish labyrinth that will shatter your sanity.


- Eck

#5195312 Isometric Assets, 3D to 2D?

Posted by Eck on 28 November 2014 - 10:43 PM

Both Diablo and Diablo 2 used 2d sprites of 3d models.  These aren't the most recent examples, but typically it was done to target lower hardware machines. I suspect most companies now a days just use 3d models since current engines and hardware can handle it. If you've already got the models and animations, most companies will consider it more work to then take snapshots of each frame of the animation and build sprite sheets out of it. But as an independent solo-dev, do what you have to do to get your game out. :)


- Eck