Chords for Composition
One thing has probably been bothering you: "Do I have to write everything in C major?" The answer is no, you do not. There is a feature called chords for composition that defines the context of your music. This is important since DirectMusic usually remembers notes as a combination of chord and scale degrees and not as actual MIDI notes the way a traditional sequencer would.
If you look at any pattern in a Style, you will see a Chord Track along the top. This defines the context of the pattern's notes. All the notes in the pattern are compared to the notes in the chord above them. If you change the chord to Gb minor, the notes will be interpreted in the context of Gb minor. You could even write in Lydian b7 and have that interpreted correctly by the DirectMusic engine.
Look at the bookmark ChordForComposition. The chord for composition for the pattern is E7#11, and the music uses the notes in that scale and chord. In this context, an A# is a natural four because A# is the fourth scale degree of the underlying scale of the chord for composition. If this pattern is played overaCmajor chord, the A# will be played as an F, since F is the natural four in C major. Play the Segment above the pattern to hear the unusual E Lydian b7 scale be converted perfectly to C major, C minor, and C Lydian b7. The last chord is the same as the chord for composition, E7#11. Naturally, the output is the same as the notes that were originally entered into the pattern with that chord.
You are not required to stick with one chord for composition. You can treat the Chords for Composition Track as a regular Chord Track and enter as many chords as you want. Whatever notes are in the pattern below the Chord Track are interpreted in the context of their corresponding chords. Check out the MultipleChordForComposition bookmark for an example. The pattern has a C major arpeggio followed by a G major arpeggio. The chords for composition are C major and G major, respectively, but the Segment that plays the pattern has only one C major chord. As a result, the G chord is played as a C major chord also.
Keep in mind that when you run-time save your files, all chords for composition information are lost, since it is only for the author's benefit. DirectMusic remembers notes in terms of functionality, not MIDI notes (in most cases; we go over the other cases later). We have had to recover lost files from the run-time version before and restore our chords for composition information. It can be scary to open your project and hear all the work you did with lots of strange harmonies played inaCmajor context.
The problem above is easy enough to address. If you right-click the Chords for Composition Track and change the Keep Constant option from MIDI Notes (M) to Functionality (F), you can enter in your original chord for composition and everything will be restored immediately. Make sure you change the setting back to MIDI Notes though. MIDI Notes can ruin a project if you accidentally change the Chords for Composition Track or pattern key, and all your music gets moved around inappropriately. If you keep the MIDI Notes setting on, the notes in the pattern will never change visibly. If you change a chord for composition, DirectMusic reevaluates the notes in the new context.
If you have Keep Functionality selected and you change a chord for composition, all the notes will move to keep the same functionality with the new chord that it had with the old chord. For instance, if youhaveaCmajor chord for composition with an E in the pattern, the note is remembered as the third. If you change the chord for composition to G major with Keep Functionality selected, the E will transpose to a B since B is third of G major. If you have MIDI Notes selected, the note will stay E, but it will now be remembered as a sixth, since E is a sixth in G.
There is a problem using Pattern Tracks, as opposed to patterns in a Style. The problem comes from the fact that the Segment's Chord Track functions as a Chords for Composition Track for the Pattern Track. This can be very confusing, since the notes will be shown on screen according to whatever chord is in the track at the time you open the Segment. If you hit Play and the Segment recomposes, the notes already displayed do not appear to change.
When you begin editing notes, remember to look at your Chord Track first. Make sure that you are thinking about that chord. If you recompose, the context will change again. It is probably better to turn off recomposing while editing a Pattern Track. Even better, put the Pattern Track in a separate secondary Segment; that way, you always know that the chords for composition will stay the same.