• Pour avoir accès au forum les nouveaux membres inscrits doivent obligatoirement se présenter et attendre que leur présentation soit approuvée par un membre du Staff.
  • Vous n'arrivez pas a publier ou a télécharger ! Merci de lire le Réglement
  • Spécialiste Electronique auto a Paris.

    Specialiste Auto vous proposes avec une Garantie a vie !!!! Suppression FAP ( DEFAP ) Suppression ADBLUE Reparation Calculateur Reparation EZS ELV Reprogrammation Adaptation Boite de vitesse Systeme hybrid Boitier module OCCASSION / NEUF Désactivation Volets de tubulures d'admission ...

    Plus d'information Clique ici

    Contacter nous au 0754373786

    Envoi Possible de Toute la France si vous étes pas de Paris

Discussion [PS4/PC/PSP/Switch] Super Mario 64, le portage progresse

scorpionoir1982

Administrateur
Membre du personnel
Super-Administrateur
Inscrit
22 Janvier 2016
Messages
1,360
Reaction score
731
Points
2,658
Bonjour les amis,


FIFA 19
Depuis le leak du code source, non pas depuis le récent Hack ayant abouti aux fuites de codes sources de jeux et consoles de Nintendo, mais d'une équipe sur Discord ayant longuement travaillé à la décompilation du jeu pour un portage en C, une autre équipe a repris ce dernier pour faire

Les binaires (exécutables précompilés) ne peuvent pas être légalement distribué, mais le code source du jeu l'est, lui le peut.

