/
Plug-ins | Unreal Engine

Plug-ins | Unreal Engine

Installation 

Please get in touch with our customer support team to get access to the latest version of the Unreal Engine plug-in.

For engine-wide installation: 

  1. Find the engine plugin’s marketplace folder. The full path of Unreal Engine 5.4 by default is: 
    C:\Program Files\Epic Games\UE_5.4\Engine\Plugins 

  2. Download the Twikit plugin, unzip it, and paste the resulting folder into the above Plugins folder. 

  3. You should now be able to activate the plugin using the Unreal Editor plugin manager in any project you open in the editor. 

Finish setting up the plugin with the following steps:

  1. In Edit > Project Settings, under “Default Modes”, make sure “Default GameMode” is set to TwikitGameMode. If you don’t do this then mouse interaction will not work.

  2. In the content browser, under settings (top-right of the window) check “Show Plugin Content” and “Show Engine Content” (in case of engine-wide installation)

For a per-project installation, the steps are the same, except the plugin should be added to the project Plugins folder instead of the engine Plugins folder. 

Usage 

  1. Under Plugins > Twikit Plugin C++ Classes > A_Twikit_Plugin > Public you’ll find TwikitActor. Drag this to the level. 

  2. Select the Actor (e.g. in the Outliner panel) if it’s not selected. Then in the properties panel find the “Twikit” section. Add a descriptor path and hit ENTER (or Reload Product). The descriptor should now be loaded. 

    1. To find a descriptor for a product, go to the preview page of the product. Open the browser console, in the network tab filter on “json”. You’ll see the view descriptor, it is e.g. https://cdn.twikit.com/projects/xx/products/xxxxxxxx/descriptors/xxxxxxxx.viewer.json. Right-click and copy as URL. 

    2. If you don’t see anything after the descriptor is loaded, try increasing the size of the loaded geometry, e.g. setting the Scale to e.g. 100. Do not use the UE built-in scale for this, use the scale property in the “Twikit” section, see below for more information. 

    3. The plugin prints logging info to the Output Log panel, you can check there for errors/warnings or simply more info 

  3. To see product properties, start the game (the play button at the top). Then fly to the product geometry and click on it. The properties should appear in the top-left corner. See the “Properties” section of this document for more info.

API

Twikit Actors have a (blueprint) API. The following methods are available:

  • GetParameterData

  • SetFloatParameter

  • SetBoolParameter

  • SetStringParameter

GetParameterData

Example output:

{ "params": [ { "visible": true, "enabled": true, "id": "map_picker", "type": "enum", "value": "happy", "choices": [ { "id": "happy", "name": "happy", "value": "happy", "image": "", "color": "" }, { "id": "sad", "name": "sad", "value": "sad", "image": "", "color": "" } ] }, { "visible": true, "enabled": true, "id": "color", "type": "text", "value": "0000ff" } ]

Note that GetParameterData returns all options, even ones that are configured in the product to be invisible, e.g. a text input parameter when the mode for the product is set to using an image. This choice is made to avoid confusion because of a dynamically changing option list when interfacing with an actor. The visible status of individual options can and will change when setting other actor parameters. It is up to implementations to properly handle this.

enum

enum parameters have choicesmember that lists the possible choices. id is the ID, name is a human-readable name (note that these are currently always the same). value is provided for completeness but isn’t currently used. If the option represents a color, color will contain a 6-digit hex string.image contains the URL to the option thumbnail, if available.

SetParameterData

For setting new parameter values you use one of the Set…Parameter methods. Which one depends on the type of the parameter, as seen in the above GetParameterData output. One small gotcha: for list parameters the type is enum, for setting the value you use SetStringParameter. The value is the id of the corresponding option you wish to activate.

Note the actor needs to be fully loaded to be able to interact with its parameters. If you want to query the parameter list on game start then you may need to insert a delay before fetching the list. Example blueprint that both prints the parameter data and sets color (color is the second parameter in the parameter list above) for this specific actor to 0000ff:

image-20250225-160407.png

Misc

Compatibility

We provide plugin builds for the following Unreal Engine versions:

  • 5.3.2

  • 5.4.4

A built plugin is compatible with one of the above. Using the plugin with a different UE version will result in a warning on startup, “plugin incompatible, do you want to compile…”. Compilation will not work (we don’t provide a build-from-soures plugin) and the plugin will not load.

Scaling

The TwikitActor has its own scaling property. Use this to scale the model, don’t use unreal’s built-in scaling. If you do use built-in scaling, manipulating (e.g. moving) the actor becomes slow. There is also no way back, you need to delete and recreate the actor.

The underlying reason is that the actor uses procedural meshes. We’ve disabled undo information for these meshes in the actor, as they are slow. This works with moving the actor in the level, setting a scale however reactivates the undo information. The scale parameter we provide does not have this issue i.e. it allows scaling the actor whilst keeping it fast.

Properties 

In game mode, properties (user inputs) for the selected TwikitActor are shown in the top-left corner. Only inputs that satisfy the following are shown: 

  • ExternalId must be present 

  • If there are parameter groups in the product, the property must be in a group 

  • The property must be visible 

Troubleshooting

  • I’m able to load the plugin, load actors, start a game, but the properties window isn’t showing
    There are multiple possible causes:

    • Try from a blank “architecture” or “automotive” project. The blank “game” project is known not to work, the player controller overrides the twikit player controller, preventing our actors from being selected.

    • Perhaps there are no properties, see the Properties section for the requirements.

  • When I open a project with the plugin, Unreal asks me to compile it

    • You are probably using the plugin with a version it wasn’t compiled for. Check that you are using the correct download for your version of Unreal Engine.

 

Related content