Thumbnail Generator 2.0 – Patch Notes


Thumbnail Generator 2.0 is here!

After taking a lot of feedback from various users I decided to put in some extra time to deliver some of the more requested features.

With this release support for 4.24 is also dropped since some of these features were too difficult to maintain for multiple versions. If you are using 4.24 (or lower) and wish to update the plugin yourself to work with your particular version feel free to contact me at mans.martin.isaksson@gmail.com

So, whats new?

Generate Thumbnail – Node Revamp

A lot of users found the old system of using interfaces to apply runtime modifications on the thumbnail actor very limiting. I have therefore revamped the node to allow for some new, more flexible, options.

Expose On Spawn Properties

The old node had no way of allowing the user to pass through custom user information to the thumbnail actor. The new node now exposes any properties tagged as “Expose On Spawn” on the actor class and allows the user to pass through their own values.

Here is an example of how you might use it:

The color value can then be used in the actor however the user pleases, here is an example where we change the color of the actor using the old interface method.

As you can see, the actor is now red!

If you are do not want to use the interface to apply custom property values, there is now a second option for you!

Pre Capture Thumbnail Callback

Sometimes you just want to call a simple function, or set a minor value, before the thumbnail is captured. In this case having to use an interface is a bit cumbersome.

In this new version there is now a second callback event (under the advanced section on the node) which allows you to access the thumbnail actor without having to fiddle with interfaces!

And there you go, custom color on the actor without using any annoying interfaces!

You can also use the Pre Capture event for more complex things, such as generating your entire actor setup at runtime.

In this example we tell the thumbnail generator to spawn a plane “Actor” and we then use the “Pre Capture” event to add two static mesh components, set the static mesh, and then modify its material. In most cases you would probably want to pass in an actor class which already has the required components, but this nicely shows what is possible with this new event.

There are a few other internal improvement that I wont go into, but with these new features you should now be able to generate much more flexible, and interesting thumbnail!

Background Worlds

This one was suprisingle complicated to implement! Unreal really does not want you to be cloning levels willy-nilly so a lot of internal fiddling was done to make the engine behave.

But the results are quite exciting, you are now able to set your own custom level to use as a background-set for the thumbnail generation!

If a background world is selected the thumbnail generation system will create a clone of this level to use as a basis for thumbnail generation. This allows you to setup custom backdrops or even completley custom lighting scenearios!

Using the ExampleBackgroundScene found in the Example Project we can observe the following results

The thumbnail framing algorithm has been adjusted to always keep the actor on the (0, 0, 0) plane. E.g. to prevent it from clipping through the floor when setting cutom background worlds.

This feature is for now tagged as experimental as it does not always play nice with the editor generation tool. If you find any buggs while using this feature please contact me at mans.martin.isaksson@gmail.com

Note: The background level can only by changed in run-time by re-initializing the entire thumbnail world using the Initialize Thumbnail World node. This has an obvious performance penalty so I would not recommend abusing this functionality.