Home

2024

Worklog

LETSGO Game

Flatten Composer Data

Date
October 13, 2024
Hours
3
Tags
UnrealCodeC++LETSGO

In an attempt to reduce the logical complexity of the Composer, this change flattens the FInstrumentScheduleData and FMusicalStrategy objects. The interaction between ScheduleData and MusicalStrategy were unclear to me. By flattening them, I hope to reduce the overall complexity of the data objects being managed, and have a clearer idea of exactly what data objects are strictly needed. As part of this, I've also started using Shared Pointers for USTRUCTs more. The thought being that a reference to an object is probably better to use than a copy of the object. This surprisingly worked without issue.

I may need to reintroduce Strategy Data, but the complexity of a ComposerData holding a set of InstrumentData, which holds a set of MusicalStrategies was bonkers. Now ComposerData is the king.