Description

The debug drawing for ASmartObjectSubsystemRenderingActor is always enabled during PIE or non-shipping game builds. This leads to a blue debug box being drawn at all slot locations for every SmartObject. While this can be useful, it is not desired to have visible at all times.

Currently, there is no way for a user to toggle the drawing on/off for debug purposes. It is always enabled by 

#if UE_ENABLE_DEBUG_DRAWING

and uses ViewFlagName set to Game.

Steps to Reproduce
  1. Enable SmartObjects plugin
  2. Add a Generic Smart Object to a level
  3. Create a new Smart Object Definition BP.
  4. Add a slot to the new Smart Object Definition BP.
  5. Add a default behavior definition and set it to use Gameplay Behavior Smart Object Behavior Definition
  6. Set the Gameplay Behavior Config to Gameplay Behavior Config
  7. Set the Behavior Class to GameplayBehavior_AnimationBased
  8. Save the Smart Object definition and make sure the Generic Smart Object has this definition set.
  9. PIE

Expected Result: Nothing is drawn for the SmartObject's slot in the level unless I enable some form of debugging such as the Gameplay Debugger's SmartObject category.

Actual Result: A blue debug box is drawn where the SmartObject's slot is. There is no way to toggle the debug drawing off in PIE or a non-shipping game build.

Have Comments or More Details?

There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-171598 in the post.

1
Login to Vote

Fixed
ComponentUE - AI - SmartObject
Affects Versions5.1
Target Fix5.2
Fix Commit23430985
Main Commit23430985
CreatedDec 1, 2022
ResolvedDec 7, 2022
UpdatedFeb 4, 2023