Logicielsmoto.com

Nous sommes le 28 Mar 2024, 22:42

Heures au format UTC + 1 heure




Poster un nouveau sujet Répondre au sujet  [ 9 messages ] 
Auteur Message
MessagePosté: 29 Nov 2014, 14:43 
Hors ligne

Inscription: 21 Aoû 2006, 09:06
Messages: 1802
Localisation: Brest
Je suis tombé sur cette video d'une démo ZX spectrum: https://www.youtube.com/watch?v=3ojmfIUdp6k

Je trouve ca super! Ils arrivent vraiment à faire des chose sympa avec leur 8(16) malheureuses couleurs sur cette machine. Perso je ne me sens pas à la hauteur pour réaliser des synchros musique/video aussi bien fichues à la main (pas assez de patience). Je suppose qu'ils ont un algo pour décider des transitions entre deux effets, mais lequel. Quelqu'un a t'il une idée de comment ils réalisent la synchro son/image ?

_________________
Good morning, that's a nice Tnetennba


Haut
 Profil  
Répondre en citant le message  
MessagePosté: 29 Nov 2014, 22:23 
Hors ligne

Inscription: 27 Juin 2006, 19:44
Messages: 1061
Localisation: France (24)
S'il mettent la musique en interruption, un compteur de passage dans l'interruption leur permet probablement de savoir quand changer de séquence...

_________________
Marche a suivre pour s'inscrire sur ce forum
Do not forget to contact one of the administrators to validate your registration.
Le site des démos de Puls
L'émulateur Teo


Haut
 Profil  
Répondre en citant le message  
MessagePosté: 29 Nov 2014, 22:42 
Hors ligne

Inscription: 21 Aoû 2006, 09:06
Messages: 1802
Localisation: Brest
Sans doute.. mais si c'est le cas, quel boulot de synchroniser tous ces changements par rapport à la musique (parce qu'il y a un sacré nombre de changements). Là on est pas tellement dans l'optimisation du code, mais dans l'art de savoir quand faire un changement et par quoi remplacer. De l'art, vraiment.

_________________
Good morning, that's a nice Tnetennba


Haut
 Profil  
Répondre en citant le message  
MessagePosté: 29 Nov 2014, 23:15 
Hors ligne

Inscription: 27 Juin 2006, 19:44
Messages: 1061
Localisation: France (24)
Ce que je ferais, pour ma part, c'est une table avec des couples compteur/vecteur, où le compteur donnerait la durée et le vecteur la routine à exécuter. Et éventuellement des paramètres en plus, puisque certaines séquences semblent varier légèrement tout en utilisant le même processus d'affichage (kaléidoscopique, le plus souvent).
C'est sur la table qu'il y a le plus gros travail, c'est sûr :)

_________________
Marche a suivre pour s'inscrire sur ce forum
Do not forget to contact one of the administrators to validate your registration.
Le site des démos de Puls
L'émulateur Teo


Haut
 Profil  
Répondre en citant le message  
MessagePosté: 30 Nov 2014, 00:24 
Hors ligne

Inscription: 21 Aoû 2006, 09:06
Messages: 1802
Localisation: Brest
J'ai questionné l'auteur (http://www.pouet.net/prod.php?which=64432). Il m'a répondu qu'il utilise a la fois un filtre passe-bas pour certains effets (le diamètre de la boule au début), et pour les animation de structure (changement de palette, battements animés, effets) c'est un script écrit à la main. Donc oui il y a une sorte de table de codage qui dit à l'instant t, faire tel animation.

C'est vachement fortiche de trouver, et coder dans le script quel effet mettre à chaque instant. Ca m'épate, surtout de ce que j'ai compris l'auteur n'est pas musicien, il a repris la musique d'un autre (avec son accord).

_________________
Good morning, that's a nice Tnetennba


Haut
 Profil  
Répondre en citant le message  
MessagePosté: 01 Déc 2014, 08:13 
Hors ligne

Inscription: 24 Juil 2010, 16:08
Messages: 454
Localisation: France
Certains tracker pour composer de la musique (je pense à Starkos et Arkos Tracker sur CPC) permettent également de placer des points de synchronisation dans une piste spéciale. Le player retourne dans un registre l'ID du point qui vient d'être joué. On peut utiliser ce système pour synchroniser les effets avec la musique sans avoir à compter des cycles et des frames.

Sinon, je pense que c'est sur C64 qu'on trouve les choses les plus avancées, par exemple il y a Spindle: http://linusakesson.net/software/spindle/index.php
Celui-ci intègre le chargement des données depuis la disquette pendant l'exécution de la démo, et est capable de calculer combien de temps il faut pour charger chaque morceau. Ce qui permet d'ajuster chaque effet pour qu'il dure assez longtemps pour charger le suivant. Il prend aussi en compte des contraintes de map mémoire (sur C64 il n'y a que 64K de RAM et il ne faut pas que le chargement de l'effet suivant écrase l'effet courant).

