Why do people dislike the BGE?

Why does BGE get a bad reputation? I’ve managed to get some really cool looking/ playing stuff working in it faster and easier than any other game engine I’ve ever used before. BGE runs fast and does not look all that bad if you can set up your scenes properly or make good assets. Game publishing is an issue though but why would individuals even want to release a commercial game in such a massive market anyway?

A. Because it is different then the other engine they like
B. They see it’s faults
C. They dont understand it’s strengths.

One of the huge issues that the BGE has is that it’s a black sheep. It’s a custom-made engine that runs Python, a generally unpopular language surpassed by its cousins in the OOP pool (like Java and C++/#). The system is also known not to be super powerful and can’t really support fancy things like particles without using some visual tricks.

It’s also attached to Blender, which is also a backwards system. Its interface and usability go against every industry standard established by programs like Maya. Not to mention the bias towards a game engine being inside what’s supposed to be a modelling program. It’s like a dentist’s office inside a restaurant, most people aren’t willing to trust it.

Particles are something I would like to add, but I think the answer is a mesh, and a particle controller, and you can emit a particle that follows a physics object or that is purely graphics moving to a pattern. Each particle is a face of a hidden mesh that can be custom sized , so all perticles are 1 draw call,

Also new upbge has instancing, which could also be used to run particles if you used a lot of them.

I want the git for this - http://enja.org/2010/12/16/particles-in-bge-fluids-in-real-time-with-opencl/

I like it.

I can’t tell why others do not like it. But I can guess …

I can tell from the past that there where a lot of complains that (especially beginners) where afraid of the “linux like” look of Blender (pre 2.50). This has nothing to do with the BGE, but shows that - especially window users - expect a surface they are used to. Even today Blender does not follow the supposed behavior of a Windows-application (e.g. focusing the viewport under the cursor).

I can imagine that some people expect ads with commercial successful titles. Maybe they miss a “demo game” that they customize.

Or people discover that games are illusion and tricks. Nothing you see is as you think it is not in game not in developing games. Or discover making games is hard work … so blame the tools.

  • Artists often struggle in describing behavior and like the idea of the logic bricks.
  • Programmers often struggle in creating eye-candy assets and using logic bricks (as they expect to dig through the internals of the game engine).
  • Beginners often struggle because of missing pre-defined complex aspects (pre-sets) that they can stick a game together without caring the low level behavior.

In general the BGE provides large freedom at the cost of nearly no guideline how to structure your work. The price is that most projects choke to death on it’s own chaos rather than get born as a nice little game.

But that’s exactly my point. You can’t just put particles into BGE, you need to perform some tricks and whatnot in order to get a desired effect. That’s not what industry veterans want to have to do in a game engine.

Several students in my study who havent even made a game ( and calls themselves as game designers ) just keeps complains that BGE is free and python is too easy xD … They see i use prebaked models and complain that the BGE provides “bad lighting” and is only able to render those cartoonish models… But when i show them the lamps ( with different kind of color blending ), they switch topics quickly… ). So for me they have no any idea about how to compare engines and i stop arguing with those fking peeps.

I can now turn any kind of idea into BGE without a struggle but it took me quite a long time to get used to it. Without sending test files here and there on this forum to question people, i would not know how to use it. With other engines you hardly make a simple copy of the thing ur trying to make… if u even know it best , it takes longer time than making a .blend. Unity and Unreal are just tools to make games but they take sooooo long to load just like as if they are games already.

I really like it, actually I love it.

The Blender Game Engine is definitely usable for many cases.
I personally don’t use it, because I am struggling with its usability a lot when I try to scale from a simple demo to something bigger.
E.g. when you create a character, you can not simply copy it and use it another place too. You have to be careful when copying it. You always have to keep in mind which data is being used. I don’t want to think about that kind of stuff when I want to have another copy of a character. I just want to do it and adjust it when needed. Also transferring something from one character to another can be very difficult and I always feared that I could do something wrong and everything could be broken afterwards and that I didn’t understand exactly why. That kind of use case is a lot easier in Unity.
Or if you consider a case where you want to make an object a child of another main object, such that you can easily perform operations with that group. In order to do that, I need to select all the objects first that need to become the children and then to object that becomes the parent, or wait, was it the other way around? And what’s the short-cut for the parenting? In other applications, you can simply use drag and drop which is for sure a lot more intuitive.
In Blender, even if you have created a simple hierarchy of objects, you can not simply copy it. You have to carefully consider what you select to create a copy and if you did something wrong, you have to do it again, because making adjustments afterwards is rather error prone and the risk that you do something wrong is very likely. In other applications, you just copy it and you make the adjustments you want. If you find out that there is something wrong, you can adjust it a lot easier or in the worst case you redo it.
Those are very basic use cases in my opinion, but they are unfortunately not intuitive at all in the Blender Game Engine (and in Blender itself). There are solutions for many or even all of the situations, but my goal is to create something and not to learn how to work around those very basic situations.

When it comes to more technical aspects, like coding or adding logic, there is also a lack of flexibility. First Python itself is rather limiting for technically skilled people. When you want to create computationally expensive scripts, you reach the limit very quickly with it. In that case, one is forced to use C/C++. This has the drawback that it prevents you from doing quick iterations and you can’t easily share your changes with others, because you are using a custom version of Blender.
In my opinion it is also not easy to add custom functionality to characters or objects in general. There are logic bricks, but when you want to do something very advanced, it can be impossible or you end up with spaghetti. If you want to create a variant of that in order to apply it to another object, it is not just simply copy paste, it always feels like brain gymnastic to me.

