Introduction:
While continuing implementation of enemy awareness and distractions I ran into some bugs and performance issues in the Unreal Engine level editor.
Enemy Awareness and Rock Distractions:
Picking up from the previous tutorial lesson I added another enemy, but configured this one to react to hearing. Technically I disabled vision/chasing, so this was more for practice than gameplay since you could just walk right by this new enemy NPC and they’d never see or chase you. Regardless, throwing a rock does distract this new enemy and while he investigates the noise the player can safely run past.
Bugs and Performance Issues:
I encountered a couple of odd bugs and performance issues. It seems the moment I duplicated my enemy metahuman the level editing performance was hit extremely hard. I could still manipulate other objects and megascans in the level via the editor, but trying to manipulate the new (3rd) metahuman in the level took several seconds for the editor to respond for each tiny mouse movement. Removing the 3rd enemy/metahuman didn’t bring back good performance, unfortunately.
However, I did manage to fix a performance issue I’ve had since near the beginning of this tutorial. While trying to fix the new problem I changed the LOD of the player character to a value of 4 (down from the default 8). In doing so, all the stuttering experienced while actually playing the game was gone. The performance issues in the editor still remained, however.
I then forced the LOD for the player character to a value of 1 and did the same for the enemies. This drastically reduced the performance problems in the editor, but didn’t remove them entirely. For the moment it’s something I can live with, but am still disappointed with the issues with metahumans. Worth noting, changing the Engine Scalability Settings in the editor to low, high, or anything made zero difference in performance. It definitely feels like something specific to the metahumans.
I also fixed another bug that I didn’t even know I had introduced. The webs that previously burned away when the torch touched them were suddenly not completely removing themselves. I ended up deleting the plane object which seemed to continue to exist even after being burned away. Everything appears to be working as intended once again.
Conclusion:
I was hoping to get more done, but these weird performance issues and bugs sometimes get in the way of progress. Bugs are a totally normal thing in software development, so I’ll continue to problem solve to my best ability.