C'est sans doute pas mal de travail mais si on s'y prend bien ce genre de code est réutilisable pour plusieurs démos, c'est donc un investissement à long terme :)


Haut
 Profil  
Répondre en citant le message  
MessagePosté: 16 Nov 2015, 21:28 
Hors ligne

Inscription: 21 Aoû 2006, 09:06
Messages: 1802
Localisation: Brest
Punaise diVer a recommencé sur Spectrum. Toujours pas besoin de zillions de couleurs, mais à présent pas besoin d'asm non plus. Tout est en basic ce coup-ci!

https://youtu.be/5rBkyzWN4Hw (http://www.pouet.net/prod.php?which=66595)

_________________
Good morning, that's a nice Tnetennba


Haut
 Profil  
Répondre en citant le message  
MessagePosté: 16 Nov 2015, 22:13 
Hors ligne

Inscription: 27 Juin 2006, 19:44
Messages: 1061
Localisation: France (24)
À peine possible sur Thomson.
Sa démo en Basic sur ZX ressemble trop à une démo en Assembleur sur Thomson.
Tu penses qu'ils ont dû optimiser l'interpréteur, ou c'est du pur jus ?

_________________
Marche a suivre pour s'inscrire sur ce forum
Do not forget to contact one of the administrators to validate your registration.
Le site des démos de Puls
L'émulateur Teo


Haut
 Profil  
Répondre en citant le message  
MessagePosté: 16 Nov 2015, 22:51 
Hors ligne

Inscription: 21 Aoû 2006, 09:06
Messages: 1802
Localisation: Brest
Je ne sais pas trop. J'ai ouvert le fichier TAP (équivalent de notre K7) dans un éditeur hexa. Évidement tout est tokenisé, illisible. Mais on reconnait les strings et quelques formules "basic" type x=w+w+w-1 ou même
Code:
FOR q=251 TO 254: POKE 23681,88: POKE 23607,q: LPRINT f$: POKE 23681,89: LPRINT f$: POKE 23681,90: LPRINT f$: NEXT q

J'ai un peu le sentiment que c'est du basic "pur jus" quand même, et qu'ils ont utilisés un max d'astuces.

[EDIT] J'ai installé un émulateur (speccy), et après m'être habitué à leur clavier tout pourri où une touche encode 4 instructions, j'ai fini par stopper le chargement en plein milieu et afficher le listing basic. Et bien je confirme: c'est bel et bien du basic avec pas mal de pokes, mais basic tout de même.

_________________
Good morning, that's a nice Tnetennba


Haut
 Profil  
Répondre en citant le message  
Afficher les messages postés depuis:  Trier par  
Poster un nouveau sujet Répondre au sujet  [ 9 messages ] 

Heures au format UTC + 1 heure


Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 11 invités


Vous ne pouvez pas poster de nouveaux sujets
Vous ne pouvez pas répondre aux sujets
Vous ne pouvez pas éditer vos messages
Vous ne pouvez pas supprimer vos messages
Vous ne pouvez pas joindre des fichiers

Rechercher:
Aller à:  
cron
Développé par phpBB® Forum Software © phpBB Group
Traduction par phpBB-fr.com