Find mein Fehler bei OpenGL Vollbild Modus nicht...
-
Hallo
voraus (mit einem r).
chrische
-
Ein Tipp: Rück deinen Code ein, dann sieht man auf Anhieb dass und auch meistens wo eine Klammer fehlt.
-
Entschuldige, aber ich versteh nicht was du mit Einrücken meinst

Danke im Voraus.
-
Hallo
Er meinte die Benutzung der Tab-Taste.
chrische
-
Ja, aber das bringt doch wahrscheinlich nichts.
Aber ich probier mal weiter....
-
Hallo
Es hilft die Blöcke zu erkennen und somit fehlende Klammern zu finden.
chrische
-
Naja, ich denke mal ich bin schon etwas weiter. Ich bin jetzt soweit das er mir nur nicht die Klammer nach dem BOOL CreateGLwindow(....) compilet, nämlich :
{.
Allerdings kann ich es mir nicht erklären weil ich die Klammer hinterher wieder schliesse.BOOL CreateGLWindow(char* title, int width, int height, int bits, bool fullscreenflag) { GLuint PixelFormat; // Holds The Results After Searching For A Match WNDCLASS wc; // Windows Class Structure DWORD dwExStyle; // Window Extended Style DWORD dwStyle; // Window Style RECT WindowRect; // Grabs Rectangle Upper Left / Lower Right Values WindowRect.left=(long)0; // Set Left Value To 0 WindowRect.right=(long)width; // Set Right Value To Requested Width WindowRect.top=(long)0; // Set Top Value To 0 WindowRect.bottom=(long)height; // Set Bottom Value To Requested Height fullscreen=fullscreenflag; // Set The Global Fullscreen Flag hInstance = GetModuleHandle(NULL); // Grab An Instance For Our Window wc.style = CS_HREDRAW | CS_VREDRAW | CS_OWNDC; // Redraw On Size, And Own DC For Window. wc.lpfnWndProc = (WNDPROC) WndProc; // WndProc Handles Messages wc.cbClsExtra = 0; // No Extra Window Data wc.cbWndExtra = 0; // No Extra Window Data wc.hInstance = hInstance; // Set The Instance wc.hIcon = LoadIcon(NULL, IDI_WINLOGO); // Load The Default Icon wc.hCursor = LoadCursor(NULL, IDC_ARROW); // Load The Arrow Pointer wc.hbrBackground = NULL; // No Background Required For GL wc.lpszMenuName = NULL; // We Don't Want A Menu wc.lpszClassName = "OpenGL"; // Set The Class Name if (!RegisterClass(&wc)) // Attempt To Register The Window Class { MessageBox(NULL,"Failed To Register The Window Class.","ERROR",MB_OK|MB_ICONEXCLAMATION); return FALSE; // Return FALSE } if(fullscreen) { DEVMODE dmScreenSettings; dmScreenSettings.dmPelsWidth=width; dmScreenSettings.dmPelsHeight=height; dmScreenSettings.dmBitsPerPel=bits; dmScreenSettings.dmFields=DM_BITSPERPEL|DM_PELSWIDTH|DM_PELSHEIGHT; } if(fullscreen) { dwExStyle=WS_EX_APPWINDOW; dwStyle=WS_POPUP; ShowCursor(TRUE); } else { dwExStyle=WS_EX_APPWINDOW | WS_EX_WINDOWEDGE; dwStyle=WS_OVERLAPPEDWINDOW; } if(!(hWnd=CreateWindowEx( dwExStyle, "OpenGL", title, WS_CLIPSIBLINGS | WS_CLIPCHILDREN | dwStyle, 0,0, WindowRect.right-WindowRect.left, WindowRect.bottom-WindowRect.top, NULL, NULL, hInstance, NULL))) static PIXELFORMATDESCRIPTOR pfd= { sizeof(PIXELFORMATDESCRIPTOR), 1, PFD_DRAW_TO_WINDOW | PFD_SUPPORT_OPENGL | PFD_DOUBLEBUFFER | PFD_TYPE_RGBA, 0,0,0,0,0,0, 0, 0, 0, 0,0,0,0, 0, PFD_MAIN_PLANE, 0, 0,0,0 }; ShowWindow(hWnd,SW_SHOW); SetForegroundWindow(hWnd); SetFocus(hWnd); ReSizeGLScene(width,height); return TRUE; } LRESULT CALLBACK WndProc(HWND hWnd,UINT message,WPARAM wParam,LPARAM lParam) { switch(message) { case WM_CLOSE: { PostQuitMessage(0); return 0; } } return DefWindowProc(hWnd,message,wParam,lParam); } int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR lpCmdLine,int nCmdShow) { MSG msg; bool done=FALSE; if (MessageBox(NULL,"Would You Like To Run In Fullscreen Mode?", "Start FullScreen?",MB_YESNO|MB_ICONQUESTION)==IDNO) { fullscreen=FALSE; } if(!CreateGLWindow("Steve's Fenster",1024,768,32)) { return 0; } while(!done) { if(PeekMessage(&msg,0,0,NULL,PM_REMOVE)) { if(msg.message=WM_QUIT) { done=TRUE; } else { DispatchMessage(&msg); TranslateMessage(&msg); } } } if(active) { if(keys[VK_ESCAPE]) { done=TRUE; } else { DrawGLscene(); SwapBuffer(hDC); } } KillGLWindow(); return (msg.wParam); }
-
Wie wärs wenn du die Fehlermeldung hier postest?
-
Naja, ich denke mal ich bin schon etwas weiter. Ich bin jetzt soweit das er mir nur nicht die Klammer nach dem BOOL CreateGLwindow(....) compilet, nämlich :
{.
Allerdings kann ich es mir nicht erklären weil ich die Klammer hinterher wieder schliesse.BOOL CreateGLWindow(char* title, int width, int height, int bits, bool fullscreenflag) { GLuint PixelFormat; // Holds The Results After Searching For A Match WNDCLASS wc; // Windows Class Structure DWORD dwExStyle; // Window Extended Style DWORD dwStyle; // Window Style RECT WindowRect; // Grabs Rectangle Upper Left / Lower Right Values WindowRect.left=(long)0; // Set Left Value To 0 WindowRect.right=(long)width; // Set Right Value To Requested Width WindowRect.top=(long)0; // Set Top Value To 0 WindowRect.bottom=(long)height; // Set Bottom Value To Requested Height fullscreen=fullscreenflag; // Set The Global Fullscreen Flag hInstance = GetModuleHandle(NULL); // Grab An Instance For Our Window wc.style = CS_HREDRAW | CS_VREDRAW | CS_OWNDC; // Redraw On Size, And Own DC For Window. wc.lpfnWndProc = (WNDPROC) WndProc; // WndProc Handles Messages wc.cbClsExtra = 0; // No Extra Window Data wc.cbWndExtra = 0; // No Extra Window Data wc.hInstance = hInstance; // Set The Instance wc.hIcon = LoadIcon(NULL, IDI_WINLOGO); // Load The Default Icon wc.hCursor = LoadCursor(NULL, IDC_ARROW); // Load The Arrow Pointer wc.hbrBackground = NULL; // No Background Required For GL wc.lpszMenuName = NULL; // We Don't Want A Menu wc.lpszClassName = "OpenGL"; // Set The Class Name if (!RegisterClass(&wc)) // Attempt To Register The Window Class { MessageBox(NULL,"Failed To Register The Window Class.","ERROR",MB_OK|MB_ICONEXCLAMATION); return FALSE; // Return FALSE } if(fullscreen) { DEVMODE dmScreenSettings; dmScreenSettings.dmPelsWidth=width; dmScreenSettings.dmPelsHeight=height; dmScreenSettings.dmBitsPerPel=bits; dmScreenSettings.dmFields=DM_BITSPERPEL|DM_PELSWIDTH|DM_PELSHEIGHT; } if(fullscreen) { dwExStyle=WS_EX_APPWINDOW; dwStyle=WS_POPUP; ShowCursor(TRUE); } else { dwExStyle=WS_EX_APPWINDOW | WS_EX_WINDOWEDGE; dwStyle=WS_OVERLAPPEDWINDOW; } if(!(hWnd=CreateWindowEx( dwExStyle, "OpenGL", title, WS_CLIPSIBLINGS | WS_CLIPCHILDREN | dwStyle, 0,0, WindowRect.right-WindowRect.left, WindowRect.bottom-WindowRect.top, NULL, NULL, hInstance, NULL))) static PIXELFORMATDESCRIPTOR pfd= { sizeof(PIXELFORMATDESCRIPTOR), 1, PFD_DRAW_TO_WINDOW | PFD_SUPPORT_OPENGL | PFD_DOUBLEBUFFER | PFD_TYPE_RGBA, 0,0,0,0,0,0, 0, 0, 0, 0,0,0,0, 0, PFD_MAIN_PLANE, 0, 0,0,0 }; ShowWindow(hWnd,SW_SHOW); SetForegroundWindow(hWnd); SetFocus(hWnd); ReSizeGLScene(width,height); return TRUE; } LRESULT CALLBACK WndProc(HWND hWnd,UINT message,WPARAM wParam,LPARAM lParam) { switch(message) { case WM_CLOSE: { PostQuitMessage(0); return 0; } } return DefWindowProc(hWnd,message,wParam,lParam); } int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR lpCmdLine,int nCmdShow) { MSG msg; bool done=FALSE; if (MessageBox(NULL,"Would You Like To Run In Fullscreen Mode?", "Start FullScreen?",MB_YESNO|MB_ICONQUESTION)==IDNO) { fullscreen=FALSE; } if(!CreateGLWindow("Steve's Fenster",1024,768,32)) { return 0; } while(!done) { if(PeekMessage(&msg,0,0,NULL,PM_REMOVE)) { if(msg.message=WM_QUIT) { done=TRUE; } else { DispatchMessage(&msg); TranslateMessage(&msg); } } } if(active) { if(keys[VK_ESCAPE]) { done=TRUE; } else { DrawGLscene(); SwapBuffer(hDC); } } KillGLWindow(); return (msg.wParam); }
-
weiss denn wirklich keiner die Lösung/Antwort ?
-
du bist lustig.
-
Hallo
Warum schreibst du uns nicht, was der Compiler meldet?
chrische
-
Compiler Fehlermeldung :
In functionBOOL CreateGLWindow(char*, int, int, int, bool)': a function-definition is not allowed here before '{' token 168 D:\\Dokumente und expected,' or `;' before '{' token
-
Ich wiess jetzt wenigstens shcon einmal, das es von diesem Code stück abhängt :
BOOL CreateGLWindow(char* title,int width,int height,int bits,bool fullscreenflag) {Der Compiler sagt mir dann immer das er die Klammer nicht compilen kann, weil
danach eine Variablen deklaration folgt.
Danke im Voraus.
-
Bei CreateGLWindow ist keine Funktionsdefinition erlaubt vor einenm {, stattdessen wird ein ; oder , erwartet. f'`8k
AutocogitoGruß, TGGC (making great games since 1992)