Skip to main content
Skip table of contents

Bisect Actors - Level Debugging Tool

Bisect Actors allows you to find a single actor that is causing you headache.

It uses binary search which is a useful algorithm often employed for debugging. It consists of splitting a list of potentially problematic steps in halves in order to narrow down in which half the problem exists. When repeated, it leads us straight to a single step that was causing our issue. This approach in git version control is called git bisect, and searches commits.

How to use

  1. Make sure "Bisect Actors" plugin is enabled

  2. Search for the "Bisect Actors Session" in the Place Actors tab and add it to the level

  3. In the Details panel, optionally add excluded actors to ignore

    • types

    • actors

It might be helpful to add some lights and meshes there, as you need to see something to evaluate your problem, especially if you are sure that they don’t cause problems on their own.

Some actors like world settings, level blueprint, camera root, tracked camera, and bisect session itself are ignored by default.

  1. Click the "Evaluate And Progress Bisect" button to start the session

  2. Answer the prompted questions until only one PotentiallyProblematicActor remains

Implementation

This implementation is not as strict as regular bisect, but rather randomly chooses actors to remove as the actors list is more dynamic itself. However this means you can remove actors yourself (on top of automatically removed ones) and the question answers will still be valid

For now the algorithm is:

  1. If it “is good” mark all existing as good, and return to a state with all non-good present

  2. If it “is bad” and bMarkRemovedActorsAsGoodWhenSceneIsBad is true, mark all non-existing as good

  3. Remove half randomly

  4. Repeat

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.