Bienvenue visiteur !
|
Désactiver la neige
Statistiques
Liste des membres
Contact
Mentions légales
456 connectés actuellement
30912740 visiteurs depuis l'ouverture
2376 visiteurs aujourd'hui
Partenaires
Tous nos partenaires
Devenir partenaire
|
hector15 -
posté le 31/07/2013 à 02:41:37 (6 messages postés)
| | Domaine concerné: Musiques
Logiciel utilisé: RPG Maker XP
Bonjour à tous, j'ai un petit problème dans un projet que je fait avec RPG Maker XP.
Alors je m'explique : lorsque je suis en jeu, et qu'une musique doit se lancer, il y a un lag qui freeze le jeu le temps que la musique se lance. J'ai fait plein de tests pour essayer de comprendre, et j'ai remarqué plusieurs choses. Lorsque le problème se produit pour une musique, il ne se reproduit plus par la suite pour d'autres musiques durant la session de jeu. En fait, ça se produit une fois pour les BGM et une fois pour les ME. Je ne comprends pas d'où cela vient et j'aimerai savoir si quelqu'un connaît une solution. D'ailleurs, ceci se produit avec Windows 7 mais pas sur XP.
|
Cortez -
posté le 31/07/2013 à 10:47:54 (524 messages postés)
| | Je connait ce genre de problème.
C'est un lag qui est causé par Windows 7 et Vista.
Les codec de lectures audio se chargent une fois et cela explique
le délai sur rmXP.
Tu ne peux rien y faire, à part bien sur changer de version d'exploitation. Ou de logiciel, il me semble que sur VX et VXAce
le temps est moins long...
Astuce : fait un ME vide et joue le sur la première map.
Comme ça le chargement est fait sans être visible.
Ou alors fait le jouer sur l'écran titre (besoin de modif les scripts.)
il sera alors chargé à chaque début de partie et le joueur ne le
sentira pas.
|
Dyeel -
posté le 31/07/2013 à 10:49:37 (200 messages postés)
| | Salut.
Si je me trompe pas ça vient de la mise en cache des musiques. En fait lorsque tu demandes de jouer une musique, le logiciel va en même temps la "mettre de côté" pour pouvoir la rejouer plus tard sans avoir à la charger de nouveau (c'est charger la musique qui prend du temps). RM a ce problème et je crois qu'on peut rien y faire.
Par contre je pensais que toutes les musiques se mettaient en cache avant de montrer l'écran titre...
Edit : Doublé...
|
hector15 -
posté le 31/07/2013 à 12:37:40 (6 messages postés)
| | Mer ci pour vos explications
Cortez a dit:
Fait un ME vide et joue le sur la première map
Comme ça le chargement est fait sans être visible.
|
C'est ce que j'avais fait, et ça marchais bien. Mais quand le joueur quitte le jeu et recommence à sa sauvegarde, les musiques se remettent en cache et donc ça relag.
L'idée de mettre le chargement sur l'écran titre permettrait de corriger le problème pour toutes les sessions de jeu, mais je ne vois pas comment faire (on ne peux pas mettre plusieurs musiques et je m'y connait pas trop sur le script).
|
² -
posté le 31/07/2013 à 13:01:28 (7291 messages postés)
| Hibernatus. | Quel format de musique ?
j'ai souvenance qu'avec des OGG au lancement bien placé, la musique n'est chargée qu'une seule fois au début et boucle bien mieux que les autres formats. D'où l'intérêt de bien placer le lancement du morceau dans les événements/transitions pour le cacher le plus possible.
VX dispose d'un atout supplémentaire sur ce format si on sait programmer un lead-in, une petite intro incluse dans le morceau. Il va le lire puis boucler le morceau uniquement à partir du point précisé dans la programmation. Un bidule comme audacity devrait être capable et on trouve sûrement des tutos en cherchant sur la Toile.
Il est aussi évident que des morceaux trop longs, ça va forcément se remarquer.
|
Ko!N |
hector15 -
posté le 31/07/2013 à 13:08:42 (6 messages postés)
| | ² a dit:
Le chargement se fait pour les fichiers midi des BGM et des ME (une fois pour les BGM et une fois pour les ME). Il y a aussi un chargement pour les mp3 des BGM, mais ça charge plus vite et le jeu ne lag donc pas comme pour les midis.
|
Cortez -
posté le 31/07/2013 à 15:15:28 (524 messages postés)
| | Pour jouer un ME vide sur l'écran de titre :
Va sur le script "scene title" ou sur ton scene title custom.
Cherche les lignes :
1
2
3
4
5
| # Play title BGM
$game_system.bgm_play($data_system.title_bgm)
# Stop playing ME and BGS
Audio.me_stop
Audio.bgs_stop |
et ajoute en dessous de
1
| $game_system.bgm_play($data_system.title_bgm) |
la ligne suivante :
1
| $game_system.me_play("Nom du fichier") |
Le fichier sera lu puis arrêté avec la comande Audio.me stop
qui se trouve juste en dessous.
|
hector15 -
posté le 31/07/2013 à 17:10:29 (6 messages postés)
| | Merci, je vais essayer ça.
EDIT : j'ai testé et ça me met une erreur au démarrage. Je n'y connait rien et je ne sais pas quoi faire.
|
Dyeel -
posté le 01/08/2013 à 00:15:59 (200 messages postés)
| | Poste ton message d'erreur alors^^
Sans ça on peut rien faire.
|
Cortez -
posté le 01/08/2013 à 11:06:40 (524 messages postés)
| | Je suis sur que c'est le nom du fichier qui crée l'erreur.
Il me manque la syntaxe correcte pour les musiques.
Je suppose que c'est :
$game_system.me_play("Nom du fichier",volume, tempo)
Et si c'est pas correct, qu'un scripteur passe me filler un coup de
main.
(summon -> Zeus81)
|
hector15 -
posté le 01/08/2013 à 13:10:23 (6 messages postés)
| | Dyeel a dit: Poste ton message d'erreur alors^^ |
Ah oui, où avais-je la tête ^^
Le message d'erreur est :
Citation: Script 'Game_System' line 117: NoMethodError occured
undefined method 'name' for "001-Victory01":String |
Après être allé voir dans le script où ça avait foiré, j'ai réessayé avec la ligne de code :
1
| $game_system.me_play("Audio/ME/001-Victory01", 0, 100) |
J'ai mis le chemin d'accès du fichier et les arguments pour le volume et le tempo. J'avais déjà fait ça plus tôt dans le jeu et ça marchait. Pourtant, j'ai encore un message d'erreur :
Citation: Script 'Scene_Title' line 62: ArgumentError occured.
wrong number of arguments(3 for 1) |
|
Dyeel -
posté le 01/08/2013 à 13:35:01 (200 messages postés)
| | Oui en fait j'avais pas fait attention mais les codes de Cortez ne peuvent pas marcher.
Ces commandes ont besoin d'un argument de type son, il ne suffit pas de mettre le nom du fichier.
Bref, hector15, remplace $game_system par Audio, ça va marcher normalement. Mais t'entendras rien vu que ce qui est à zéro est le volume dans ta ligne de code.
|
Cortez -
posté le 01/08/2013 à 14:03:47 (524 messages postés)
| | En effet c'est pas $game_system puisque le son n'est pas
defini dans la base de donnée.
Donc :
Audio.me_play("001-Victory01", 0, 100)
|
Dyeel -
posté le 01/08/2013 à 14:25:40 (200 messages postés)
| | Voilà. Sauf que j'ai testé vite fait plusieurs trucs mais ça change rien au temps d'attente.
Puis je pense que depuis le temps, s'il y avait eu une solution, d'autres l'auraient trouvée avant...
|
hector15 -
posté le 01/08/2013 à 14:55:20 (6 messages postés)
| | Merci, ça marche très bien
|
Index du forum > Entraide > [RESOLU] [RPG Maker XP] Problème chargement musiques
|
|
|