Il est très courant d’avoir une «carte des temps». Tout type de données représentant les battements de la chanson. Il peut s'agir d'une texture, d'un fichier de données ou de tout autre élément contenant ces informations. La plupart du temps, il est créé manuellement pour créer différents rythmes et combinaisons, des versions de vitesses pour une carte audio.
Cependant, il peut être généré de manière procédurale à partir des données de fichiers audio.
Comment obtenir la vitesse pour correspondre au "point de battement"? Quand faire apparaître un objet?
Speed = Distance / Time
.
Distance =
Distance entre les points de création de GameObject et de "beat point".
Time =
La longueur audio et la carte rythmique construite devraient être suffisantes. Avec ces informations, vous pouvez analyser les données audio / carte pour prédire quand un objet doit être généré pour atteindre le point exact. Maintenant, tout dépend du moment où vous voulez faire apparaître cet objet, si vous voulez qu'il soit très rapide après le frai, alors vous le ferez plus tard avec une grande vitesse. Si vous voulez qu'il soit à une vitesse normale, il faudra du temps pour atteindre le lecteur et l'audio a besoin de temps pour jouer au bon moment.
Vous pouvez même générer une nouvelle carte avec des horodatages pour les apparitions d'objets de battement pour une carte audio particulière. Vous devez faire des prédictions à un moment donné pour être en mesure de faire correspondre le rythme, pour le style le plus populaire, je dirais, pour prévoir de when
faire apparaître l'objet pour qu'il se déplace avec certain speed
. Celles-ci peuvent être faites en runtime, ou lues à partir d'un fichier calculé précédemment, ou enregistrées dans la RAM ...
Je suppose que les jeux comme ceux-ci Osu
n'ont pas cela Distance
, ils ont juste le temps de réduire les cercles, bpm ... Les cartes sont généralement faites sur mesure. L'approche pour calculer les visuels dépend donc du style du jeu que vous créez également.
Donc, pour résumer tout, les valeurs sont interdépendantes. Cela dépend du nombre de battements que vous avez, de la distance entre le point d'apparition et le joueur, et dépend parfois des données fournies [certains jeux ont la vitesse de chaque battement et son apparence encodée dans un fichier de données créé manuellement]. Si vous le faites de manière procédurale, vous pouvez tout calculer en utilisant des données audio.