Industrial Applications of BGE

Even though this isn’t a “game” per say, I thought someone might find it interesting.

So without going into too much detail, in my day job, I deal with large, heavy duty turbo-machinery and their manufacture.

One requirement for an impeller (like on a fan) to run well is to have it well balanced. For large machinery, this can be done in two parts; First a “static balance,” then a “dynamic balance.”

Large turbo-machinery will generally be balanced to both standards. Either in house or on site during installation. If a rotating assembly is statically balanced well, then it makes the dynamic balance much easier to do. And long story short, that makes my life easier.

The large impellers we make have removable blades, so they can be replaced periodically as they get worn out, without having to tear everything apart to exchange a whole impeller assembly. Due to the casting process, each blade weighs a little bit different. So to ensure that the impeller is as naturally balanced as possible, we want to distribute the blades so that they don’t create a heavy spot on the impeller; we want it to have a good static balance. So for example, we might not want all the heaviest blades on one side of the hub, as that would create imbalance.

So what we would do is write down all the blades and their weights, then type that into an Excel spreadsheet that would calculate the center of gravity of the proposed distribution. If it was not in tolerance, you swap two blade positions, and see if that makes it better or worse.

Repeat ad nauseum.

It would take several hours to get within tolerance sometimes. So I decided to fix that.

This is a task perfectly fitted for a computer, so I created a little program to help me out. I have BGE on a flash drive, so I used it to program this over a few lunch breaks at work. Basically it loops through every blade in every position, and finds the first solution that falls within the specified tolerance.

Behold! The blade positioning program (or “evenly distributing weights around a circle program”).

Now I can just type in the blade count, their weights, and my allowable tolerance for the center of gravity, and a few seconds later I have my final blade positions! Plus, it can obtain balances 100x better than I can by hand.

Work smarter, not harder.

I might create a YouTube video showing it’s functionality, and possibly a download if anyone is interested. (It can be used to balance any weighted objects in a circle, not just fan blades) (I also have to check the legality of that, who owns what, proprietary information and all blah blah)


Amazing! Would love to see a video on this. Great stuff

1 Like

Ah, yes. This is why we have computers.

1 Like

Might be better if the project was somehow converted to WebGL, but in any case, excellent work Shogun_Lloyd.

1 Like

Don’t tell your boss, he may give you more work…

1 Like

I suffer a lot from those excel sheets to dynamically balance the propellers. An app like yours would be much welcome, hehehehe

1 Like

Haha, yeah for sure!

Someone made a bio-something or other tool in BGE a while back. I would love to see more non-game uses of BGE… it has always seemed to me that the game engine was a means to something much cooler, a more general purpose 3d-stuff app builder.

I tried to create my life-long dream of a 3D warehouse management program.

Lost interest though.

did you get any of it done? it be curious even about what little you might have done

Here is a building grid modeling system in upbge, it can also make roads.

Here is my world streaming system, I bet you could use real height maps, GPS and make your own Google maps?

About the warehouse software,
It is basically the same as a level editor,
Blender itself is very good at that,

However I have been able to replicate many of its mechanics (orbit / pan / grab etc) I can even rotate things relative to camera.

What makes this actually a good idea though, is openXR is do to merge before blender 3.0 lands.

“did you get any of it done?”

Sadly, no.

The idea was inspired by a contract software gig. We were modifying conveyer/sorter software to handle a second “set of commands” for the returned merchandise department.

The “new” returns were staged on shelves, until there was enough of it to “switch the system over”.

I thought 3D would be a “cool” way to show the managers how much stuff they had and where it was.

Oh well.

I also have a game idea that uses the actions of first person shooters to buy and sell stocks. But they would not be aware that their actions were causing it. :upside_down_face:

lol… thats kind of twisted but also interesting… if there was a way to tie visual qualities to a handful of a key indicators and to aggregate them into a single representative object as a “target”… you’d have a bunch of targets with some sort of shifting appearance which dictates when youd want to take them out…

I wonder what your idea for that is? As far as what I just said, I’d be super interested in say like, downloading some spreadsheets of indicators for a sample of stocks on like, the shortest timeframe available, less than second-to-second if available so that the data is active on the time frame of twitch shooters… download this data for like, 30 minutes or so of a particularly volatile date and time, hand the game to some good players, and see how they performed when converted back into buy-sell signals or something lol, especially compared to a machine algorithm making near-optimum moves.

Yep. Sounds like you understand my idea.

Fast-rising and fast-falling stocks would be prime targets.

You could even reward the players with money, without ever explaining where the money came from.

I always figured that a “live” or “near-live” feed of data would be quite expensive.

“Super”? In what way? Intellectually or monetarily?