Blender and the new Unreal engine 4

While I would agree with the premise of “paint not defining the painter,” and would say that the metaphor applies to game engines, I doubt many artists would use a house brush for painting Mona Lisa.
Your tools don’t define you, you define you. But tools sure do help. As much as I love BGE it is impossible to create a next-gen game with it. It just can’t be done. It would have to go through so much optimization, it’s just not practical. It would be easier just to start from scratch than to go off of what BGE already has to make it comparable to a next-gen engine.
So I’m just sayin’, don’t hate people for hunting game engines, because when it comes down to it, they really, really help.

Code something amazing for the BGE, if it’s good, people can use it.

if enough people add to the deck, you get more chances of an Ace.

What exactly are you saying the bge can’t do?

So I have to say that I love BGE. It’s great. It’s easy to use, and you can make pretty much anything with ease. Blender’s interface is incredibly easy to understand, and the BGE really is a great tool. But BGE is not powerful. You have to remember that Blender is twenty years old now, and not everything is going to progress as quickly.
The main issue with BGE is that it’s Python. And don’t get me wrong, I love Python. But Python is an advanced language, meaning while it’s easier to script, the language, instead of going from itself to binary, it has to go through a dozen other languages first. The higher level the language, the more languages your computer has to translate. Therefore, Python = less efficient than C#, which is a fairly fundamental language.
So while Python is great for its ease of use, it’s less efficient. Basically, you’re not really programming in it. You’re essentially just calling on a script that somebody else already wrote for every line you write.
BGE is not a next-gen engine, and everyone at the Blender Foundation knows this. I’ve seen people here, myself included, who love to work with BGE and make games in it purely for the fun of using BGE. But I don’t expect my game to look like something from the Snowdrop engine. Making a profitable game in it just isn’t viable anymore.

biggest problem with BGE,

Cant send a object using logic bricks and receive it, and set a target with it.

I can do just about anything if I have enough bricks, ( there does not need to be many more)

(incoming message body to property)
Send property (dropdown of item properties like Object, object position, object rotation etc.)

Speaking from personal experience, I can relate to this. I enjoyed using the BGE. As I gained more experience, my needs grew, and soon expanded past the BGEs capabilities (either in terms of graphics, or roadblocks in the structure of its Python API)
I didn’t stop using it entirely, I just stopped using it for certain things where it wasn’t viable or even possible to continue working in the manner I had been.

It’s good to be able to realize when your needs surpass the capabilities of the tools you’re using, and it’s a crucial point in developing experience. If you’re working on a project with tools that don’t reasonably fulfill your needs, then you’re expending more effort than you really need to be. Just being aware of this should allow people to make a more informed decision regarding what tools best suit their needs.

I thought I’d post this response because I think it’s an important point. I feel like there are some people on this forum who have become disillusioned in thinking it’s possible to make an AAA game in the BGE as long as they work really hard at it, or have a giant collab. I’m not going to say it’s impossible, but it’s probably not practical.

with the tools I describe, you don’t need python,

I love logic bricks, because they make game creation so much easier, and put it in a format that is easier for our minds to understand. However, logic bricks are just prewritten, unspecialized code. I’m terrible at Python so I can’t say I could write it better, but if I could, I could write a specialized script that’s much more efficient in performing a certain task I would need it to because I have a specific task in mind. When they write the logic bricks, they think about all the different ways it could be used, and all the different features it needs to include, whereas, if I were to write my own script, it would be, for example, press w to move along the X-axis.
See what I’m saying?

I code python decently and use it, but everything I have done with it could be done using a few more bricks, and expressions,

Ray set property(anything a ray gets)----------and--------anything

message set property(anything a message gets)

Near set property (any data a near gets)

etc,

So ray property player (set property target to Sens.hitObject)

if property target not equal “Empty”------and-------steering actuator (target)

basically mixing all sensors with property actuators

and adding “stock properties” like

object[‘Object’] (unique object value)
object[‘Position’]
object[‘Orientation’]
object[‘State’]
object[‘LinV’]
object[‘AngV’]

And that is the way BGE is meant to be used, however, would you ever see a game like Tom Clancey’s The Division, Wolfenstein: New World Order, Ryse: Son of Rome, or even current-gen games like Assassin’s Creed 3 or Ghost Recon: Future Soldier be made in BGE? BGE is a very powerful tool, but you just can’t make up to date games on it like you could with game specific platforms.

I’m quite opposite, I love Python too much and I should probably in many cases use more logic bricks instead of Python.
But I always attempt to keep the blocks are minimal as possible and do things via script.
Sure Python is not as effective as other more low level languages, but I could argue that more and more games and softwares are done with higher level languages. Do remember that those higher level languages are also being developed over time and they keep getting better and better.

I must say I personally hate the word “Next-gen”. To me, there is no Previous-gen or next-gen. Sure technologies advance and games might look prettier than before. On the other hand I have noticed that many 2d games have more content to enjoy than most 3d games do. Better stories, characters, environments, etc. and THAT is what keeps me playing a game from start to end,
fancy graphics won’t keep me playing a game if itself is a hollow product.

