User Tag List

Results 1 to 3 of 3

Thread: Choix frequence syncro d'écran

  1. #1
    No Products Registered

    Join Date
    Jul 2006
    Posts
    47
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    Choix frequence syncro d'écran

    (portage pour MMF d'un de mes ancien post du forum darkbasic http://www.games-creator.com/forum3/...ghlight=syncro ):

    Attention!!! cette astuce ne fonctionne malheureusement pas avec MMF quand on coche "CHANGE RESOLUTION MODE"

    Vous avez surement remarqué que les jeux MMF avec "V-SYNC" coché s'executent plus ou moins vite suivant à laquelle est reglée la fréquence de balayage d'écran "syncro" de votre écran (parametres graphiques).
    Pour changer cette vitesse dans le code, on peut régler le FRAME RATE 60 , 75 ---- décocher V-SYNC mais cela provoque une animation saccadée --- adieu le fluide .
    Pour afficher une fluidité d'animation on est donc forcé d'utiliser "V-SYNC" de regler FRAME RATE assez haut 100 et le jeu ce lance donc avec la syncronisation d'écran de windows par défaut.
    Malheureusement cette frequence varie d'un pc à l'autre.
    Le jeu avec V-SYNC s'ouvre donc avec la syncro par defaut de windows qui peut varier de 60 à 200hz et le jeu speede plus ou moins vite suivant cela .
    Pour etre sur que son jeu tourne fluide et à la même vitesse sur tout les PC sans choisir cette frequence, on doit forcement se compliquer la vie avec des routines de pas de déplacement , de fsp, de timers --- cela rend le code lourd , complexe et farci de variables flottantes ( chose "impossible" avec MMF ).

    Il est bien plus simple de realiser un jeu avec une animation fluide à la même vitesse sur tout les PC en définissant la syncronisation à laquelle s'ouvrira le jeu en plien ecran. (sans tenir compte de la charge cpu qui est un tout autre probleme) .
    Malheuseusement il n'existe pas (encore) de commande en MMF qui permette de définir la frequence de syncro pour l'ouverture de son jeu .

    J'ai reussi à mettre au point une astuce qui comble le manque de cette commande et permet de choisir cette frequence de syncronisation .

    Cette astuce permet de forcer le jeu en MMF de s'ouvrir
    avec la syncro désirée, tout en respectant le multitache
    et sans modifier la syncronisation de windows quant on quitte le jeu .

    Le principe est de lancer un Exe qui execute le jeu MMF avec la syncro choisie
    et restituer la syncro par defaut de windows quant on quitte le jeu .

    Ce kit de lancemant comprends 2 Fichers :
    - Run.exe ( correspondant au nouveau .exe de votre jeu )
    - sync.in ( fichier .ini contenant la valeur de la syncro du jeu)

    Utilisation :
    - Ces 2 fichiers (17ko) doivent etre place avec l'executable de votre jeu (*.EXE)
    - l'executable du jeu doit obligatoirement etre renommé 1.bat
    - editer le fichier sync.ini avec l'editeur de texte (clic droit ouvrir avec Block-note)
    Pour modifier la valeur de la syncronisation
    Il est conseiller d'utiliser la fréquence 60 compatible avec tout .
    Ne pas oublier de sauver avant de fermer l'editeur txt .

    Click sur Run.exe pour lancer votre jeu !

    Enjoy ----

    On peut :
    -Renommer le fichier Run.exe avec le nom de votre jeu
    -Modifier son icone en utilisant un programme comme ResHacher.

    Heliuse.



    http://perso.wanadoo.fr/marcus.zone/.../syncblitz.zip

    ----------------------------------------------------------------------------------------------
    ----------------------------------------------------------------------------------------------
    Programme réalisté par Marcus en PureBasic 3.91 avec la librairie SpriteEX .
    marcuspoilus@wanadoo.fr
    Marcus.Zone
    http://perso.wanadoo.fr/marcus.zone
    ----------------------------------------------------------------------------------------------
    Source du code PureBasic :
    Code:
    ;---------------------------------------------------------------------------------------------
    InitSprite()
    OpenWindow(1,0,0,0,0,#PB_Window_ScreenCentered,"" )
    Freq=GetMonitorFreq()
    CloseWindow(1)
    OpenPreferences("Sync.ini" )
    Freq_Jeu= ReadPreferenceLong("sync",0)
    ClosePreferences()
    ss.DEVMODE
    ss\dmSize = SizeOf(DEVMODE)
    ss\dmDisplayFrequency = Freq_Jeu ; la frequence choisie
    ss\DmFields = $400000
    ChangeDisplaySettings_(ss, 1)

    RunProgram("1.bat","","",1)

    ss.DEVMODE
    ss\dmSize = SizeOf(DEVMODE)
    ss\dmDisplayFrequency = Freq
    ss\DmFields = $400000
    ChangeDisplaySettings_(ss, 1)
    End
    ;---------------------------------------------------------------------------------------------



  2. #2
    Clickteam Clickteam

    Join Date
    Jun 2006
    Location
    France
    Posts
    14,022
    Mentioned
    279 Post(s)
    Tagged
    3 Thread(s)

    Re: Choix frequence syncro d'écran

    Cette astuce relativement lourde ne sera pas nécessaire quand MMF2 HWA sera dispo car il contiendra des options pour changer la fréquence de balayage.

  3. #3
    Clicker Fusion 2.5

    Join Date
    Aug 2007
    Posts
    100
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    Re: Choix frequence syncro d'écran

    super , merci pour cette confirmation
    [img]/epicentre/images/%%GRAEMLIN_URL%%/smile.gif[/img]

Similar Threads

  1. Passer aplication 640X480 sur un ecran large 16/9 sans etirer l'image : plein écran
    By mig3 in forum Multimedia Fusion 2 - Technical Support
    Replies: 7
    Last Post: 9th March 2013, 05:21 PM
  2. Objet Capture Ecran (une partie de l'écran?).
    By SpringUp in forum Multimedia Fusion 2 - Technical Support
    Replies: 4
    Last Post: 27th December 2012, 07:50 AM
  3. probleme syncro d'affichage plein écran
    By heliuse in forum Multimedia Fusion 2 - Technical Support
    Replies: 35
    Last Post: 17th September 2007, 12:29 PM
  4. Choix de la fréquence syncro pour un plein écran
    By marcus in forum Multimedia Fusion 2 - Technical Support
    Replies: 13
    Last Post: 3rd August 2006, 11:16 PM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •