Page 1 sur 1

La traduction des vidéos

Posté : dim. 17 août 2008, 20:48
par Dark Magus
Salutations ^^

A l'approche de la sortie du 3ème patch, qui traduira 25 % du jeu, je vais un peu blablater sur la traduction des vidéos.

En effet, quelques vidéos du jeu ont des dialogues, que nous ne pouvions évidemment pas remplacer par des voix françaises (:lol:). Nous avons donc opté pour le sous-titrage.

Il n'a pas été facile de le mettre en oeuvre. En effet, le jeu ne prends pas en compte les filtres du genre DirectVobSub ou VSFilter. Nous aurions pu nous contenter d'encoder les sous-titres en dur dans les vidéos, mais cela se serait fait avec une certaine perte de qualité des vidéos (déjà que cette qualité est très faible...), et aurait forcé les joueurs à télécharger un patch de quelques 130 Mo.

Après un petit tour sur les forums de Bessab, où j'ai posé le problème, on m'a suggéré de créer une DLL et de détourner quelques fonctions du jeu, ce qui permet d'avoir énormément de contrôle sur le jeu, et ainsi, de pouvoir afficher des sous-titres. C'est cette solution que j'ai choisi de mettre en oeuvre. Premièrement, parce que c'est cool (je n'avais jamais utilisé cette technique appelée "Injection statique de DLL", et pour dire, c'était vraiment intéressant à réaliser). Deuxièmement, parce que du point de vue du joueur, elle n'a aucun inconvénient. Pas de gros patch à télécharger, pas de codecs foireux. Une simple DLL inclue dans le patch.

Ca m'a pris trois semaine de boulot intense (pendant lesquelles je n'ai pas pu m'occuper de traduction/relecture des textes), mais ça valait le coup.

Je vous poste ici un screen en guise d'exemple (remarquez que les sous-titres sont affichés dans la bande noire en dessous de la vidéo, en fait le jeu laisse cet espace vide, alors je m'en suis servi ^^)

A très bientôt pour le patch n°3 !

Posté : lun. 18 août 2008, 20:38
par tidus9503
Cool super nouvelle! Bravo a toi Dark Magus.^^

Posté : mar. 19 août 2008, 00:01
par Dark Magus
Eh, merci ^^

Ah au fait, je précise aussi que j'ai réussi à "activer" le filtrage des vidéos.

En effet, vous vous êtes sans doute rendus compte que, lorsque le jeu affiche une vidéo, il réalise un étirement (stretching), et que cet étirement se fait sans filtrage (donc, gros carrés au rendez-vous).

En explorant le code désassemblé du jeu pour réaliser ma DLL de sous-titrage, je me suis rendu compte que la surface utilisée pour afficher la vidéo est créée en mémoire locale (système), et non en mémoire vidéo. En DirectDraw, les opérations d'étirement effectuées depuis la mémoire système ne sont pas filtrées.

Je me suis donc contenté de faire une modification à la création de cette surface, pour qu'elle soit créée en mémoire vidéo, ce qui permet à la carte graphique de réaliser le filtrage. Le résultat est flagrant sur la vidéo du logo Ubi (voir screenshot).

Bien sûr, pour que le filtrage fonctionne, il faut que la carte graphique supporte cette fonctionnalité, ce qui je pense est le cas pour toutes les cartes graphiques depuis déjà plusieurs années. Par ailleurs, cela nécessite 150 Ko de mémoire vidéo de plus pour créer la surface, ce qui n'est pas non plus un problème, de nos jours (pour dire, ça marche sur mon ancien PC avec une TNT2 M64 / 32 Mo de mémoire vidéo, qui date de 99).

Posté : mar. 19 août 2008, 14:55
par tidus9503
Trés impréssionant! Maintenant sa se raproche de la version Dreamcast!
Tu compte intégré cette nouveauté dans le patch 3?

Posté : mar. 19 août 2008, 19:02
par Dark Magus
Oui, cela sera intégré au patch 3, car c'est plus ou moins lié à mes sous-titres, donc autant faire d'une pierre deux coups ^^

Posté : mar. 19 août 2008, 20:09
par tidus9503
cool merci ^^

Posté : jeu. 21 août 2008, 11:11
par doppiapunta
Very very impressive my friend.
I can't wait to test by myself the new subtitling engine :)
Great work..as usual :)
C U soon and have anice time :)

Posté : jeu. 21 août 2008, 17:00
par Dark Magus
Yo ^^
It's been a while !
When are you going back home so we can talk about all this on MSN ? You'll be impressed by the improvements that were made during your absence.
(BTW, I did not receive your postcard yet...)

Posté : jeu. 21 août 2008, 20:03
par doppiapunta
Hi Magus
actually i'm at my parents' home.
I'll beback to home near Milan in the last days of august.
however we can speak easily on MSn even if i'm not in Milan.
Let me know when i can meet you on MSn and i'll be online.
The postcard is on the way ;)
Bye Bye my friend..congratulations for everything.
Bye Bye

Posté : dim. 24 août 2008, 15:05
par cloud
Ah ouais sa à l'air bien mieux comme ça, t'assures magus 8)
Vivement le 3eme patch alors, même si je n'ai pas vraiment touché au second pour cause de bug, mais je vais attendre la sortie du 3eme patch pour essayer trouver une solution, sa me fera plus bon temps à passer avec le jeu :lol:

PS: La police est vraiment pas mal.