Logic bricks are pure genius. Without them, I could do very little. For that reason I’ll always love and use Blender. I don’t need to make the next AAA game, as long as I can make a game my kids, grandkids, like to play. And I have done that. :slight_smile:

But . . . UE4 has Blueprints that come bundled with it, a form of visual scripting something like logic bricks, (For Unity one can buy playmaker, for $95.00)

So . . . I will try UE4, and Blueprints to see what I can do with it.

This kind of reminds me of the days when Greg Maya released the personal learning Edition, free. Man was I excited, As I am now. :slight_smile:

I think what a lot of people forget is that Blender is a gateway tool a lot of people get their start in 3d design and game design by learning Blender. All of us came to blender with big dreams of making a cartoon or a game, some of us have succeeded in this and have gone on to work for game company’s ad agency’s or taken the knowledge and gone on to school. It is inevitable that all of us start using whatever industry standard software we can afford. This is not the case for the casual blender user, we learn we grow and with it the tools we use.

I love Blender it is a great tool but it is only one tool in the tool box, Just like Unity or the cryengine or any other tool at our disposal, we gave gimp and photoshop it boils down to what tool you prefer to use. I find the game engine in Blender capable yet slightly restrictive, and I don’t know how to code so I have noway to expand Blender, bit find I need more tools to accomplish what I want to do.

I don’t like max or maya not even a little bit and not just because the price they charge but because I find it takes longer to model something that would only take me moments in Blender.

For me personally I will continue using blender and help Suport the team building it and hope one day that it will offer the same tools I get with other programs, if I can build a game sell a game and help fund and expand blender then that’s what I hope to do but I fist need to be in a position to do that.

Things blender has that others don’t

Nodes - Materials

Nodes - logic -“The Hive”

Logic bricks

Community

with just a few more logic bricks, the bge would be just as fast as the other engines, except the render.

Solution?

Add a few logic bricks,
Change the render.
I would rather we all pay 6$ a month to the bge development fund.

(side note) - is there a way I can pay blender.org and make sure it ONLY goes into the BGE?

UE4 does not have a integrated 3d animation suite,
and the workflow for blender is amazing.

I don’t like the term next-gen either, when it’s referring to the game. I’m really referring to game engines, and that’s an entirely different ballgame. A high end (a change of terms for you ;)) game engine is simply a system of access to a new kind of creation-something great and powerful that we’ve never seen before. I’m in no way putting down BGE, because BGE will always remain close to me, but since my team is aiming at something that can compete in a broader genre of indie, it has to look good. Unfortunately, my team leader insists on Unity so it won’t look that great…
But I completely agree with Gardner, Blender is a gateway into the great expanse of 3D software. I’ve create my fair share of BGE projects, and it’s all been great, especially with the freedom and ease of use provided by the wonderful interface and logic system. However, if I were to do the same project on, let’s say, UE4, I wouldn’t have to worry about the constant drops in fps that is, oddly, one of the main attractors of BGE. But since I wouldn’t be worried about all that, and I’d be free to create, I could be more free to, lets say, work on story, and boost the actual quality of the project, whatever you may think that means.
Ironically, I love working in BGE specifically because it doesn’t set anything up for you. It’s just you and a cube. Whereas in a game development platform, it’s you, a plane of pre-textured terrain, an ocean, and a handful of tools. This is ironic because while BGE leaves you off with just the bare essentials, Python juxtaposes that.
Lastly, more and more game platforms are not being written in high level languages, but instead they are going back to low level languages like C++ and C#. What you are thinking is that they are Python or Lua active, so that a game creator may, instead of writing in basic languages, quickly write an advanced one. Less work on the developer that way. But they go back and use modified basic languages because they are so much more efficient, since advanced languages are already calling on those scripts.
I’m not old enough to feel this way first hand, but my dad was a Kondorian. He has imparted his wisdom of advanced languages unto me, and I have learned quite a bit…The main premise being that as languages become higher and higher level, you essentially just aren’t scripting anymore, you’re just writing. So you can call me a purist, but I don’t agree with that.

if logic bricks distill into C++,

and you can do anything with them,

What is difference to C++?

it seems to me a logic brick is just a C template,

and python takes longer to edit it then another brick?

Logic Bricks are written in Python, and that’s why you create a script, you have to go through the logic editor. Essentially what you are doing with every script you plug in is creating a new logic brick for whatever you need it for.

I can get many many things done with no python,

I was under the impression that once you hit P

Logic ------>C

and python just is triggered by C,

where as bge bricks ARE c once they are “distilled”

and python just does get/set C variables?

So if I can change “object steering target”

like this

Sensor - not connected to a controller -

Ray(to property)-(target)

or

message((to property) target = body)

like this


So , in conclusion , how do we re-write the Blender Source Code to match UnrealEngine6 ? What’s missing and what do we need ? Pretty soon we’ll have video cards like Nvidia Pascal / Volta in our computers and BGE is not going to be ready to show the impressive.

I like unreal 4, but my rig could not even handle that (my pc)

on top of that, with slight tampering in C, the BGE > UE4

Open source is the future,

I would like to use donated add revenue, or subscription dues, or even in game item sales to “prop up” the bge.