IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

DirectX Discussion :

Mode FULLSCREEN incomplet en largeur


Sujet :

DirectX

  1. #1
    Membre régulier
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    mai 2014
    Messages
    43
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vaucluse (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : mai 2014
    Messages : 43
    Points : 97
    Points
    97
    Par défaut Mode FULLSCREEN incomplet en largeur
    Salut, j'ai suivit un tuto : http://jeux.developpez.com/tutoriels...re-de-travail/ pour m'initier à DIRECTX

    Cependant lorsque je passe ma variable "FULLSCREEN" a "true" (ligne 30) la fenêtre en plein écran ne recouvre qu'à peine plus de la moitié de l'écran.

    voici le code d'initialisation de ma fenêtre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    void SystemClass::InitializeWindows(int & screenWidth, int & screenHeight)
    {
    	WNDCLASSEX wc;
    	DEVMODE dmScreenSettings;
    	int posX, posY;
     
    	ApplicationHandle = this;
     
    	m_hinstance = GetModuleHandle(NULL);
    	m_applicatoinName = L"Engine";
     
    	wc.style = CS_HREDRAW | CS_VREDRAW | CS_OWNDC;
    	wc.lpfnWndProc = WndProc;
    	wc.cbClsExtra = 0;
    	wc.cbWndExtra = 0;
    	wc.hInstance = m_hinstance;
    	wc.hIcon = LoadIcon(NULL, IDI_WINLOGO);
    	wc.hIconSm = wc.hIcon;
    	wc.hCursor = LoadCursor(NULL, IDC_ARROW);
    	wc.hbrBackground = (HBRUSH)GetStockObject(BLACK_BRUSH);
    	wc.lpszMenuName = NULL;
    	wc.lpszClassName = m_applicatoinName;
    	wc.cbSize = sizeof(WNDCLASSEX);
     
    	RegisterClassEx(&wc);
     
    	screenHeight = GetSystemMetrics(SM_CXSCREEN);
    	screenWidth = GetSystemMetrics(SM_CYSCREEN);
     
    	if (FULL_SCREEN)
    	{
    		memset(&dmScreenSettings, 0, sizeof(dmScreenSettings));
    		dmScreenSettings.dmSize = sizeof(dmScreenSettings);
    		dmScreenSettings.dmPelsWidth = (unsigned long)screenWidth;
    		dmScreenSettings.dmPelsHeight = (unsigned long)screenHeight;
    		dmScreenSettings.dmBitsPerPel = 32;
    		dmScreenSettings.dmFields = DM_BITSPERPEL | DM_PELSWIDTH;
     
    		ChangeDisplaySettings(&dmScreenSettings, CDS_FULLSCREEN);
     
    		posX = posY = 0;
    	}
    	else
    	{
    		screenWidth = 800;
    		screenHeight = 600;
     
    		posX = (GetSystemMetrics(SM_CXSCREEN) - screenWidth) / 2;
    		posY = (GetSystemMetrics(SM_CYSCREEN) - screenHeight) / 2;
    	}
     
    	m_hwnd = CreateWindowEx(WS_EX_APPWINDOW, m_applicatoinName, m_applicatoinName, WS_CLIPSIBLINGS | WS_CLIPCHILDREN | WS_POPUP, posX, posY, screenWidth, screenHeight, NULL, NULL, m_hinstance, NULL);
     
    	ShowWindow(m_hwnd, SW_SHOW);
    	SetForegroundWindow(m_hwnd);
    	SetFocus(m_hwnd);
     
    	ShowCursor(false);
     
    	return;
    }
    Si quelqu'un peut m'expliquer pourquoi la fenêtre ne recouvre pas la totalité de la largeur de l'écran.

    Je dit surement une bêtise mais cela aurait-il à voir avec ma variable 'screenWidth' (ligne 28) que j'initialise avec la fonction GetSystemMetrics(SM_CYSCREEN) et que j'affecte au membre dmPelWidth de la struct DEVMODE ?

    Merci d'avance

  2. #2
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    mai 2008
    Messages
    25 998
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : mai 2008
    Messages : 25 998
    Points : 207 906
    Points
    207 906
    Billets dans le blog
    85
    Par défaut
    Bonjour,

    Je vous conseille d'afficher les valeurs de screenWidth/screenHeight pour être sur de ce que vous utilisez.
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [CS4] Zoom sur image avec mode fullscreen au clic
    Par nanou777 dans le forum ActionScript 3
    Réponses: 1
    Dernier message: 22/08/2011, 15h22
  2. Code HTML(iframe) dans un swf + mode fullscreen
    Par Jim_Nastiq dans le forum Intégration
    Réponses: 1
    Dernier message: 20/06/2009, 21h56
  3. Problème de clipContent en mode fullScreen
    Par yuukuari dans le forum Flash
    Réponses: 1
    Dernier message: 13/03/2009, 11h19
  4. Mode Fullscreen sous CPP ?
    Par kaizer dans le forum C++Builder
    Réponses: 4
    Dernier message: 24/10/2006, 20h28
  5. [DirectX][C#] Mode Fenetré / Fullscreen
    Par Congru dans le forum DirectX
    Réponses: 6
    Dernier message: 10/02/2006, 04h12

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo