@@ -1,16 +1,17 @@ |
| 1 |
# Subpatterns |
1 |
# Subpatterns |
| 2 |
|
2 |
|
| 3 |
Subpatterns are one of hUGETracker's most powerful features. |
3 |
Subpatterns are one of hUGETracker's most powerful features. |
| 4 |
They are like mini-tracker grids attached to instruments, which allow you to modulate them quite precisely. |
4 |
They are like mini-tracker grids attached to instruments, which allow you to use effects on very precise ticks. |
| 5 |
They fulfill the same role as instrument macros in FamiTracker. |
5 |
They fulfill the same role as instrument macros in FamiTracker. |
| 6 |
|
6 |
|
| 7 |
What are subpatterns useful for? |
7 |
What are subpatterns useful for? |
| 8 |
- Percussion! (Subpatterns replace noise macros) |
8 |
- Percussion! (Subpatterns replace noise macros) |
| 9 |
- Cooler arpeggios than [effect](./effect-reference.md) `0`! |
9 |
- Cooler arpeggios than effect `0`! |
| 10 |
- Cooler vibratos than effect `4`! |
10 |
- Nicer vibratos than effect `4`! |
| 11 |
- "Pluck" sounds! (Start one octave up, then go back to base) |
11 |
- "Pluck" sounds! (Start one octave up, then go back to base) |
| 12 |
- Serves as an extra FX channel in a pinch! |
12 |
- Serves as an extra FX channel in a pinch! |
| 13 |
- Changing timbre really quickly! (Use effect `9`) |
13 |
- Changing timbre really quickly! (Use effect `9`) |
|
|
14 |
- And much more! |
| 14 |
|
15 |
|
| 15 |
**TODO: insert screenshot** |
16 |
**TODO: insert screenshot** |
| 16 |
|
17 |
|
@@ -19,14 +20,26 @@ Rows are composed of three columns, similiar *but not identical* to the tracker |
| 19 |
- an optional jump to a specific row, |
20 |
- an optional jump to a specific row, |
| 20 |
- and an effect. |
21 |
- and an effect. |
| 21 |
|
22 |
|
| 22 |
The offset is a positive number of semitones that is applied to the base note (though only for this row). |
23 |
The offset is a positive number of semitones that is applied to the base note. |
| 23 |
|
24 |
|
| 24 |
Subpatterns automatically loop back to the beginning, or can be made to jump backwards earlier via the jump column. |
25 |
Subpatterns automatically loop back to the beginning, or can be made to jump backwards earlier via the jump column. |
| 25 |
If you do not want this, you can make a row that jumps to itself. |
26 |
If you want to halt a subpattern in place and have it not loop at all, specify a jump command that jumps to itself. |
| 26 |
|
27 |
|
| 27 |
## Interaction with the "regular" tracker grid |
28 |
## Interaction with the "regular" tracker grid |
| 28 |
|
29 |
|
| 29 |
Subpatterns override effects `0`, `1`, `2`, `3` (which will instead jump directly to the target note), and `4`. |
30 |
Subpatterns take precedence over the "regular" tracker grid. That is, if there's a row on the tracker grid like so: |
|
|
31 |
|
|
|
32 |
``` |
|
|
33 |
C-5 05 101 |
|
|
34 |
``` |
|
|
35 |
|
|
|
36 |
And the first row of instrument `05`'s subpattern is: |
|
|
37 |
|
|
|
38 |
``` |
|
|
39 |
+02 ... ... |
|
|
40 |
``` |
|
|
41 |
|
|
|
42 |
Then the `+02` offset in the subpattern will override the `1xx` portamento up effect. |
| 30 |
|
43 |
|
| 31 |
## Effects |
44 |
## Effects |
| 32 |
|
45 |
|
@@ -39,7 +52,7 @@ Effects in subpatterns work just like in the regular tracker grid ([reference](. |
| 39 |
Effect | Name | Usable? | Notes |
52 |
Effect | Name | Usable? | Notes |
| 40 |
-------|-------------------|----------------------|------- |
53 |
-------|-------------------|----------------------|------- |
| 41 |
`0xy` | Arpeggio | <b class="y">Yes</b> | Technically you can use this, but 1) you would have to use it on many rows consecutively, and 2) you can just use the offset column instead. |
54 |
`0xy` | Arpeggio | <b class="y">Yes</b> | Technically you can use this, but 1) you would have to use it on many rows consecutively, and 2) you can just use the offset column instead. |
| 42 |
`1xx` | Portamento up | <b class="y">Yes</b> | The "units" are finer than semitones, so this can be used to increase granularity; it is reset on the following row, however. |
55 |
`1xx` | Portamento up | <b class="y">Yes</b> | The "units" are finer than semitones, so this can be used to increase granularity |
| 43 |
`2xx` | Portamento down | <b class="y">Yes</b> | Same as above. |
56 |
`2xx` | Portamento down | <b class="y">Yes</b> | Same as above. |
| 44 |
`3xx` | Tone portamento | <b class="n">No</b> | There is no "target note" in the first place. |
57 |
`3xx` | Tone portamento | <b class="n">No</b> | There is no "target note" in the first place. |
| 45 |
`4xy` | Vibrato | <b class="y">Yes</b> | This can give finer control than the offset column, but you will have to use this effect on many consecutive rows, and the portamento effects may work better in the first place. |
58 |
`4xy` | Vibrato | <b class="y">Yes</b> | This can give finer control than the offset column, but you will have to use this effect on many consecutive rows, and the portamento effects may work better in the first place. |