Legitimate Discussion - Is the BGE something to solidly stick to?

Hey guys, I know I’m gonna fire up some controversy with this, and if it gets too hot, feel free to shut the thread down, moderators. I’ve just had some stuff on my mind lately and I wanted the community’s thoughts.
Just a note, this won’t have much structure to it, I’m just rapid-firing my thoughts into a physical form here.
I love the BGE. Always have. A solid foundation on which to build, an awesome community with oceans of tutorials and assistance, under a long-established and open-source banner. But lately, I’ve been asking myself if it’s where I want to stay.

The constant rumors and notes from development saying that “BGE won’t be in Blender version X.xx” aside, I’m mostly concerned about the engine’s pedigree. What actual games have come from it, at least that have made it into any kind of public consciousness? Sure, there’s a whole subforum of examples of finished games, but when i look at the painfully rare examples of Blender games getting to a “finished” state and being voted into the big storefronts like Steam or GOG, the more I see the notoriety of it come out in bucketloads. People attributing the quality of the game to the comparatively lackluster quality and ability of the BGE. And for the most part, it’s not unwarranted.

Again, I’m a BGE user myself and I know and love the power and capabilities of the engine, but it’s no secret that there are better engines on the market. A lot of which have those pedigrees that Blender lacks. Look at Unity, giving us some of the most popular games on the indie market lately (and even one or two AAA side-titles). Look at GameMaker, a 2D-based engine but has that library that hasn’t been overlooked. Same with RPGMaker, despite its poor reception.

I’ve been recently considering looking into Godot. The engine is open-source, runs on its own Python-based high-level language, and has the goodies that BGE touts while improving on what it lacks from the core. Sure, its library is a lot like BGE’s, but the difference is that Godot has been a single developer’s engine since the turn of the century and only two measly years ago has it gone open-source. It needs more time to gather up a userbase. Blender’s had an open-source game engine for over a decade, and almost nothing to show for it on a wide scale. It’s daunting, frustrating, and demoralizing to me, that something I’ve put so much blood, sweat, and tears into is stuck in drive with a broken steering wheel, sending me spinning in circles.

I just think that, in my own experience, I want to desperately stay with the BGE, just because I’ve devoted so much time and effort to it. I just don’t know if I’ve been wasting all my time on it, and the idea that I might have done so hurts me. (Also it has that benefit of being a modeling program at the same time, which is SUPER convenient and cuts out a LOT of external files.)

But I need to think about the future. My future as a game developer. And that means that I need to adapt to new tools. Especially since my current tool is in constant threat of having no future of its own.

I know there’s been some badmouthing about the BGE here, but please keep in mind that I DO like it. But I think I’ve got the same kind of relationship with BGE that a parent would have with their rebellious teenage offspring. I love it for what it is, but I’m starting to get tired of it. Hopefully it’ll grow up into a responsible adult/competitive engine, but right now, I need a break from it.

Please, for the love of all that is holy, keep it civil. I don’t want to pick fights. I just want discussion.

A better example than unity would be the unreal engine which is now free. It’s one of the best and most powerful game engines today. If you are serious about game making you shouldn’t be using the blender game engine. Go download unreal, the last mass effect game was made in it and the coming Final Fantasy 7 remake is also being made in it, that game engine is going to keep on being used for years. The blender game engine is a mere toy in comparison. That said Blender is a capable modeling and animation program.

Well I only began using this engine about two months ago, and I ended up cancelling my demo for technical and asestic reasons, but decided to try a mini game using the files, as I had wanted to for a Phase 2 idea. Notsure how that will go, but I spent a lot of time creating my basic beginner stuff that I felt I owed it to myself to try and see another project through.

I’m sure the game engine can certainly be better in the future, but it is down to the foundation to do so. From what I can observe there is no real interest in making it so for the moment.

Perhaps as the user mumrik has stated, may be consider moving to a more powerful engine, and see how it goes for you.

blender game is an engine,

in the end no matter what engine you choose,
the hard work is actually making the game…

In the end tools matter much less than dedication.

Most of what you do as a game developer isn’t specific to the BGE. Most of the time we spend is modeling, animating, and programming, which for most people are transferrable skills to any engine. If you chose a Python based engine, for example, you have even less work, as you only have a Python API to learn.

As a game-developer, there’s no benefit in being loyal to a software program, apart from the time investment. If you decide your time is better spent working in an engine that works faster for you, that provides more out of the box, and gives you more control, then there should be nothing stopping you.

There’s a regular cycle on the BA forums of people who learn game design basics with BGE, and then either leave to another engine, or life pulls them away (think Social, blendenzo, …), the former for good reason

Unity is a capable engine that has been used to make successful games, just like Unreal Engine. Even if it wasn’t used to make well-known games, the only thing that the fact that an engine was used to make whatever game proves is that it’s possible to distribute the finished product. It doesn’t really matter what engine Mass Effect was made with, as nobody’s going to make Mass Effect. The engine choice itself doesn’t matter too much.


@MichelleSea - The BGE does have problems. However, problems exist with every engine out there (though not to the degree of the BGE), and they may not be satisfactory to a given user for whatever reason. Many, many people use Unity, but a lot of those people specifically don’t use, say, Unreal, because it doesn’t click to them. Different engines are different; it’s not like Unity and Unreal are “The Perfect Engines”.

