|
JLI Spieleprogrammierung
|
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
City Hunter Super JLI'ler
Alter: 39 Anmeldedatum: 18.04.2004 Beiträge: 330 Wohnort: Berlin Medaillen: Keine
|
Verfasst am: 20.04.2004, 15:08 Titel: Buch Kapi 12, 19 und das CD beispiel 19 |
|
|
Hi
Mir ist aufgefallen das die kapietels manch mal ueber haupt nicht mit die Beispiel auf der Cd zusammen passt
Habe vergessen welches Buch, ich meine die Zweite Ausgabe |
|
Nach oben |
|
|
Christian Rousselle Site Admin
Alter: 48 Anmeldedatum: 19.07.2002 Beiträge: 1630
Medaillen: Keine
|
Verfasst am: 20.04.2004, 15:20 Titel: |
|
|
Kannst du vielleicht etwas genauer sagen, was du meinst. |
|
Nach oben |
|
|
City Hunter Super JLI'ler
Alter: 39 Anmeldedatum: 18.04.2004 Beiträge: 330 Wohnort: Berlin Medaillen: Keine
|
Verfasst am: 20.04.2004, 15:31 Titel: Hi |
|
|
Wenn ich mir so Seite 204(Hello Windows in der int WINAPI WinMain) anschaue und denn Seite 276(DirectXGraphics auch wieder in der int WINAPI WinMain) ist das denn ein ganz anderer Code als denn auf der Cd
[/code] |
|
Nach oben |
|
|
Kronos Senior JLI'ler
Anmeldedatum: 19.03.2004 Beiträge: 290
Medaillen: Keine
|
Verfasst am: 20.04.2004, 15:37 Titel: |
|
|
du musst auch
HWND CReateMainWindow(HINSTANCE hInstance)
{
..
}
RegisterCLassEx(..);
return CreateWindowEX()..
selber machen!
für dich die fehlenden sachen :
Code: | // Fenster erzeugen
HWND CreateMainWindow(HINSTANCE hInstance)
{
WNDCLASSEX wndClass =
{
sizeof(WNDCLASSEX), // Größe angeben
CS_DBLCLKS | CS_OWNDC | CS_HREDRAW | CS_VREDRAW, // Standardstile
MessageHandler, // Callback-Funktion
0, // Zusätzliche Angaben
0, // nicht benötigt
hInstance, // Anwendungsinstanz
LoadIcon(NULL, IDI_WINLOGO), // Windows-Logo
LoadCursor(NULL, IDC_ARROW), // Normaler Cursor
(HBRUSH)GetStockObject(WHITE_BRUSH), // Weißer Pinsel
NULL, // kein Menü
"WindowClass", // Der Name der Klasse
LoadIcon(NULL, IDI_WINLOGO) // Windows Logo
};
RegisterClassEx(&wndClass);
return CreateWindowEx(NULL, // Keine erweiterten Stile nutzen
"WindowClass", // Klassenname
"Hello Windows", // Fenstertitel
WS_OVERLAPPEDWINDOW | // Fenster
WS_VISIBLE, // Eigenschaften
100, 100, 400, 300, // Anfangsposition und Größe
NULL, // Handle des Elternfensters
NULL, // Handle des Menüs
hInstance, // Anwendungsinstanz
NULL); // wird nicht benötigt
}
// Diese Funktion wird von Windows aufgrufen, wenn eine Nachricht
// für Ihr Programm vorliegt
LRESULT CALLBACK MessageHandler(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
{
// testen, um welche Nachticht es sich handelt
switch(msg)
{
// wenn das Fenster geschlossen wird, eine Nachricht senden,
// die das Programm beendet
case WM_DESTROY:
PostQuitMessage(0);
return 0;
break;
}
// Wenn wir uns nicht um die Nachricht gekümmert haben
// wird sie an die Standardnachrichtenverarbeitung von Windows
// geschickt
return DefWindowProc(hwnd, msg, wParam, lParam);
}
|
|
|
Nach oben |
|
|
City Hunter Super JLI'ler
Alter: 39 Anmeldedatum: 18.04.2004 Beiträge: 330 Wohnort: Berlin Medaillen: Keine
|
Verfasst am: 20.04.2004, 16:18 Titel: |
|
|
Kronos hat Folgendes geschrieben: | du musst auch
HWND CReateMainWindow(HINSTANCE hInstance)
{
..
}
RegisterCLassEx(..);
return CreateWindowEX()..
selber machen!
für dich die fehlenden sachen :
Code: | // Fenster erzeugen
HWND CreateMainWindow(HINSTANCE hInstance)
{
WNDCLASSEX wndClass =
{
sizeof(WNDCLASSEX), // Größe angeben
CS_DBLCLKS | CS_OWNDC | CS_HREDRAW | CS_VREDRAW, // Standardstile
MessageHandler, // Callback-Funktion
0, // Zusätzliche Angaben
0, // nicht benötigt
hInstance, // Anwendungsinstanz
LoadIcon(NULL, IDI_WINLOGO), // Windows-Logo
LoadCursor(NULL, IDC_ARROW), // Normaler Cursor
(HBRUSH)GetStockObject(WHITE_BRUSH), // Weißer Pinsel
NULL, // kein Menü
"WindowClass", // Der Name der Klasse
LoadIcon(NULL, IDI_WINLOGO) // Windows Logo
};
RegisterClassEx(&wndClass);
return CreateWindowEx(NULL, // Keine erweiterten Stile nutzen
"WindowClass", // Klassenname
"Hello Windows", // Fenstertitel
WS_OVERLAPPEDWINDOW | // Fenster
WS_VISIBLE, // Eigenschaften
100, 100, 400, 300, // Anfangsposition und Größe
NULL, // Handle des Elternfensters
NULL, // Handle des Menüs
hInstance, // Anwendungsinstanz
NULL); // wird nicht benötigt
}
// Diese Funktion wird von Windows aufgrufen, wenn eine Nachricht
// für Ihr Programm vorliegt
LRESULT CALLBACK MessageHandler(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
{
// testen, um welche Nachticht es sich handelt
switch(msg)
{
// wenn das Fenster geschlossen wird, eine Nachricht senden,
// die das Programm beendet
case WM_DESTROY:
PostQuitMessage(0);
return 0;
break;
}
// Wenn wir uns nicht um die Nachricht gekümmert haben
// wird sie an die Standardnachrichtenverarbeitung von Windows
// geschickt
return DefWindowProc(hwnd, msg, wParam, lParam);
}
|
|
Ich meinte aber die int WINAPI WinMain und nicht denn codet |
|
Nach oben |
|
|
City Hunter Super JLI'ler
Alter: 39 Anmeldedatum: 18.04.2004 Beiträge: 330 Wohnort: Berlin Medaillen: Keine
|
Verfasst am: 20.04.2004, 17:17 Titel: |
|
|
Habe ich irgend was noch vergessen Christian? |
|
Nach oben |
|
|
The Lord of Programming Living Legend
Alter: 37 Anmeldedatum: 14.03.2003 Beiträge: 3122
Medaillen: Keine
|
Verfasst am: 20.04.2004, 19:54 Titel: |
|
|
Was genau stimmt denn nicht mit dem Code auf der CD überein? _________________ www.visualgamesentertainment.net
Current projects: RDTDC(1), JLI-Vor-Projekt, Tetris(-Tutorial), JLI-Format
(1) Realtime Developer Testing and Debugging Console
Anschlag, Anleitung zum Atombombenbau, Sprengkörper...
Hilf Schäuble! Damit er auch was findet... |
|
Nach oben |
|
|
City Hunter Super JLI'ler
Alter: 39 Anmeldedatum: 18.04.2004 Beiträge: 330 Wohnort: Berlin Medaillen: Keine
|
Verfasst am: 20.04.2004, 20:35 Titel: |
|
|
The Lord of Programming hat Folgendes geschrieben: | Was genau stimmt denn nicht mit dem Code auf der CD überein? |
hm wie soll ich das erklaeren kann sowas nicht .
Von der CD
Code: |
// Headerdateien
#include <d3d9.h>
#include <d3dx9.h>
// Anwendungsfenster erzeugen
HWND CreateMainWindow(HINSTANCE hInstance);
// Callback Funktion zur Nachrichtenbehandlung
LRESULT CALLBACK MessageHandler(HWND hwnd, UINT msg, WPARAM wparam, LPARAM lparam);
// Funktion zur Initialisierung von Direct3D
BOOL InitDirect3D(HWND hWnd);
// Direct3D-Objekte wieder freigeben
void CleanUpDirect3D(void);
// Zeiger auf das Direct3D-Objekt (Interface)
LPDIRECT3D9 lpD3D = NULL;
// Zeiger auf das Direct3D-Device
LPDIRECT3DDEVICE9 lpD3DDevice = NULL;
|
Und im dem Buch fehlt noch dies
Code: |
// Funktion zur Initialisierung von Direct3D
BOOL InitDirect3D(HWND hWnd);
// Direct3D-Objekte wieder freigeben
void CleanUpDirect3D(void);
// Zeiger auf das Direct3D-Objekt (Interface)
LPDIRECT3D9 lpD3D = NULL;
// Zeiger auf das Direct3D-Device
LPDIRECT3DDEVICE9 lpD3DDevice = NULL;
|
|
|
Nach oben |
|
|
The Lord of Programming Living Legend
Alter: 37 Anmeldedatum: 14.03.2003 Beiträge: 3122
Medaillen: Keine
|
Verfasst am: 21.04.2004, 10:53 Titel: |
|
|
Ich vermute mal, dass im Buch die D3D-Funktionen in einer Klasse zusammengefasst wurden(und wahrscheinlich auch in einem anderen Header stehen).
Von welchem Beispiel genau redest du denn?
Dann kann ich auch mal nachschauen _________________ www.visualgamesentertainment.net
Current projects: RDTDC(1), JLI-Vor-Projekt, Tetris(-Tutorial), JLI-Format
(1) Realtime Developer Testing and Debugging Console
Anschlag, Anleitung zum Atombombenbau, Sprengkörper...
Hilf Schäuble! Damit er auch was findet... |
|
Nach oben |
|
|
City Hunter Super JLI'ler
Alter: 39 Anmeldedatum: 18.04.2004 Beiträge: 330 Wohnort: Berlin Medaillen: Keine
|
Verfasst am: 21.04.2004, 12:10 Titel: |
|
|
The Lord of Programming hat Folgendes geschrieben: | Ich vermute mal, dass im Buch die D3D-Funktionen in einer Klasse zusammengefasst wurden(und wahrscheinlich auch in einem anderen Header stehen).
Von welchem Beispiel genau redest du denn?
Dann kann ich auch mal nachschauen |
Ich rede Von Kapietel 19 DirectXGraphic |
|
Nach oben |
|
|
Jonathan_Klein Living Legend
Alter: 37 Anmeldedatum: 17.02.2003 Beiträge: 3433 Wohnort: Siegerland Medaillen: Keine
|
Verfasst am: 21.04.2004, 13:06 Titel: |
|
|
Kapitel 19 hat doch meherer Programme. Zum Schluss werden die meisten im Kapitel besprochenn Funktionen zu einer Klasse zusammengefasst. Aber es wäre unüberscihtlich, jedesmal den Kompletten qeullcode abzudrucken. Dehalb fehlt z. B. die main Funktion im Buch.
Auf der CD sind dann die completten Beispeile, die sich auch so kompilieren lassen. Mit dem was im Buch steht, sollte man aber acuh alles selbst schreiben können.
Also: Das Buch kürzt an manchen Stellen der Überscihtlichkeit wegen. Meiner einung nach, steht aber immer alles wichtige drin. Man soll ja nicht umbedingt alles abschreiben, sondern selber programmmieren, deshalb bracuht man die weggelassenen Teile nicht. Wenn du komplett abschreiben willst, kannst du ja gleich die Arbeitsbrecihe von der CD kopiren. _________________ https://jonathank.de/games/ |
|
Nach oben |
|
|
City Hunter Super JLI'ler
Alter: 39 Anmeldedatum: 18.04.2004 Beiträge: 330 Wohnort: Berlin Medaillen: Keine
|
Verfasst am: 21.04.2004, 13:17 Titel: |
|
|
Jonathan_Klein hat Folgendes geschrieben: | Kapitel 19 hat doch meherer Programme. Zum Schluss werden die meisten im Kapitel besprochenn Funktionen zu einer Klasse zusammengefasst. Aber es wäre unüberscihtlich, jedesmal den Kompletten qeullcode abzudrucken. Dehalb fehlt z. B. die main Funktion im Buch.
Auf der CD sind dann die completten Beispeile, die sich auch so kompilieren lassen. Mit dem was im Buch steht, sollte man aber acuh alles selbst schreiben können.
Also: Das Buch kürzt an manchen Stellen der Überscihtlichkeit wegen. Meiner einung nach, steht aber immer alles wichtige drin. Man soll ja nicht umbedingt alles abschreiben, sondern selber programmmieren, deshalb bracuht man die weggelassenen Teile nicht. Wenn du komplett abschreiben willst, kannst du ja gleich die Arbeitsbrecihe von der CD kopiren. |
Ja aber denn hoette Christian das hinschreiben koenne nicht in nem Codet sonder irgend wo in ein Satz im Kapietel 19 |
|
Nach oben |
|
|
Tomm Junior JLI'ler
Anmeldedatum: 23.12.2002 Beiträge: 93 Wohnort: Neuburg an der Donau Medaillen: Keine
|
Verfasst am: 23.04.2004, 22:11 Titel: |
|
|
Naja, ich bin der Meinung, dass man sich das auch denken kann, ohne dass Christian es extra nochmal hinschreibt. Das wär ja dann ungefähr so, wie wenn ein Hersteller von Feuerlöschern auf die Flaschen drauf schreiben würde, dass der Inhalt nicht brennbar ist (das gab's übrigens wirklich mal ). _________________ Tomato Interactive Homepage
Das Forum von Tomato Interactive |
|
Nach oben |
|
|
|
|
Du kannst keine Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum nicht antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen.
|
Powered by phpBB © 2001, 2005 phpBB Group Deutsche Übersetzung von phpBB.de
|