JLI Spieleprogrammierung Foren-Übersicht JLI Spieleprogrammierung

 
 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen 
 medals.php?sid=a589626aacf87e999514ed2cc52f2a48Medaillen   RegistrierenRegistrieren   ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

Buch Kapi 12, 19 und das CD beispiel 19

 
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> Fragen, Antworten und Kritik
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

BeitragVerfasst am: 20.04.2004, 15:08    Titel: Buch Kapi 12, 19 und das CD beispiel 19 Antworten mit Zitat

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
Benutzer-Profile anzeigen Private Nachricht senden AIM-Name
Christian Rousselle
Site Admin


Alter: 48
Anmeldedatum: 19.07.2002
Beiträge: 1630

Medaillen: Keine

BeitragVerfasst am: 20.04.2004, 15:20    Titel: Antworten mit Zitat

Kannst du vielleicht etwas genauer sagen, was du meinst.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
City Hunter
Super JLI'ler


Alter: 39
Anmeldedatum: 18.04.2004
Beiträge: 330
Wohnort: Berlin
Medaillen: Keine

BeitragVerfasst am: 20.04.2004, 15:31    Titel: Hi Antworten mit Zitat

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
Benutzer-Profile anzeigen Private Nachricht senden AIM-Name
Kronos
Senior JLI'ler



Anmeldedatum: 19.03.2004
Beiträge: 290

Medaillen: Keine

BeitragVerfasst am: 20.04.2004, 15:37    Titel: Antworten mit Zitat

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
Benutzer-Profile anzeigen Private Nachricht senden
City Hunter
Super JLI'ler


Alter: 39
Anmeldedatum: 18.04.2004
Beiträge: 330
Wohnort: Berlin
Medaillen: Keine

BeitragVerfasst am: 20.04.2004, 16:18    Titel: Antworten mit Zitat

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
Benutzer-Profile anzeigen Private Nachricht senden AIM-Name
City Hunter
Super JLI'ler


Alter: 39
Anmeldedatum: 18.04.2004
Beiträge: 330
Wohnort: Berlin
Medaillen: Keine

BeitragVerfasst am: 20.04.2004, 17:17    Titel: Antworten mit Zitat

Habe ich irgend was noch vergessen Christian?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden AIM-Name
The Lord of Programming
Living Legend


Alter: 37
Anmeldedatum: 14.03.2003
Beiträge: 3122

Medaillen: Keine

BeitragVerfasst am: 20.04.2004, 19:54    Titel: Antworten mit Zitat

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
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
City Hunter
Super JLI'ler


Alter: 39
Anmeldedatum: 18.04.2004
Beiträge: 330
Wohnort: Berlin
Medaillen: Keine

BeitragVerfasst am: 20.04.2004, 20:35    Titel: Antworten mit Zitat

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 Wink.

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
Benutzer-Profile anzeigen Private Nachricht senden AIM-Name
The Lord of Programming
Living Legend


Alter: 37
Anmeldedatum: 14.03.2003
Beiträge: 3122

Medaillen: Keine

BeitragVerfasst am: 21.04.2004, 10:53    Titel: Antworten mit Zitat

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 Wink
_________________
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
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
City Hunter
Super JLI'ler


Alter: 39
Anmeldedatum: 18.04.2004
Beiträge: 330
Wohnort: Berlin
Medaillen: Keine

BeitragVerfasst am: 21.04.2004, 12:10    Titel: Antworten mit Zitat

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 Wink


Ich rede Von Kapietel 19 DirectXGraphic
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden AIM-Name
Jonathan_Klein
Living Legend


Alter: 37
Anmeldedatum: 17.02.2003
Beiträge: 3433
Wohnort: Siegerland
Medaillen: Keine

BeitragVerfasst am: 21.04.2004, 13:06    Titel: Antworten mit Zitat

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
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
City Hunter
Super JLI'ler


Alter: 39
Anmeldedatum: 18.04.2004
Beiträge: 330
Wohnort: Berlin
Medaillen: Keine

BeitragVerfasst am: 21.04.2004, 13:17    Titel: Antworten mit Zitat

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
Benutzer-Profile anzeigen Private Nachricht senden AIM-Name
Tomm
Junior JLI'ler



Anmeldedatum: 23.12.2002
Beiträge: 93
Wohnort: Neuburg an der Donau
Medaillen: Keine

BeitragVerfasst am: 23.04.2004, 22:11    Titel: Antworten mit Zitat

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 Laughing ).
_________________
Tomato Interactive Homepage
Das Forum von Tomato Interactive
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen AIM-Name
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> Fragen, Antworten und Kritik Alle Zeiten sind GMT
Seite 1 von 1

 
Gehe zu:  
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

Impressum