Skip to content

Using the Cognitive3D SDK for Unreal

Welcome! This page will help you quickly implement Cognitive3D Analytics into your Unreal Engine project. Once implemented, our SDK and dashboards will provide analytics and insights about your participants' behavior in VR and AR. In addition, Cognitive3D empowers you to take actions that will improve participants' engagement with your experience.

This plugin requires Unreal version 4.26.2 or newer. Make sure you use the correct SDK for your version of Unreal.


Step 1: Sign up

You can get started for free at cognitive3d.com.

Step 2: Download the SDK

Our plugin is available on our Github Release page for each major engine release.

Step 3: Import the SDK

Extract the plugin into your project directory. Rename the plugin folder to "Plugins".

Unreal Plugins

Your Unreal project must be a C++ project to use plugins. To convert a Blueprint Project to a C++ project, see Converting a project

root

Step 4: Project Setup

From the Cognitive3D Menu, choose Open Full Project Setup.

Authentication

The first section prompts you to enter your Developer API Key from the Cognitive3D Dashboard. It is used for several editor tasks, such as scene upload. For security reasons, you should not include the c3dlocal/Cognitive3DKeys.ini file in your source control.

You can create or retrieve your Developer Key from the Cognitive3D dashboard page for the project you're working on. Go to the "Gear" icon and select "Manage Developer Key" to bring up the dialog to create or copy your Developer Key.

Developer key access

Press 'Validate Developer Key' - this will retrieve the Application Key. The Application Key is used to record session data from your application to the Cognitive3D platform.

Auth Section

Player Inputs

The position and orientation of the player camera, controllers, and hands are recorded automatically.

If your project uses the Enhanced Input system, the inputs are tracked automatically. If your project uses the legacy Unreal Engine input system, you will be prompted to append our C3D inputs to the project's DefaultInput.ini file.

Player Section

Scene Export

This section displays the scenes where the participants are recorded. By exporting scenes, you gain context about how your users interact in their environments.

Set a temporary export directory, which will be used by our SDK to export and upload selected levels to our dashboard.

In the level list, you will see all the levels in your project. If they are tracked by Cognitive3D, you will see a unique SceneId as well. Select any levels you want to upload here - you'll be prompted to upload the levels later.

Two options are available:

  • Compress Textures - reduces the maximum resolution of your exported textures. This does not effect your source files - only the temporarily exported copies. We strongly recommend compressing your textures to enhance performance of session playback on the Cognitive3D platform.
  • Upload Dynamic Objects - exports and uploads Dynamic Object Meshes found in your levels

Scene Section

Third Party SDKs

We include additional support for common third party SDK features. This includes hardware-specific features like eye tracking, and deeper integrations with features like Meta's Passthrough.

You can review notable features for each SDK in the tooltip.

Make sure you have the appropriate plugins installed in your project!

Third party SDK Section

Finalize setup and restart editor

Finalizing the setup will perform steps to:

  • Export and upload selected Unreal levels
  • Export and upload Dynamic Objects (if the toggle is selected)
  • Recompile the plugin to enable any third-party SDKS

Recompiling can take a few minutes but should only occur when changing third party SDKs.

Step 5: Feature Builder (Optional)

The Feature Builder provides code samples and common buttons for setting up advanced features. See the Feature Builder page for details.

Done

Press Play in the Editor and you will see a new session on the Dashboard. (Be sure to toggle on Editor Mode in the tag selector on the dashboard; editor sessions are hidden by default if any in-device sessions exist for your project.)

intercom If you have a question or any feedback about our documentation please use the Intercom button (purple circle) in the lower right corner of any web page or join our Discord.