Advertisement

What is Your Preferred Engine(s)/Framework(s) and Why?

Started by September 26, 2014 10:12 PM
6 comments, last by Glass_Knife 10 years, 1 month ago
I'm looking in to different engines/frameworks and need some other perspectives on which are best.

I like Unity for when I want to make progress quickly, otherwise I like to write my own frameworks. I know it is a lot of work and I make games slower but I enjoy the technical side of game development.

My current game project Platform RPG
Advertisement
My engine. Because I want to have complete control.
I do not like scripting languages like in Unity where you have to learn all the functions and how to use them.
With my engine I write a function that pops in my head and maybe even run some assembly code if i need.
I have complete control over various fields of engine. If I have to optimize something I do not have to wait for Unity team to fix something.
My engine already has physical based rendering for example while unity 5 is not out yet.
So writing your own engine is the best thing!!

My engine. Because I want to have complete control.
I do not like scripting languages like in Unity where you have to learn all the functions and how to use them.
With my engine I write a function that pops in my head and maybe even run some assembly code if i need.
I have complete control over various fields of engine. If I have to optimize something I do not have to wait for Unity team to fix something.
My engine already has physical based rendering for example while unity 5 is not out yet.
So writing your own engine is the best thing!!

http://ptrace.fefe.de/fpalm30c3.jpg

"I would try to find halo source code by bungie best fps engine ever created, u see why call of duty loses speed due to its detail." -- GettingNifty

"The only thing that interferes with my learning is my education"

Albert Einstein

"It is a miracle that curiosity survives formal education"

Albert Einstein

I do my own, filling up gaps with other libraries.

The gaps I fill are pretty specific, they're thinks I'd dislike to code or things that I just don't see finishing on my own. Say, a physics engine. I don't like that much math nor do I see myself finishing a physics engine, so I'll integrate Bullet though libGDX's wrapper when it comes to.

I also dislike dealing with file formats, so I look up libs for doing that first. I haven't had much luck though, so I ended up with my own broken OBJ loader and a simple loader for DDS files that just parses the header.

I'd have liked to find a good math lib for Java, but vecmath is kinda bad and I dislike libGDX's math lib (that whole having Matrix4f having two backing arrays for example). So I did most of those on my own (cept matrix inversion, fck that, wrapped libGDX's). I'll probably use libGDX's for quaternions, unless I don't find a nice way to integrate it with my matrix/vector types.

I wanted to have some sort of format for storing settings and additional data for files, so I'm using SnakeYAML for loading YAML files, and using YAML for various things (display config, input mappings, material details, etc).

For sound I'll use probably "Paul's Sound System", which works on top of OpenAL. I've seen various Java games using it.

I have my own resource manager but I could have easily used libGDX's. It never occurred to me to see how libGDX handled files sadly, and by the time I saw what libGDX's had, it was more or less what I already had implemented. So no sense replacing it now.

I use HPPC (high performance primitive collections) for primitive collections.

Originally I used Artemis, which is an entity component system framework. Since its a small lib, over time I added various modifications/fixes to it and it became dustArtemis, which is a fork I maintain. So that prolly fits both the "outside lib" and the "my own" sides biggrin.png

There are various things I enjoy coding (say, renderer, or the whole engine architecture thing), its fun for me. I don't have specific games in mind I'd like to make, so I don't see the appeal of just grabbing an existing engine (say, JMonkeyEngine for Java).

Will I ever release a game using my "engine" ? I don't think so. I'm in for the ride, not the end goal.

"I AM ZE EMPRAH OPENGL 3.3 THE CORE, I DEMAND FROM THEE ZE SHADERZ AND MATRIXEZ"

My journals: dustArtemis ECS framework and Making a Terrain Generator

Advertisement

My own [3]

If I feel like implement anything (doesnt matter how low level) I can (its like a programming sandbox, where any new thing is an add to the engine, all reusable);

Any limitation is on my own fault and represent new stuff to learn and solve (no ties);

Its certainly not as productive as major solutions out there, though the biggest problem is portability, as Im limiting it to windows only to speed things up and due lack of knowledge. (I dont have much experience in other systems even as user)

I'm looking in to different engines/frameworks and need some other perspectives on which are best.

This is like asking what language is the best, or which OS is superior, or which Doctor Who is your favorite. Already you've got people suggesting a pre-built engines, and the other side saying to use your own. Are you a programmer, artist, game designer, or something else? Are you trying to make a game, or understand the technology? Do you want to make something unique within the bounds of what everyone one else is doing, or do you want to get outside the box and try something completely new?

Here's a suggestion. Make some tech demos with a few engines and from scratch. See what it takes and then decide which way you want to go. Odds are, if you stick with it, whatever you like will change from year to year. Without any idea of the benefits and costs of 3rd party tools vs. your own, how can you decide?

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

My Twitter: https://twitter.com/indieprogram

My Book: http://amzn.com/1305076532

This topic is closed to new replies.

Advertisement