Anyway, the BGE has the tools available to make solid, successful products, but those same tools it offers (shadows, 2D screen filters, LOD, armature animation, etc) make people want to make bigger, better, and more ambitious projects. People don’t have a handle on their time and abilities, which means that games that can’t be finished are what get started.

Like, Thomas Was Alone is possible in the BGE. Nobody’s making that, though.

Nuclear Throne is possible in the BGE. Again, nobody’s making that.

People want to make the next (Fill in popular game name here), rather than something more in their strengths and more likely to be completed.

Also, I think another reason the BGE doesn’t have a lot of finished, high-quality games is because people don’t like to finish games. It’s exciting to start games, but relatively boring and takes a lot of time to finish them. That means that even games that look promising most likely won’t be finished, and that’s true regardless of the engine choice.

And no, you didn’t waste time with the BGE. Even if you move to a wildly different engine, the core concepts transfer (optimization, good use of engine abilities, etc), especially if you know Python and look to code in the next engine.


Anyway, BGE aside, Godot is a solid engine. I believe you might want to look into GDScript’s speed, as I’ve heard it’s fairly slow, which might be a pain if you’re doing computationally expensive gameplay.

It takes some time to switch to another engine but you can pick up some new skills too.
You have to judge if the switch will be worth it for you. I’ve seen some people who switch around from engine to engine never really getting along with any of them. Other people stick with an engine long after it’s become obsolete. It can be difficult to make a decision because many of the arguments are so well entrenched.

You might want to think of making games in the same way that you could think about painting watercolors.
Do you want to paint triple A water colors? Is it important to you that other people buy your water colors? Are you painting just for yourself, or for your friends and family, or for the community of painters you get to talk to about watercolors? It’s worth remembering that not many people do watercolors for the money. If you want to paint professionally is it time to upgrade to a new set of paints and canvas? The old set is looking a bit worn out and the colors are not so bright. Everyone says you need the best and newest equipment to paint really good watercolors…

SolarLune there is a reason they chose to remake Final Fantasy 7 in the unreal engine as opposed to the unity engine. That is not to say that Unity is bad at all, but unreal is one of the best and also free. I would say it’s better to pick up unreal engine.


seems appropriate.

side note- The only tool missing from my toolbag at the moment,
is cube mapped reflection probes, dynamic and static, with automated mixing/projection.

Looking at unreal, or unity, makes me find just how close blender game is to them…

I’d suggest you to try other “engines” (game development toolkits would be more appropriate). Even if using BGE in the mid term was a sane idea - which is not, because, as you said, we still don’t know what the heck will happen to it - trying new ways to do X makes you better at doing X.
You’ll never know if Unreal has the perfectly suited workflow for you, if you don’t try it. And for “try” i mean try to make a game with it, not just open, dislike the UI and call it a day: that’s cheating :).

I liked ue4,

one issue though is I could not get a (property value !=0) to work as a event trigger. Many of my ideal designs are setup with control proxies.

like

value !=0-------------fire code in container

What I would say is look around the place at different software… every one has their own little click in a software… so you just need to find your’s

Thanks, everyone, for your awesome advice. I have a lot to think about. You guys are all so awesome.

@Mumrik My biggest issue with both Unity and Unreal is that it doesn’t support Python, or a Python variant. That’s why I’m looking into Godot. I don’t want to put everything down to learn a new language. But I might have to, depending on what I find…

@SolarLune: oh, really? Hmm, I’ll have to check on that. That would be an issue, since I’m starting to stretch my programmer tendrils out a bit more.

@Mirror: That’s a perfect analogy. Thank you for writing it!

@pgi: Truth be told, I did that with Unity once. xD Maybe I should go through some tutorials, get a handle on the engine proper, before giving a verdict.

That sounds like it would be very easy to do. But there are probably better ways, like blueprint communication. https://www.youtube.com/watch?v=EM_HYqQdToE for a video on that.

If you only want to use python you’re pretty limited. For UE4 there is blueprint which is the visual scripting thing. Even if it’s not python the logic is the same so I don’t think it would be hard to learn if you know a bit of python. It’s probably about as slow as python but can be converted to native c++ code so you can think of it like writing c++ code in a roundabout (but easier if you don’t know c++) way.

There’s also Skookumscript (http://skookumscript.com) which is a scripting language with a free UE4 plugin that’s really fast with simple syntax. It’s developed strictly for game programming so it’s a lot more effective and streamlined than something like python.

You probably won’t run into any slow-down unless you really push it. There was a little write-up on it that’s around; you can find it on Reddit’s /r/godot sub, I think. They might be looking to optimize it, though, in which case this won’t be accurate for much longer.

BGE is not applying for a serious projects…Godot engine is a young, great engine, create a few test projects and you’ll see, I’m excited about him…yet the 3d needs to improve. …version 3 will be a milestone for many significant enhancements for 3d…Unity boys fear!!:):stuck_out_tongue:
you can look at my 3d project…http://godotdevelopers.org/index.php?topic=15532.0

I am anxiously awaiting the viewport upgrade, and hoping once GL is 3.5+ and
all immediate mode is removed, blender and the bge could both in theory be ported to mobile directly, with a few other steps I am sure…

This coupled with VR and Occulous support could make things intresting.

I can’t wait to try Armoury engine though…

I wonder why have not anyone tried to adapt skookumscript to the bge?They said you could use it with other game engines.

Yes,… Armory engine…will be actually engine addon for Blender using Cycles…Cycles rendering in real time ,comparable with the quality of the Unreal engine and Unity
@BPR Armory…no Armoury:)