Mit der Dokumentation von DX11 arbeiten

Einstiegsfragen, Mathematik, Physik, künstliche Intelligenz, Engine Design
Antworten
trix0
Beiträge: 1
Registriert: 22.12.2015, 21:24

Mit der Dokumentation von DX11 arbeiten

Beitrag von trix0 »

Hallo,

ich bin neu, was das ganze mit Direct X zu tun hat. ich kann c++ und muss mich eig. nur einlesen was das betrifft. Ich habe mir die DIrect X 11 SDK heruntergeladen und habe mir die Dokumentation angeschaut. Dort habe ich ein Punkt (bei Direct X 11) gefunden "Tutorials" dort habe ich mir das erste Tutorial angeschaut und wurde dort auf das erste Tutorial von Direct X 10 ( Also Tutorial 0) verwiesen, um ein fenster zu erstellen. Dann öffne ich das Tutorial und man sieht hauptsächlich nur Code ohne großartiger erklärung ( für mich sehr ernüchternt, da ich ja nichts gelernt habe). Darauf hin habe ich versucht das Programm zu testen und bekomme gleich ein paar fehlermeldungen(23):

Schweregrad Code Beschreibung Projekt Datei Zeile Unterdrückungszustand
Fehler (aktiv) Der Bezeichner ""g_hInst"" ist nicht definiert. DirectX c:\Users\Documents\Visual Studio 2015\Projects\DirectX\DirectX\main.cpp 28
Fehler (aktiv) Der Bezeichner ""WndProc"" ist nicht definiert. DirectX c:\Users\Documents\Visual Studio 2015\Projects\DirectX\DirectX\main.cpp 11
Fehler (aktiv) Der Bezeichner ""hInstance"" ist nicht definiert. DirectX c:\Users\Olli\Documents\Visual Studio 2015\Projects\DirectX\DirectX\main.cpp 14
Fehler (aktiv) Der Bezeichner ""IDI_TUTORIAL1"" ist nicht definiert. DirectX c:\Users\Documents\Visual Studio 2015\Projects\DirectX\DirectX\main.cpp 15
Fehler (aktiv) Der Bezeichner ""szWindowClass"" ist nicht definiert. DirectX c:\Users\Documents\Visual Studio 2015\Projects\DirectX\DirectX\main.cpp 19
Fehler (aktiv) Der Bezeichner ""g_hWnd"" ist nicht definiert. DirectX c:\Users\Documents\Visual Studio 2015\Projects\DirectX\DirectX\main.cpp 31
Fehler (aktiv) Der Bezeichner ""nCmdShow"" ist nicht definiert. DirectX c:\Users\Documents\Visual Studio 2015\Projects\DirectX\DirectX\main.cpp 38
Fehler (aktiv) Es wurde ein ";" erwartet. DirectX c:\Users\Documents\Visual Studio 2015\Projects\DirectX\DirectX\main.cpp 51
Fehler C2065 "WndProc": nichtdeklarierter Bezeichner DirectX c:\users\documents\visual studio 2015\projects\directx\directx\main.cpp 11
Fehler C2065 "hInstance": nichtdeklarierter Bezeichner DirectX c:\users\documents\visual studio 2015\projects\directx\directx\main.cpp 14
Fehler C2065 "hInstance": nichtdeklarierter Bezeichner DirectX c:\users\documents\visual studio 2015\projects\directx\directx\main.cpp 15
Fehler C2065 "IDI_TUTORIAL1": nichtdeklarierter Bezeichner DirectX c:\users\documents\visual studio 2015\projects\directx\directx\main.cpp 15
Fehler C2065 "szWindowClass": nichtdeklarierter Bezeichner DirectX c:\users\documents\visual studio 2015\projects\directx\directx\main.cpp 19
Fehler C2065 "IDI_TUTORIAL1": nichtdeklarierter Bezeichner DirectX c:\users\documents\visual studio 2015\projects\directx\directx\main.cpp 20
Fehler C2065 "g_hInst": nichtdeklarierter Bezeichner DirectX c:\users\documents\visual studio 2015\projects\directx\directx\main.cpp 28
Fehler C2065 "hInstance": nichtdeklarierter Bezeichner DirectX c:\users\documents\visual studio 2015\projects\directx\directx\main.cpp 28
Fehler C2065 "g_hWnd": nichtdeklarierter Bezeichner DirectX c:\users\documents\visual studio 2015\projects\directx\directx\main.cpp 31
Fehler C2065 "szWindowClass": nichtdeklarierter Bezeichner DirectX c:\users\documents\visual studio 2015\projects\directx\directx\main.cpp 33
Fehler C2065 "hInstance": nichtdeklarierter Bezeichner DirectX c:\users\documents\visual studio 2015\projects\directx\directx\main.cpp 33
Fehler C2065 "g_hWnd": nichtdeklarierter Bezeichner DirectX c:\users\documents\visual studio 2015\projects\directx\directx\main.cpp 35
Fehler C2065 "g_hWnd": nichtdeklarierter Bezeichner DirectX c:\users\documents\visual studio 2015\projects\directx\directx\main.cpp 38
Fehler C2065 "nCmdShow": nichtdeklarierter Bezeichner DirectX c:\users\documents\visual studio 2015\projects\directx\directx\main.cpp 38
Fehler C2601 "WndProc": Lokale Funktionsdefinitionen sind unzulässig DirectX c:\users\documents\visual studio 2015\projects\directx\directx\main.cpp 51
So dann habe ich das "Tutorial" nochmal gelesen (man beachte hierbei bitte die ") und es steht kein Devise da. Keine Datei die ich einbinden soll.

Hier mein Code:

Code: Alles auswählen

#include <windows.h> //selbst eingebunden, da man ja auf die Fensterklasse zugreifen muss

int main() {

	//
	// Register class
	//
	WNDCLASSEX wcex;
	wcex.cbSize = sizeof(WNDCLASSEX);
	wcex.style = CS_HREDRAW | CS_VREDRAW;
	wcex.lpfnWndProc = WndProc;
	wcex.cbClsExtra = 0;
	wcex.cbWndExtra = 0;
	wcex.hInstance = hInstance;
	wcex.hIcon = LoadIcon(hInstance, (LPCTSTR)IDI_TUTORIAL1);
	wcex.hCursor = LoadCursor(NULL, IDC_ARROW);
	wcex.hbrBackground = (HBRUSH)(COLOR_WINDOW + 1);
	wcex.lpszMenuName = NULL;
	wcex.lpszClassName = szWindowClass;
	wcex.hIconSm = LoadIcon(wcex.hInstance, (LPCTSTR)IDI_TUTORIAL1);
	if (!RegisterClassEx(&wcex))
		return FALSE;


	//
	// Create window
	//
	g_hInst = hInstance; // Store instance handle in our global variable
	RECT rc = { 0, 0, 640, 480 };
	AdjustWindowRect(&rc, WS_OVERLAPPEDWINDOW, FALSE);
	g_hWnd = CreateWindow(szWindowClass, L"Direct3D 10 Tutorial 0: Setting Up Window", WS_OVERLAPPEDWINDOW,
		CW_USEDEFAULT, CW_USEDEFAULT, rc.right - rc.left, rc.bottom - rc.top, NULL, NULL,
		hInstance, NULL);

	if (!g_hWnd)
		return FALSE;

	ShowWindow(g_hWnd, nCmdShow);

	//
	// Main message loop
	//
	MSG msg = { 0 };
	while (GetMessage(&msg, NULL, 0, 0))
	{
		TranslateMessage(&msg);
		DispatchMessage(&msg);
	}

	LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam){
		PAINTSTRUCT ps;
		HDC hdc;

		switch (message)
		{
		case WM_PAINT:
			hdc = BeginPaint(hWnd, &ps);
			EndPaint(hWnd, &ps);
			break;

		case WM_DESTROY:
			PostQuitMessage(0);
			break;

		default:
			return DefWindowProc(hWnd, message, wParam, lParam);
		}

		return 0;
	}


}
Die Include-Zeile habe ich selber hinzugefügt....

Kann ich nur mit der Dokumentation nicht umgehen oder ist die wirklich so unkomplett?
Benutzeravatar
Biolunar
Establishment
Beiträge: 154
Registriert: 27.06.2005, 17:42
Alter Benutzername: dLoB

Re: Mit der Dokumentation von DX11 arbeiten

Beitrag von Biolunar »

Das sind doch alles triviale Fehler; wenn du C/C++ kannst solltest du auch mit deren Fehlermeldungen umgehen können. Was du brauchst ist ein WinAPI Tutorial, denn da scheint es zu hapern! Fenstererstellung wird wohl von der DX Anleitung als bekannt angenommen.
Antworten