[PLUGIN] SKELOT - Optimized Instanced SkeletalMesh Rendering

Hi fellows.
I’m developing a new plugin named SKELOT. as the name says, using this plugin you will be able to draw hundreds of thousands of skeletal meshes.

Advantages:

  • Instanced rendering. all are batched in one draw call. something like UHierarchicalInstancedStaticMeshComponent.

  • No CPU side processing for bone transformations. all animations are baked and stored on GPU. it just sends transform and index to GPU.

  • All work is done in Editor no need for extra app.

10 Likes

back with good news. :slight_smile:
I’m using this plugin in my prototype. 5000 running skeletons.
[video]Skelot-DesertMeteora.mp4 - Google Drive

Plugin Status:

  • Instances can be referenced by FSkelotInstanceHandle for gameplay purposes, something like TWeakObjectPtr

  • Frustum and Shadow Frustum Culling added.
    its all done in FPrimitiveProxy::GetDynamicMeshElements, there is no clustering yet , its just Frustum intersection with Sphere

  • Sorting instances, generating transform matrices, … now is parallel using Collector.AddTask

Demo Status:

  • integrated and optimized Chipmunk 2D physics engine for movement of characters. PhysX and Chaos couldn’t handle that much.

  • movement using ParallelFor, and quality depends on distance. (distant characters won’t get interpolated every frame)

  • terrain sampling is tiled and cached (not 5000 linecast per frame surely )

2 Likes

@UPO33 I love your work? Is the Plugin ready for download? I am currently working on an RTS. And I would like to instance my skeleton meshes who using the same mesh. I think this will work very good in combination with Animation Sharing. Can I download it somewhere or do you sell it?

Hi @UPO33 I also would like to know where to get this plugin?

@Tec @chuklov
I postponed development because I’m doing a paid project. (will continue it soon)
the plugin is 90% done and it works fine with 4.27 but needs to be ported to UE5 and its not easy since lots of rendering code has changed.

2 Likes

Great work and take your time!
But please for the love of god please dont give up on this, I have seen multiple people posting about development of instanced skeletal mesh plugins but none of them finished/shared or published any plugin or info related to it (that I know of).
You have my full support!

1 Like

@UPO33 Do all these skeletons are separate actors or they all are instances and doing the same?
I ask because I have RTS game and I need all the units to be separate actors as they all have different tasks to do.

The plugin looks pretty good and seems to be a general solution for instancing with skeletal meshes. I’m trying to figure out just how to instantiate an object, but all the websites are only showing results but not a tutorial maybe you can share some reference material to start with it

3 Likes

When will this Plug-In be made Available?, Working on a RTS and would love to try this!

I would purchase this plugin - a large number of characters is a problem for me

2 Likes

any updates ?

2 Likes

Is this plugin still in development?