Le portage du jeu a grandement avancé, on retrouve enfin un support stable de WebGL pour lancer le jeu depuis un navigateur Web, il est également possible de compiler le jeu pour Raspberry Pi, Switch ( bientôt public) et ce dernier pourra également être lancé sur PS4 sous Linux. (Il se murmure qu'une version PSP, serait dans les clous, et que potentiellement, il serait aussi possible de faire un portage PSvita avec un wrapper OpenGL.)

Le support de DirectX 12 est en passe d'être abandonné visiblement, au profit d'OpenGL uniquement, pouvant être utilisé et porté partout, sachant que le jeu n'est vraiment pas gourmand. Vulkan n'est pas prévu pour le moment, le support de cette API dépendant essentiellement d'un projet tiers.

Progressivement, des options ont été rajoutées, pour augmenter la visibilité de la distance des objets (plus de clipping), sauter l'introduction du jeu lors du lancement d'une nouvelle partie, ainsi que le réglage du volume, quitter le jeu, et le support des cheats !




Bonne nouvelle et pas des moindre de récents apports ont permis aux moddeurs de pouvoir enfin utiliser nativement des textures hautes-résolution, ou, au contraire de désactiver les filtres natifs du jeu afin d'en profiter avec un côté pixel arts. Certains bugs de l'époque ont même été corrigé, comme la texture de la fumée qui n'était pas programmée correctement à l'origine, et afficher une texture corrompue, alors que ladite texture était bien présente dans le jeu.
D'autres se sont carrément lancés dans des tâches plus complexes, un contributeur a réussi à reprendre un modèle de Mario de Super Mario Galaxy et l'intégrer dans Super Mario 64 avec succès, les outils pour pouvoir appliquer ça manuellement à tous les modèles du jeu est en cours, mais il a annoncé que pour sa part, il aura besoin de toutes les contributions possibles pour améliorer chaque objet/personnage du jeu.

Le support des gamepads est le même que SDL, dans la pratique, il accepte et configure de base tous les pads respectant le standard "Xinput", la Dualshock 4 de Sony fonctionne par exemple à merveille en USB et Bluetooth sous Linux.

Le support du multilingue avance lui aussi grandement, bien que la version européenne du jeu ne soit pas encore fonctionnelle (des problèmes d'affichage des polices et l'absence de son), il devrait être possible de bénéficier de la traduction française sur les versions US et JP. D'autres traductions, comme l'Espagnol, sont également en cours.

Dans tous les cas, vous devrez récupérer par vos propres moyens la bonne version us de la rom Super Mario 64 pour émulateurs Nintendo 64, au format Z64, sachez que vous n'avez légalement le droit d'en disposer qui si vous avez le jeu original en votre possession.
Le code source dépend des textures, des fichiers d'animation et modèles 3D, ainsi que les banques de sons et fichiers de séquençages du jeu original et quelques parties en assembleur, c'est pourquoi l'exécutable prêt à l'emploi ne peut pas être distribué. Et c'est également pourquoi Nintendo ne peut rien faire contre le code source, obtenu par rétro-ingénierie, pratique légale dans la plupart des pays du monde. (Mais pas au Japon)
Dans la pratique, ce code source donne le même résultat (et même mieux, avec toutes les corrections et apports) que celui en possession de Nintendo, mais il est différent du leur dans sa forme et composition ce qui fait qu'il ne tombe pas sous le coup d'un copyright.

Tout ça c'est bien beau, me direz vous, mais comme le jeu ne peut pas être distribué tel quel, comment compiler le jeu pour obtenir quelque chose qu'on peut exécuter/lancer et jouer avec ?

En réalité, c'est beaucoup plus simple qu'il n'y paraît, il va falloir compiler le jeu, c'est à dire, avec quelques outils, convertir le code source du jeu programmé avec le langage "C", en un exécutable binaire écrit en langage machine (vous savez, cette suite de 1 et de 0, seules choses qu'un processeur comprend concrètement ?...) voici les instruction plateforme par plateforme, c'est faisable tant que vous disposez d'une machine ayant un processeur du 64 bits. Le 32 bits est théoriquement possible, mais du fait de limitations technique et sa progressive disparition, les développeurs ne se concentrent pas sur son support et des bugs ne concernant que ces versions, peuvent parfois apparaître.
Suivez simplement les commandes qui suivent, selon votre situation, et n'oubliez pas de renommer la rom en "baserom.us.z64" (pour vérifier que la rom que vous avez soit bien la bonne, vérifiez avec "md5sum" que la somme md5 du fichier soit bien 20b854b239203baf6c961b850a4a51a2) et de l'intégrer à la racine du dossier du code source du jeu.


Préparer pour Linux, sous Linux sur PC et PS4 (Distributions Ubuntu et Debian) :
-64 bits :
sudo apt install build-essential git python3 libaudiofile-dev libglew-dev libsdl2-dev
-32 bits :
sudo apt install build-essential git python3 libaudiofile-dev libglew-dev:i386 libsdl2-dev:i386

Préparer pour Linux, sous Linux sur PC et PS4 (Distributions Manjaro et ArchLinux) :
-64 bits uniquement :
sudo pacman -S base-devel python audiofile sdl2 glew

Commande commune à toutes les distributions et systèmes :
-Pour récupérer le code source
git clone --branch master
Ici, "master" peut être remplacé par "nightly" pour bénéficier des dernières nouveautés/contributions de la communauté sur le jeu.
Gardez à l'esprit toutefois que la compilation peut parfois échouer, tout n'ayant pas encore été passé en revue afin d'assurer la cohérence du tout.

-Déplacez vous dans le terminal/invite de commande dans le dossier contenant le code source avec la commande "cd" (ici ça peut être sm64pc, sm64pc-master, ou sm64pc-nightly, selon que vous utilisiez git ou téléchargiez directement l'archive zip contenant toute le code source, et l'extrayez manuellement.

Par exemple "cd /home/Romain/sm64pc" sous Linux ou "cd
D:
\sm64pc" sous Windows.

Sachez qu'une simple commande peut mettre à jour le code source avec les dernières nouveautés de la branche choisie, sans tout devoir re-télécharger.
git pull

Compiler Super Mario 64 pour Linux :
make clean && make -j$(nproc) VERSION=us BETTERCAMERA=1 EXT_OPTIONS_MENU=1 NODRAWINGDISTANCE=1

-Pour compiler une version 32 bits, vous devez également rajouter aux arguments de make :
MARCH=i686 TARGET_BITS=32

Ici "make" est l'outil permettant de compiler le code source avec GCC, un compilateur très connu, ayant lui même été utilisé par Nintendo en 1996 pour compiler le jeu original. (Avec des oublis, ayant entraîné une chute des performances et facilité la décompilation du jeu...

La fonction "clean" permettra de s'assurer à coup sûr que le dossier des binaires du jeu soit bien nettoyer pour recompiler proprement depuis le début.
"&&" permet de passer plusieurs commandes à la suite sur une seule ligne.

"-j" est un argument permettant d'indiquer le nombre de coeurs de votre processeur pour compiler un binaire. Habituellement, ou peut indiquer directement -j4 si l'on dispose d'un core i5 avec quatre coeurs par exemple. Mais ici, remplacer un chiffre par $(nproc) permet à chacun de ne plus s'en soucier et d'utiliser le nombre maximum de cœurs disponibles. On compile donc le jeu plus rapidement par défaut.
Évidemment, si vous avez besoin d'une bonne partie des ressources de votre PC durant la compilation, vous pouvez remplacer par -j1 ou -j2 , selon votre désir.

VERSION=us permet d'indiquer que vous allez extraire la rom US . (Pour la rom EU [PAL], utiliser l'argument "eu", et pour la rom japonaise, utiliser l'argument "jp".

BETTERCAMERA=0 permet de définir si vous voulez activez la gestion de la caméra comme dans le jeu d'origine, ou amélioré (à savoir, un vrai support fin de la caméra avec le joystick droit, comme la majorité des jeux récents), la valeur 0 permet de conserver le mécanisme d'origine, tandis que la valeur 1 compile le jeu avec le système moderne.

EXT_OPTIONS_MENU=1 permet d'activer le menu d'options supplémentaire permettant de désactiver le filtre graphique, activer ou désactiver la synchronisation verticale, régler le volume sonore, accéder aux cheats...

NODRAWINGDISTANCE=1 permet de désactiver la limitation d'origine du jeu pour l'affichage d'objets distants. Ce phénomène se nomme habituellement clipping, en relation avec la distance d'affichage configurée dans les jeux, selon les capacités du matériel sur lequel on joue.

-L’exécutable du jeu sera compilé dans le dossier build/us_pc et sera nommé sm64.us.f3dex2e, il ne vous restera plus qu'à l’exécuter.

Lors du lancement du jeu, un fichier sm64config.txt sera créé à côté, qui contiendra toutes les options de configurations (association des boutons de jeu, filtres, vsync, etc...).

Le fichier de sauvegarde sm64_save_file.bin sera créé dès votre première sauvegarde et respecte les spécifications d'origine de la nintendo 64. Il est théoriquement possible de l'utiliser avec un émulateur, ou même, avec la nintendo 64 si on a le matériel pour, et vice versa. (À terme, ce support sera remplacé par un fichier texte avec des valeurs claires).

Compiler Super Mario 64 pour Raspberry PI et autres matériels avec processeur ARM :

-Ajoutez simplement aux arguments de l'outil de compilation "make" :
TARGET_RPI=1

Globalement, le binaire obtenu devrait fonctionner sur tout processeur ARM, y compris sous Linux sur Nintendo Switch.
Le binaire sera disponible dans le même dossier que la version PC, et sera nommé sm64.us.f3dex2e.arm
Optionnellement, il est possible d'optimiser la compilation pour chaque version du RaspberryPi avec .


Compiler Super Mario 64 pour Windows (Sous Linux Manjaro ou ArchLinux) :
La première étape sera d'installer MSYS2 .

Pui l'on installe les dépendances liées à la compilation de programmes pour Windows.
pacman -S mingw-w64-i686-glew mingw-w64-x86_64-glew mingw-w64-i686-SDL2 mingw-w64-x86_64-SDL2 python3

-Dans le dossier du code source du jeu, avec la commande cd, rendez vous dans le dossier ./tools/audiofile-0.3.6/ puis lancez la commande suivante :
autoreconf -i

-Puis on lance la configuration du script de compilation :
PATH=/mingw64/bin:/mingw32/bin:$PATH LIBS=-lstdc++ ./configure --disable-docs

-Puis on lance la compilation de la librairie audiofile configurée pour windows :
PATH=/mingw64/bin:/mingw32/bin:$PATH make

-On créer un dossier "lib" dans le dossier "tools" :
mkdir ../lib

-Puis on y copie les fichiers de la librairie configurée pour windows, fraichement compilés
cp libaudiofile/.libs/libaudiofile.a ../lib/ && cp libaudiofile/.libs/libaudiofile.la ../lib/

-On retourne dans le dossier tools avec la commande cd , puis éditez le fichier Makefile et recherchez la ligne tabledesign_CFLAGS := -Wno-uninitialized -laudiofile puis ajoutez y -lstdc++
La ligne en question devrait alors ressembler à ça désormais :
tabledesign_CFLAGS := -Wno-uninitialized -laudiofile -lstdc++

-On démarre désormais la compilation binaire de ces librairies configurées pour windows :
PATH=/mingw64/bin:/mingw32/bin:$PATH make

On retourne avec la commande cd dans le dossier sm64pc (à la racine du dossier du code source de Super Mario 64) et ENFIN on peut compiler le jeu pour windows :
PATH=/mingw32/bin:/mingw64/bin:$PATH make
-L’exécutable du jeu sera compilé dans le dossier build/us_pc et sera nommé sm64.us.f3dex2e.exe, il ne vous restera plus qu'à l’exécuter, sous Windows, ou avec Wine, ou Proton, ou même ReactOS, pour le tester.

Compiler Super Mario 64 pour navigateurs web (WebGL) sous Manjaro/ArchLinux :
-Il faudra tout d'abord installer emscripten pour pouvoir compiler la version WebGL de Super Mario 64, On aura d'abord besoin d'installer son paquet :
sudo pacman -S emscripten

-Puis il faudra créer un lien symbolique des binaires vers le dossier qui contient des executables locaux copiés par l'utilisateur.
sudo ln -s /usr/lib/emscripten/emcc /usr/local/bin/ && sudo ln -s /usr/lib/emscripten/emcc.py /usr/local/bin/

-On tente de lancer une première fois emscripten (qui échouera à cause d'une erreur de configuration), ce qui aura pour effet de créer son fichier de configuration, puis on l'édite. (remplacez nano par gedit ou tout autre éditeur graphique ou non, de votre choix)
nano ~/.emscripten

-Puis l'on remplace :
BINARYEN_ROOT = os.path.expanduser(os.getenv('BINARYEN', '')) # directory

-par
BINARYEN_ROOT = os.path.expanduser(os.getenv('BINARYEN', '/usr/lib/emscripten/')) # directory

Ici, on indique en fait au fichier de configuration, ou se situent les fichiers d'emscripten. (/usr/lib/emscripten/)
-Enfin, on peut compiler comme sur PC, à une différence près qu'on rajoute cet argument à make :
TARGET_WEB=1

Par exemple ça peut donner ceci :
make clean && make -j$(nproc) VERSION=us TARGET_WEB=1 BETTERCAMERA=1 EXT_OPTIONS_MENU=1 NODRAWINGDISTANCE=1

-L’exécutable du jeu sera compilé dans le dossier build/us_web et sera composés de trois fichiers, respectivement nommés sm64.us.f3dex2e.html, sm64.us.f3dex2e.js, et sm64.us.f3dex2e.wasm, il ne vous restera plus qu'à l’uploader sur votre serveur web et à tester avec n'importe quel navigateur supportant WebGL. La compilation est un peu plus longue que la version PC, et l'internaute devra patienter le temps du téléchargement des fichiers dans le cache du navigateur.
La version web intègre un support des sauvegardes, également. Attention à ne pas effacer les coockies et le cache de la page web du jeu pour ne pas les perdre.

À noter que le support des gamepads est aussi fonctionnel avec les navigateurs webs !
 

  • Like
Reactions: totor

zeness

Assistant
Membre du personnel
Assistant
Inscrit
19 Novembre 2017
Messages
489
Reaction score
193
Points
2,658
c'est un peu du chinois pour moi quand même

suis pas un habitué du pingouin

merci pour l'info je regarderai de plus près
 

scorpionoir1982

Administrateur
Membre du personnel
Super-Administrateur
Inscrit
22 Janvier 2016
Messages
1,360
Reaction score
731
Points
2,658
c'est un peu du chinois pour moi quand même

suis pas un habitué du pingouin

merci pour l'info je regarderai de plus près
Bonjour mon ami ces codes sont des commande linux pour installer la source du jeu
puisque la distrubution des exécutables précompilés est interdit
 

  • Like
Reactions: fanfan80

fanfan80

Ancien Staff
Ancien Staff
Membre Actif
Inscrit
28 Decembre 2018
Messages
1,311
Reaction score
519
Points
2,653
Bonjour les amis,


FIFA 19
Depuis le leak du code source, non pas depuis le récent Hack ayant abouti aux fuites de codes sources de jeux et consoles de Nintendo, mais d'une équipe sur Discord ayant longuement travaillé à la décompilation du jeu pour un portage en C, une autre équipe a repris ce dernier pour faire

Les binaires (exécutables précompilés) ne peuvent pas être légalement distribué, mais le code source du jeu l'est, lui le peut.

Le portage du jeu a grandement avancé, on retrouve enfin un support stable de WebGL pour lancer le jeu depuis un navigateur Web, il est également possible de compiler le jeu pour Raspberry Pi, Switch ( bientôt public) et ce dernier pourra également être lancé sur PS4 sous Linux. (Il se murmure qu'une version PSP, serait dans les clous, et que potentiellement, il serait aussi possible de faire un portage PSvita avec un wrapper OpenGL.)

Le support de DirectX 12 est en passe d'être abandonné visiblement, au profit d'OpenGL uniquement, pouvant être utilisé et porté partout, sachant que le jeu n'est vraiment pas gourmand. Vulkan n'est pas prévu pour le moment, le support de cette API dépendant essentiellement d'un projet tiers.

Progressivement, des options ont été rajoutées, pour augmenter la visibilité de la distance des objets (plus de clipping), sauter l'introduction du jeu lors du lancement d'une nouvelle partie, ainsi que le réglage du volume, quitter le jeu, et le support des cheats !




Bonne nouvelle et pas des moindre de récents apports ont permis aux moddeurs de pouvoir enfin utiliser nativement des textures hautes-résolution, ou, au contraire de désactiver les filtres natifs du jeu afin d'en profiter avec un côté pixel arts. Certains bugs de l'époque ont même été corrigé, comme la texture de la fumée qui n'était pas programmée correctement à l'origine, et afficher une texture corrompue, alors que ladite texture était bien présente dans le jeu.
D'autres se sont carrément lancés dans des tâches plus complexes, un contributeur a réussi à reprendre un modèle de Mario de Super Mario Galaxy et l'intégrer dans Super Mario 64 avec succès, les outils pour pouvoir appliquer ça manuellement à tous les modèles du jeu est en cours, mais il a annoncé que pour sa part, il aura besoin de toutes les contributions possibles pour améliorer chaque objet/personnage du jeu.

Le support des gamepads est le même que SDL, dans la pratique, il accepte et configure de base tous les pads respectant le standard "Xinput", la Dualshock 4 de Sony fonctionne par exemple à merveille en USB et Bluetooth sous Linux.

Le support du multilingue avance lui aussi grandement, bien que la version européenne du jeu ne soit pas encore fonctionnelle (des problèmes d'affichage des polices et l'absence de son), il devrait être possible de bénéficier de la traduction française sur les versions US et JP. D'autres traductions, comme l'Espagnol, sont également en cours.

Dans tous les cas, vous devrez récupérer par vos propres moyens la bonne version us de la rom Super Mario 64 pour émulateurs Nintendo 64, au format Z64, sachez que vous n'avez légalement le droit d'en disposer qui si vous avez le jeu original en votre possession.
Le code source dépend des textures, des fichiers d'animation et modèles 3D, ainsi que les banques de sons et fichiers de séquençages du jeu original et quelques parties en assembleur, c'est pourquoi l'exécutable prêt à l'emploi ne peut pas être distribué. Et c'est également pourquoi Nintendo ne peut rien faire contre le code source, obtenu par rétro-ingénierie, pratique légale dans la plupart des pays du monde. (Mais pas au Japon)
Dans la pratique, ce code source donne le même résultat (et même mieux, avec toutes les corrections et apports) que celui en possession de Nintendo, mais il est différent du leur dans sa forme et composition ce qui fait qu'il ne tombe pas sous le coup d'un copyright.

Tout ça c'est bien beau, me direz vous, mais comme le jeu ne peut pas être distribué tel quel, comment compiler le jeu pour obtenir quelque chose qu'on peut exécuter/lancer et jouer avec ?

En réalité, c'est beaucoup plus simple qu'il n'y paraît, il va falloir compiler le jeu, c'est à dire, avec quelques outils, convertir le code source du jeu programmé avec le langage "C", en un exécutable binaire écrit en langage machine (vous savez, cette suite de 1 et de 0, seules choses qu'un processeur comprend concrètement ?...) voici les instruction plateforme par plateforme, c'est faisable tant que vous disposez d'une machine ayant un processeur du 64 bits. Le 32 bits est théoriquement possible, mais du fait de limitations technique et sa progressive disparition, les développeurs ne se concentrent pas sur son support et des bugs ne concernant que ces versions, peuvent parfois apparaître.
Suivez simplement les commandes qui suivent, selon votre situation, et n'oubliez pas de renommer la rom en "baserom.us.z64" (pour vérifier que la rom que vous avez soit bien la bonne, vérifiez avec "md5sum" que la somme md5 du fichier soit bien 20b854b239203baf6c961b850a4a51a2) et de l'intégrer à la racine du dossier du code source du jeu.


Préparer pour Linux, sous Linux sur PC et PS4 (Distributions Ubuntu et Debian) :
-64 bits :
sudo apt install build-essential git python3 libaudiofile-dev libglew-dev libsdl2-dev
-32 bits :
sudo apt install build-essential git python3 libaudiofile-dev libglew-dev:i386 libsdl2-dev:i386

Préparer pour Linux, sous Linux sur PC et PS4 (Distributions Manjaro et ArchLinux) :
-64 bits uniquement :
sudo pacman -S base-devel python audiofile sdl2 glew

Commande commune à toutes les distributions et systèmes :
-Pour récupérer le code source
git clone --branch master
Ici, "master" peut être remplacé par "nightly" pour bénéficier des dernières nouveautés/contributions de la communauté sur le jeu.
Gardez à l'esprit toutefois que la compilation peut parfois échouer, tout n'ayant pas encore été passé en revue afin d'assurer la cohérence du tout.

-Déplacez vous dans le terminal/invite de commande dans le dossier contenant le code source avec la commande "cd" (ici ça peut être sm64pc, sm64pc-master, ou sm64pc-nightly, selon que vous utilisiez git ou téléchargiez directement l'archive zip contenant toute le code source, et l'extrayez manuellement.

Par exemple "cd /home/Romain/sm64pc" sous Linux ou "cd
D:
\sm64pc" sous Windows.

Sachez qu'une simple commande peut mettre à jour le code source avec les dernières nouveautés de la branche choisie, sans tout devoir re-télécharger.
git pull

Compiler Super Mario 64 pour Linux :
make clean && make -j$(nproc) VERSION=us BETTERCAMERA=1 EXT_OPTIONS_MENU=1 NODRAWINGDISTANCE=1

-Pour compiler une version 32 bits, vous devez également rajouter aux arguments de make :
MARCH=i686 TARGET_BITS=32

Ici "make" est l'outil permettant de compiler le code source avec GCC, un compilateur très connu, ayant lui même été utilisé par Nintendo en 1996 pour compiler le jeu original. (Avec des oublis, ayant entraîné une chute des performances et facilité la décompilation du jeu...

La fonction "clean" permettra de s'assurer à coup sûr que le dossier des binaires du jeu soit bien nettoyer pour recompiler proprement depuis le début.
"&&" permet de passer plusieurs commandes à la suite sur une seule ligne.

"-j" est un argument permettant d'indiquer le nombre de coeurs de votre processeur pour compiler un binaire. Habituellement, ou peut indiquer directement -j4 si l'on dispose d'un core i5 avec quatre coeurs par exemple. Mais ici, remplacer un chiffre par $(nproc) permet à chacun de ne plus s'en soucier et d'utiliser le nombre maximum de cœurs disponibles. On compile donc le jeu plus rapidement par défaut.
Évidemment, si vous avez besoin d'une bonne partie des ressources de votre PC durant la compilation, vous pouvez remplacer par -j1 ou -j2 , selon votre désir.

VERSION=us permet d'indiquer que vous allez extraire la rom US . (Pour la rom EU [PAL], utiliser l'argument "eu", et pour la rom japonaise, utiliser l'argument "jp".

BETTERCAMERA=0 permet de définir si vous voulez activez la gestion de la caméra comme dans le jeu d'origine, ou amélioré (à savoir, un vrai support fin de la caméra avec le joystick droit, comme la majorité des jeux récents), la valeur 0 permet de conserver le mécanisme d'origine, tandis que la valeur 1 compile le jeu avec le système moderne.

EXT_OPTIONS_MENU=1 permet d'activer le menu d'options supplémentaire permettant de désactiver le filtre graphique, activer ou désactiver la synchronisation verticale, régler le volume sonore, accéder aux cheats...

NODRAWINGDISTANCE=1 permet de désactiver la limitation d'origine du jeu pour l'affichage d'objets distants. Ce phénomène se nomme habituellement clipping, en relation avec la distance d'affichage configurée dans les jeux, selon les capacités du matériel sur lequel on joue.

-L’exécutable du jeu sera compilé dans le dossier build/us_pc et sera nommé sm64.us.f3dex2e, il ne vous restera plus qu'à l’exécuter.

Lors du lancement du jeu, un fichier sm64config.txt sera créé à côté, qui contiendra toutes les options de configurations (association des boutons de jeu, filtres, vsync, etc...).

Le fichier de sauvegarde sm64_save_file.bin sera créé dès votre première sauvegarde et respecte les spécifications d'origine de la nintendo 64. Il est théoriquement possible de l'utiliser avec un émulateur, ou même, avec la nintendo 64 si on a le matériel pour, et vice versa. (À terme, ce support sera remplacé par un fichier texte avec des valeurs claires).

Compiler Super Mario 64 pour Raspberry PI et autres matériels avec processeur ARM :

-Ajoutez simplement aux arguments de l'outil de compilation "make" :
TARGET_RPI=1

Globalement, le binaire obtenu devrait fonctionner sur tout processeur ARM, y compris sous Linux sur Nintendo Switch.
Le binaire sera disponible dans le même dossier que la version PC, et sera nommé sm64.us.f3dex2e.arm
Optionnellement, il est possible d'optimiser la compilation pour chaque version du RaspberryPi avec .


Compiler Super Mario 64 pour Windows (Sous Linux Manjaro ou ArchLinux) :
La première étape sera d'installer MSYS2 .

Pui l'on installe les dépendances liées à la compilation de programmes pour Windows.
pacman -S mingw-w64-i686-glew mingw-w64-x86_64-glew mingw-w64-i686-SDL2 mingw-w64-x86_64-SDL2 python3

-Dans le dossier du code source du jeu, avec la commande cd, rendez vous dans le dossier ./tools/audiofile-0.3.6/ puis lancez la commande suivante :
autoreconf -i

-Puis on lance la configuration du script de compilation :
PATH=/mingw64/bin:/mingw32/bin:$PATH LIBS=-lstdc++ ./configure --disable-docs

-Puis on lance la compilation de la librairie audiofile configurée pour windows :
PATH=/mingw64/bin:/mingw32/bin:$PATH make

-On créer un dossier "lib" dans le dossier "tools" :
mkdir ../lib

-Puis on y copie les fichiers de la librairie configurée pour windows, fraichement compilés
cp libaudiofile/.libs/libaudiofile.a ../lib/ && cp libaudiofile/.libs/libaudiofile.la ../lib/

-On retourne dans le dossier tools avec la commande cd , puis éditez le fichier Makefile et recherchez la ligne tabledesign_CFLAGS := -Wno-uninitialized -laudiofile puis ajoutez y -lstdc++
La ligne en question devrait alors ressembler à ça désormais :
tabledesign_CFLAGS := -Wno-uninitialized -laudiofile -lstdc++

-On démarre désormais la compilation binaire de ces librairies configurées pour windows :
PATH=/mingw64/bin:/mingw32/bin:$PATH make

On retourne avec la commande cd dans le dossier sm64pc (à la racine du dossier du code source de Super Mario 64) et ENFIN on peut compiler le jeu pour windows :
PATH=/mingw32/bin:/mingw64/bin:$PATH make
-L’exécutable du jeu sera compilé dans le dossier build/us_pc et sera nommé sm64.us.f3dex2e.exe, il ne vous restera plus qu'à l’exécuter, sous Windows, ou avec Wine, ou Proton, ou même ReactOS, pour le tester.

Compiler Super Mario 64 pour navigateurs web (WebGL) sous Manjaro/ArchLinux :
-Il faudra tout d'abord installer emscripten pour pouvoir compiler la version WebGL de Super Mario 64, On aura d'abord besoin d'installer son paquet :
sudo pacman -S emscripten

-Puis il faudra créer un lien symbolique des binaires vers le dossier qui contient des executables locaux copiés par l'utilisateur.
sudo ln -s /usr/lib/emscripten/emcc /usr/local/bin/ && sudo ln -s /usr/lib/emscripten/emcc.py /usr/local/bin/

-On tente de lancer une première fois emscripten (qui échouera à cause d'une erreur de configuration), ce qui aura pour effet de créer son fichier de configuration, puis on l'édite. (remplacez nano par gedit ou tout autre éditeur graphique ou non, de votre choix)
nano ~/.emscripten

-Puis l'on remplace :
BINARYEN_ROOT = os.path.expanduser(os.getenv('BINARYEN', '')) # directory

-par
BINARYEN_ROOT = os.path.expanduser(os.getenv('BINARYEN', '/usr/lib/emscripten/')) # directory

Ici, on indique en fait au fichier de configuration, ou se situent les fichiers d'emscripten. (/usr/lib/emscripten/)
-Enfin, on peut compiler comme sur PC, à une différence près qu'on rajoute cet argument à make :
TARGET_WEB=1

Par exemple ça peut donner ceci :
make clean && make -j$(nproc) VERSION=us TARGET_WEB=1 BETTERCAMERA=1 EXT_OPTIONS_MENU=1 NODRAWINGDISTANCE=1

-L’exécutable du jeu sera compilé dans le dossier build/us_web et sera composés de trois fichiers, respectivement nommés sm64.us.f3dex2e.html, sm64.us.f3dex2e.js, et sm64.us.f3dex2e.wasm, il ne vous restera plus qu'à l’uploader sur votre serveur web et à tester avec n'importe quel navigateur supportant WebGL. La compilation est un peu plus longue que la version PC, et l'internaute devra patienter le temps du téléchargement des fichiers dans le cache du navigateur.
La version web intègre un support des sauvegardes, également. Attention à ne pas effacer les coockies et le cache de la page web du jeu pour ne pas les perdre.

À noter que le support des gamepads est aussi fonctionnel avec les navigateurs webs !
Salut merci pour le partage
 

  • Like
Reactions: scorpionoir1982

the new

Débutant
Membre
Inscrit
23 Mai 2020
Messages
7
Reaction score
4
Points
58
ca avance bien . Merci pour le partage de l'information
 

jizzybang

Membre Intéressé
Membre
Inscrit
19 Janvier 2021
Messages
11
Reaction score
4
Points
83
Merci bien pour le partage !
 

Auteur Sujets similaires Forum Réponses Date
laurent68 ™ [PS4] Les jeux PSP maintenant accessibles sur PS4 Hack 5
laurent68 ™ [PS4] PS4 Developing Homebrew Unity dispo et bientôt les jeux PSP Hack 0
laurent68 ™ [PS3/PS4/PSP/Vita] AT9&AT3 Converter v2.3 Informatique 0
laurent68 ™ Discussion SOLDES - PlayStation Store : un tas de réductions printanières pour des jeux PS4, PS3, PSVita et PSP Discussions Ps4 0
scorpionoir1982 Hack Nouveau Host PS4 6.72 en version 1.1 Hack 6
scorpionoir1982 Discussion [PS4] Sony sort le firmware officiel 8.0 Discussions Ps4 3
scorpionoir1982 Hack PS4 Xplorer v1.24 Hack 2
scorpionoir1982 Hack [PS4] la v8 du 6.72 Menu avec Hen 2.1.3b de Leeful74 Hack 1
scorpionoir1982 Discussion [PS4] Un downgrade firmware du 7.55 au 6.72 Discussions Ps4 0
scorpionoir1982 Discussion [PS4] Les app NoPSN Youtube, NetFlix, Littlstar, Vevo, Prime Video... Discussions Ps4 0
scorpionoir1982 Hack [PS4] Un script pour dumper la eap_hdd_key sur toutes les PS4 Hack 0
scorpionoir1982 Hack [PS4] Le HEN 2.1.3 sur les firmwares inférieurs au 6.72 Hack 2
scorpionoir1982 Hack [PS4] Android PS4 Exploit Host 6.72 Server APK Hack 0
scorpionoir1982 Hack [PS4] Le payload pour dumper votre clé EAP sur 6.72 Hack 0
scorpionoir1982 Hack [PS4] Update PS4 NoBD pour firmware 6.20 Hack 0
scorpionoir1982 Hack [PS4] PS4HEN 2.1.3 avec spoof 7.51 pour le 6.72 et 5.05 Hack 2
scorpionoir1982 Hack [PS4] PS4 PKG Sender v1.03 Hack 0
scorpionoir1982 Hack [PS4] PS4-Xplorer 1.23 Hack 0
scorpionoir1982 [PS4] Tutoriel pour Backporter un jeu et sa MAJ 6.72 pour 5.05 Hack 0
scorpionoir1982 Discussion [PS5] Certains périphériques PS4 marcheront sur PS5 mais pas la DS4 Discussions Ps4 1
scorpionoir1982 Hack [PS4] AutoBackPort v1.06 et PS4 Backporter v1.4 Hack 0
scorpionoir1982 Hack [PS4] Sleirsgoevy rajoute le FTP et FAKEUSB à son exploit 6.72 Hack 0
scorpionoir1982 Hack [PS4] AutoBackPort 0.85 de RetroGamer74 disponible Hack 2
scorpionoir1982 Hack [PS4] PS4 App Lock v1.02 avec support firmware 6.72 Hack 0
scorpionoir1982 Hack [PS4] Une méthode pour backporter du firmware 6.72 au 5.05 Hack 2
scorpionoir1982 Hack [PS4] L'exploit firmware 6.72 est disponible ! Hack 2
scorpionoir1982 Hack [PS4] Easy PKG Extractor v1.05 avec support firmware 6.72 Hack 2
scorpionoir1982 Hack [PS4] Ne vous jetez pas sur le firmware 6.72 Hack 3
scorpionoir1982 Hack [PS4] PS4HEN v2.1.4 Hack 5
phil6319 Question Console de jeux PS4 Question & Aide 6
LoveWorldAide [PS4] DS4Windows v2.1.0 disponible Hack 0
scorpionoir1982 River Raid 1.0 PS4 FPKG Playstation 4 0
scorpionoir1982 2 Clés de Kernel dévoilées sur PS4 par notzecoxao Hack 0
scorpionoir1982 Hack [PS4] PS4HEN v2.1.3 de SiSTR0 Hack 0
scorpionoir1982 PS4 DS4Windows v2.0.1.3 Playstation 4 3
scorpionoir1982 [PS4] Lapy Games Collection (v1.0) avec 9 jeux dans un PKG Playstation 4 0
scorpionoir1982 [PS4 Exclusive VR] Gran Turismo Sport [EUR RUS] (v1.14) Playstation 4 0
scorpionoir1982 PS4 GUI PS4 offline account activator. Hack 6
A Discussion petite question sur la ps4? Discussions Ps4 2
etranger5 Discussion [PS4] CoD Modern Warfare Discussions Ps4 0
dadou11480 PS3 SITE TELECHARGEMENT JEUX PS4 Torrent PS3 6
laurent68 ™ [PS4] PlayStation 4 Homebrew Package Store V1.3 par Toxxic407 Hack 0
laurent68 ™ [PS4] PS4 Dump Checker par Pearlxcore Hack 0
laurent68 ™ [PS4] Payload Avatar Dumper pour 5.05 de Red-J Hack 0
laurent68 ™ Hack [PS4] OrbisDbg / OrbisDbgUI PS4 Payload & Code Library disponibles Hack 0
laurent68 ™ [PS4] PlayStation 4 Save Mounter v1.4 Hack 0
laurent68 ™ [PS4] PS4 Remote Play Auto patcher v3.0 Hack 1
laurent68 ™ [PS4] xPloitServer (Android) Hack 0
laurent68 ™ [PS4] Mortal Kombat Konquest, Street Fighter BORR 2 & Golden Axe CTDA Hack 2
laurent68 ™ [PS4] PlayStation 4 Homebrew Package Store V1.2.1 par Toxxic407 (maj) Hack 0
Sujets similaires


















































Cliquez ici pour vous connecter en utilisant votre compte social
AdBlock Détecté

Nous comprenons, les publicités sont ennuyeuses !

Bien sûr, le logiciel de blocage des publicités fait un excellent travail pour bloquer les publicités, mais il bloque également les fonctionnalités utiles de notre site Web. Pour la meilleure expérience du site, veuillez désactiver votre AdBlocker.

J'ai désactivé AdBlock