Tracker mit komplett variabler Pattern-Länge?

  • Tracker mit komplett variabler Pattern-Länge?

    Hallo zusammen,

    mache mir heute Gedanken über die Musik in meinem Spiel. Ich hätte gerne etwas, was so beschwingt und ruhig "dahinfließt" ohne beim spielen zu stören, trotzdem nicht langweilig ist, und kam auf die Idee, dass etwas im Stil einer barocken Siciliana sicher ganz nett wäre, vielleicht angereichert mit etwas mittelalterlicher Harmonik ... da muss mir natürlich erst noch was einfallen, aber ich habe damit bereits ein erstes Problem: Das läuft auf ein 9er Taktmaß hinaus!

    Ich bräuchte also Patterns der Länge 18.

    Auf meiner etwas angestaubten Debian Installation habe ich den GoatTracker 2.72. Der kann die Pattern-Länge in 2er-Potenz Schritten einstellen. Ich hatte vor längerer Zeit damit mal etwas im 5er Taktmaß gebaut indem ich immer ein Pattern der Länge 16 mit einem der Länge 4 für eine Gesamtlänge von 20 kombiniert habe, was schon recht umständlich war. Mit einer Gesamtlänge 18 wird es noch "blöder".

    Deshalb habe ich jetzt mal angefangen, den ersten Code für komplett eigene Play-Routinen zu bauen, kam jetzt aber auf die Idee, doch erst mal zu fragen bevor ich mir richtig viel unnötige Arbeit mache:

    Gibt es einen Tracker (idealerweise für Cross-Entwicklung und auf Windows und Linux verfügbar) der komplett frei einstellbare Pattern-Längen hat? (Wenn nicht wird es wohl tatsächlich der Eigenbau ...)

    Danke und Grüße!
  • also man kann doch beim Goattracker jedes Pattern auf eine beliebige Länge einstellen, indem du im Pattern ganz runter gehst und DEL oder INS Tasten drückst.

    So kannst du problemlos 36 oder 72er Patterns einstellen ....
  • Danke euch! Ich fass es nicht, das klappt auch im 2.72! Habe das nie ausprobiert und offenbar in der Hilfe übersehen .... Stellt sich noch die Frage, bau ich jetzt "just for fun" an meinem Code weiter (Lernerfahrung) oder doch zurück zum Tracker ;) Tendiere zu letzterem, weil es definitiv schneller geht -- mal sehen :)

    edit: So oder so ne nützliche Information für zukünftige "composing" Späße, ich weiche doch zu gerne vom ausgelatschten 4er-Muster ab ;)
  • Beim eigenen Tracker musst Du ggfs den ADSR-Bug umgehen. Wenn Du darüber Bescheid weißt, ist das machbar, aber ansonsten stünde Dir eine nicht zu vernachlässigende Internetrecherche bevor. Das ist zumindest meine Erfahrung :)
    ────────────────────────────────────────────────────────────
    Time of Silence - Time of Silence 2 Development Blog
    ────────────────────────────────────────────────────────────
  • Claus schrieb:

    Beim eigenen musst Du den ADSR-Bug umgehen. Wenn Du darüber Bescheid weißt, ist das machbar
    Keinerlei praktische Erfahrung damit, aber die Theorie kenne ich ;) Vielleicht mach ich jetzt doch einfach mit dem eigenen Code weiter, einfach um was zu lernen ... Wenn ich das richtig sehe sollte es reichen, mindestens 1 Frame vor dem nächsten Ton einen Wert mit gesetztem "Test"-Bit (z.b. $09 -> kein oszillator, test+gate) in das jeweilige Control-Register des Channels zu schreiben?

    edit: und rechtzeitig vorher gate off ... hmmja. Jetzt interessiert es mich doch erst recht, es selbst zu versuchen :)

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von zrs1 ()

  • Tja, habe mich jetzt tatsächlich trotzdem fürs selber coden entschieden, ist ja ne schöne Beschäftigung am verschneiten Sonntag, aber verdammt, wird das schnell groß -- und das ist jetzt die erste player version, die was hörbares tut, da sind noch nicht einmal filter oder pulsweitenmodulation implementiert ;)

    edit: Achja, "hard restart" gegen ADSR-Bug ging ja doch noch ein bisschen anders, der "Trick" beinhaltet ADSR nullen, "Test" Bit ist gar nicht nötig wenn man nicht Rauschen mit was anderem kombiniert ... ist jedenfalls implementiert, nehme an das tut auch wie es soll. Man wird sehen.

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von zrs1 ()

  • Tja, nach einem Sonntag "durchcoden" und diversen Fixes und Verbesserungen in Pausen heute steht eine brauchbare Version :)
    Orientiert sich stark an der Struktur im goattracker, kann deutlich weniger, für mich ganz praktisch war aber die Möglichkeit, mit Shadow-Registern das "rausschreiben" in den SID separat aufrufen zu können. Bestimmt an vielen Stellen nicht so effizient wie es sein könnte, aber ... es ist meins ... hihi ;)
  • Benutzer online 1

    1 Besucher