Jump to content

  • Log In with Google      Sign In   
  • Create Account


Member Since 02 Oct 2013
Offline Last Active Jul 27 2016 07:05 PM

Posts I've Made

In Topic: Best game engine?

18 July 2016 - 05:39 AM


In Topic: Your Preferred Os And Why

14 July 2016 - 06:54 PM

Linux, hands down. I grew up with Windows and I've been/am writing C++ code for both Windows and Linux.


Without going into any of the obvious political issues surrounding spyware and security...


1) Linux is undoubtedly better suited for C++ programming than Windows. Compiling code is so fundamental to every Linux system, developing just feels more streamlined and more thought through (none of that manual DLL copying of dependencies stuff, or screwing around with VS solution file settings).


2) It feels more responsive. This is a big issue of mine. If you've worked with Linux for a few months then switch to Windows, Windows just feels laggy. Dragging windows is slower, copying files is slower, compiling is slower, applications take longer to start, etc. I don't know why this is, but in my experience, Windows runs slower.


3) Annoying updates. Windows doesn't have a package manager. When I start Windows, I will get random popups about "nvidia update", "Acrobat reader update", "java update", etc. at completely random times (sometimes even minimizing the game I'm playing). This is super annoying. Windows 10 even forces you to reboot after installing updates. Why does Windows even have to reboot? Linux can update packages without having to restart anything, what's the deal? 


4) Efficiency. Windows 10 does have multiple desktops, but it's not usable. I really wish Windows would let me handle more than 8 windows efficiently, but it doesn't. I have to either alt-tab my way through the stack of windows or search for my Window in the task bar. That's at least a few seconds wasted. On Linux I use a tiling Window manager that is heavily keyboard-based. I organize my windows on multiple desktops in a tree-like structure, so getting to any Window is never more than two key presses away. I hardly use the mouse when I'm developing and it's just so much more efficient than what Windows currently provides.




Can you post relevant extracts from the License terms please


Read my signature, and follow the link in my signature. 

In Topic: Yet another 'Best engine' topic

05 July 2016 - 12:48 PM

I've been dabbling with Urho3D myself for the past few months and I can recommend it. The name implies 3D but it is just as suitable for 2D games. It comes with a plethora of 2D features (Box2D physics, collision, 2D animated sprites, particles, etc. see here) as well as other normal features (sound, input, serialization, network synchronization, pathfinding, etc.)


The code feels very modern and once you get into it it's intuitive to use. Of course, you don't have to even program in C++ if you don't want to, all of the engine's functionality is exposed through AngelScript (which feels similar to Java). It ships with a 3D editor, but I've seen people create 2D levels using it.


I think two of the coolest features of Urho3D are 1) it automatically reloads your scripts when you edit them. You don't even have to restart your game, the changes you make are immediate. This is really cool for rapid prototyping. 2) Everything is self contained. Distributing your game is a matter of zipping the "bin" folder, you don't have to screw around with dependencies and other crap alike.


I will note that Urho3D's API documentation is lacking and unhelpful. The wiki is a little better. Studying the samples that come with it help a lot. In my experience, if you have a problem, you will get an answer on the official forums within a day.

In Topic: Wannabe

10 June 2016 - 11:29 AM

It's never too late to pursue anything. There are a million ways to get into game programming, you just have to find one that is easy enough for beginners and offers to you the freedom and features you expect to have. Some immediate products that come to mind are: DarkBASIC, Unity, pygame, etc.


I personally started making games with DarkBASIC when I was about 14. It's a very simple language to pick up quickly and the results are immediate. It's also a lot of fun to play around in. I wrote games for about 5 years using only that product.

In Topic: Do you keep a collection of handles in your game for your components

10 June 2016 - 11:21 AM

This is perhaps a shameless plug, but when I first learned about ECS I tried writing my own framework, and I implemented a way for the user to specify execution dependencies:



In my project, the dependency tree is resolved and flattened into a linear ordered list of systems to execute. Thus, when calling world.update(), I only have to iterate through the list and call system->update(). This sounds like the exact thing you need. It might also be a possibility to flatten the dependency tree into multiple lists of systems, where each list contains systems that can be executed in parallel. Just a thought.