There were and are a lot of individuals who release commercial games. Some want to actually have a commercial success, while others are more interested to see what others think of it.
Doing that with the Blender Game Engine is unfortunately more complicated than with other game engines. Multi-platform support is often an important factor for those individuals too and the Blender Game Engine is simply not suitable for that.

I love it to a point where I learned C++ just so I could help improving it.
And I think everyone who dislike it is just biased, and never tried to actually make something.

Blender’s Fine its not bad at all you just have to come up with clever ways in order to create a stable and well optimized game with HD Graphics like now iam currently working on a project that aims to deliver HD textures as well as a smooth and Good gameplay.
I’ve had a Look at unreal Engine 4 but still i came back to blender because i really found it simple and easy when it came to designing
My own Game. in the past ive only managed to finnish 3 Games of which were not bad at all. So at the end of the day it all depends
on the person. Some people might not find it attractive or easy to use or they want a software which requires a Huge amount of work as
Far as making games is concerned.

I do have Unity 4 and 5 but i really struggle badly, Unreal Engine 4 really does a good job as far as the lighting is concerned. Those softwares have Really impressive tools and can Render on multiple platforms.
But for now blender seems to be the best and quickest way of how i can work towards finnishing my project.

I tried it out in a very serious way. I found a lot of practically relevant cases that were solved better from my point of view in other software packages. Why does that make me biased?

I am glad about this fact. For some reason(I don’t know what exactly, propably bad experience with it) I hate Windows almost as much as BGE haters hat BGE(still not as much because that hate which they have is unbeliveable).

In my opinion BGE currently is low-optimized, non-high-tech engine, but it is becoming better every day. So soon it will be a decent engine(I am sure about it;)). Also, BGE has one of the easiest-to-use interfaces. It also doesn’t have any types of locks or limitations. In scripts and glsl shaders you can do basicly anything. So I don’t see any reason to hate it.

One reason that may cause a hatre and opinion that this GE is garbage is that there are not any big game titles made in this engine. Yes, KRUM, Arctic Alive and few other games are on Steam and look decent, but not many people even know about them:( If BGE had some great game titles, it’s reputation would propably rise.

The reasons that most people don’t seem to like it are exactly the reasons I love it. Because it’s not “fully featured,” or massively optimised everything you do feels a bit like a hack. And I really enjoy the challenge of getting the BGE to do something novel/interesting by hacking around things. For that reason I don’t intend to develop games with the BGE, instead favouring smaller challenges/concepts/problems (most recent ones have been around procedural generation). There’s a lot of things that are probably more awkward than they need to be, but that’s part of the fun of it for me.

I play with a lot of other engines and languages, and when I do have the inclination for to build a small game, the BGE isn’t my goto engine. But I’m just one person, and finishing a game as one person is a massive task, so I typically stick with smaller ideas, which the BGE is perfect for. I think a lot of why people quickly give up is because the BGE doesn’t hide the reality that making a game is hard work behind prefabs, standard libraries and one-click solutions. I get the impression that there’s a lot who expect the game engine to provide everything and don’t realise that the majority of AAA games use heavily modified engines to suit their needs.

I love python, it’s one of my favourite languages to read/write. But agree that it is slow for more complex tasks. My biggest frustration here is that many engines allow you to easily extend them in their native language when raw power is needed, but doing this in the BGE is a real pain.

As for the interface, I get annoyed when other software doesn’t behave like Blender, I think I’ve been using it for too long!

Why would I want to use the BGE when UE4 and Unity are free?

In general the BGE provides large freedom at the cost of nearly no guideline how to structure your work. The price is that most projects choke to death on it’s own chaos rather than get born as a nice little game.

That freedom is the biggest reason why I love using Blender. Have the devs considered making a second installer that includes Yo Franky as a ‘template game’? It might be enough to demonstrate that it’s worth sticking at it.

It’s just clunky, and isn’t very powerful. It hardly has any built in features, too. After hitting a wall and not being able to go any further in the BGE, I switched over to UE4 and I’m making progress faster than I ever did in the BGE. The sooner it gets removed so the devs stop having to build around it, the better.

I’m not even going to start on the godawful licensing issue.

where is your work nopinky,

It’s comments like this that will ultimate place limits on how much improvement is done to the BGE and how many users it gets.

Why would people use (and help develop) an engine if its userbase refers to people who don’t blindly praise it as ‘the almighty of game engines’ as biased or worse (such as claiming they are not a ‘true developer’ or even a paid shill). If the BGE really did have the features you would need to make a AAA-quality game, then why does the community feel the need to resort to insults as a response to critique and inquiry?

The truth is, a community that is welcoming and is not afraid to realize its existing weak points is a key thing that is needed if you want the BGE to have a strong userbase and a robust development rate. A weak community meanwhile that epitomizes the idea of ‘software as religion’ and every stereotype claimed about FOSS is unlikely to get very far anytime in the future.

BGE Version
Unreal Version

Some things the Unreal version has that the BGE doesn’t

  • Baked lighting
  • Dynamic materials (for lack of a better word- moving rain on outside windows, random UV offset on inside windows)
  • Decal textures
  • God rays
  • Higher framerate

UE4 has more built in features. Everything I did in BGE felt like I was trying to work around the engine’s limitations. The material editor in UE4 is light years ahead of what the BGE has, and I love the blueprint system. The only thing that I don’t like about UE4 is the lack of MSAA, but that’s not a big deal compared to what I get out of it.

So no. I’m not biased, I’m not an Unreal fanboy. I’m a game dev and a long time blenderhead who got fed up with working around all the problems with the BGE. I wanted to love the BGE, but all the problems made it impossible.