Page 1 of 1

Areas to practice for new engine?

PostPosted: Tue Jun 24, 2014 5:27 pm
by BubbleQ
Heyhey, have not posted here for a while but it feels good to be back!

I have for some years now played around with python, creating small projects with many different goals etc.
This to the point that I feel so comfortable that I want to concentrate on more specific areas, more than just creating random stuff..
Long time interest has always been modding, and recent events the last weeks have made me very eager to try out some mod ideas I got. But through ugly experiences, I have been aware of that it takes a whole lot more than just dreams and simple hammer skills to get anything done, or this is atleast my case..

So lets say I decide to wait for Hl3 and in my hopes a new engine. What areas would be best to practice in meantime if I want to be ready and jump right into the new engine and start coding? Is it just plan random game programing or maybe more specific as server/client, mathematical, databases etc?

Re: Areas to practice for new engine?

PostPosted: Tue Jun 24, 2014 6:17 pm
by Garrador
Well, Unreal Engine 4, Cryengine or perhaps even Unity would be a good start I'd say. If, like you say, you would wait for HL3 (source engine 2) I'd go for a next-gen engine as I'm sure Valve are incorporating some next-gen stuff to it. UE4 and Cryengine is C++ (Lua in cryengine as well, for scripting afaik). Unreal Engine 4 also introduces "blueprints" that is a visual scripting system that is perfect for prototyping very fast.

Not a fanboy, but I would strongly recommend UE4 as it is very cheap ($19 / month, or pay once and abort the subscription and you would have the engine, but no running updates), versatile, next-gen techniques, prototype-friendly at a strong level and otherwise easy to understand/learn.

Setting up a project for programming in UE4 is also extremely simple and straightforward.

Re: Areas to practice for new engine?

PostPosted: Wed Jun 25, 2014 10:03 pm
by YokaI
I would suggest to use this downtime as an opportunity to familiarize yourself with programming as a whole.

Firstly, having a firm grasp of C++ is probably going to be necessary. With the exception of Unity, which uses C# scripting, many of the next gen engines will probably use C++ with dynamic compilation. Valve's Source 2 (as we're calling it for now) is basically guaranteed to use C++ due to Valve's perspective on multiplatform development. In other words, using Microsoft proprietary C# would be very unlike (but not impossible) so I'd suggest straying away from tinkering with Unity C# coding when it comes to learning programming or expanding your programming knowledge.

Secondly, you should really understand how memory management works and how C++ deals with the creation and deletion of data. With many of the Engines moving to C++, there's more room for error when it comes to memory management and thus it's a good idea to make sure you understand aspects of C++ that deal with memory allocation. It will also be very important for you to understand references and pointers and how to use them.

Thirdly, familiarize yourself with Object Oriented Programming and, from there, start understanding design patterns and programming techniques. Oracle has a good lesson on Object Oriented Programming which, once you understand programming fundamentals, should be able to teach you the basic idea of OOP outside of Java. Here it is. As for design patterns, there are plenty of books out there that teach these well and it should be easy to find online once you know what you're looking for.

Honestly, start working on C++ projects that are small in scope but are still relevant. Learn basic openGL or even learn something like SFML / SDL and make a quick / simple game.

Re: Areas to practice for new engine?

PostPosted: Thu Jun 26, 2014 8:31 am
by Major Banter
I thought Yokai was dead.

Re: Areas to practice for new engine?

PostPosted: Thu Jun 26, 2014 10:21 am
by YokaI
Major Banter wrote:I thought Yokai was dead.


Nope. Just been busy for a while so I haven't had time for forums beyond reddit / neogaf.