I’ve developed a heavily physics based game using Unreal Engine 4 Blueprints only. And, through working on that game, I’ve seen that applying forces to different object types(mesh, Actor, Pawn, Character) is implemented differently. It was very confusing at the beginning. So, creating a single force applying object that applies force on each interacting object regardless of it’s type was quite the task.
Considering how troublesome that task was, I see a flexible and transparent force module that would simulate all sorts of natural occurring forces- such as dynamic gravity, dynamic anti-gravity, whirlwinds…etc- and that can be stationary or attached to a Moveable Actor (similar to a weapon) could be helpful to Unreal Engine game developers who would like the power without the trouble. I’ve researched the Marketplace for such products, but could only find one similar product, which is focused mainly on simulating dynamic gravity.
Furthermore, my game that I’ve developed was completely in Blueprints, to overcome the heavy processing and slow performance issues, I relied on Nativizing the game when packaging. And, this came with it’s own set of head aches; e.g. lengthy packaging times, 4.25’s Nativization feature is basically busted. Nativizatiing a project containing Plugins had it’s own bumps too. So, to help increase performance of this product for full Blueprint projects without the need to rely on Nativizing, I would like to implement the heavy duty computations in C++, and expose it in Blueprints, which should give developers freedom of numbers as well. But, I’m still unsure about Marketplace regulations, whether it is permitted to include C++ classes to Blueprint products or not (I’ve sent an inquiry to Epic staff about it, awaiting response).
So, I am considering developing such a Blueprint product for the Marketplace. But, would like to get the community’s feedback first. I still don’t have a sample video yet, but below should describe the features that I would like to implement into this Blueprint product:
- A Blueprint product that is **easy **to use and flexible.
- Force objects that s****imulate all sorts of forces found in nature for both 3D and 2D environments; such as dynamic gravity (e.g. planet gravitation), central anti-gravity (e.g. Sonic’s looping tracks), torque force (e.g. tornadoes), resistance force (e.g. slowness of walking in mud), slippery force (icy surfaces).
- Force application can be chosen to be dependent on the distance from the center of the source.
- Force objects can be of different shapes; cylinder, cone, cube, sphere.
- **Blueprint Interface to give developers further flexibility where desired. (features will be decided along the way)
- For each interacting object type, the applicable force value can be set separately; the force value can implemented as a unified value, and make it a single force value for all object types. But, separation seem a better option for game development from experience.
- Force applying objects can be placed into any level and would** work out of the box without any additional modifications** to an already existing object regardless of their types.
- Can be** attached to other Static Actors, or Moveable Actors/Pawn/Character** to make the force areas move about, or to become attached as weapons (e.g. Luiigi’s Vacuum in Luigi’s Mansion).
- Can be migrated into any existing project, and integrated simply by adding the migrated force objects into a level, configure the force values, and it will operate seamlessly.
- Heavy computations are handled in C++ classes to avoid performance issues when dealing with increased object numbers. still undecided.
- Physics replication enabled to work in online multiplayer scenarios, still undecided.
- Target: Unreal Engine 4.25 upwards, still undecided.
Below is sample I made for a Tornado, still unpolished, but it shows how the tornado effects both meshes and the character as well.
If something is unclear (including the title or poll answers), please let me know, so I can rewrite it.
Honestly I am still unsure about the pricing.
It would be amazing to get some positive critique, feedback, and suggestions if you would want that