Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

Klaus

Treue Seele

  • »Klaus« ist der Autor dieses Themas

Beiträge: 245

Wohnort: Stuttgart

Beruf: Schüler

  • Private Nachricht senden

1

16.11.2003, 20:21

Fullscreen Modus friert den Rechner ein

Hallo

Ich hab grade ein dickes Problem.

Wenn ich im Config-Dialog der TriBase den Fullscreen Modus, und als Auflösung beispielsweise 1280x1024 auswähl, startet sich alles ganz schön, und es wird auch ein Frame gerendert - aber dann friert sofort das ganze System ein, und kein Alt+F4 - kein Strg+Alt+Entf helfen mehr. Nur der Reset-Button am PC-Gehäuse bringt wieder Leben ins Spiel :-D
Ich meine, ich hab das Problem erst, seitdem ich Snorky's inoffizielles Tribase-Update "installiert" hab.
Das ganze tritt auf auf einem

AMD Athlon XP 2000+
256MB DDR-RAM
GeForce MX 460

Wenn ich die selbe Mini-Applikation im windowed Modus starte, siehts so aus:

(Link)


Im Fullscreen zeichnet die Anwendung noch:
"Vergangene Zeit: [Kleinen Wert, ein mal z.B. 0.136]"

Der Code:

Quellcode

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
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
#include <Tribase.h>




tbConfig    g_Config;
tbFont *    g_pFont1 = NULL;
float       g_fTime = 0.0f;




tbResult Move(float fNumSecsPassed)
{
    g_fTime += fNumSecsPassed;
    
    return TB_OK;
}




tbResult Render(float fNumSecsPassed)
{
    char    pcSP[256];
    
    tbDirect3D::GetDevice()->Clear(0, NULL, D3DCLEAR_TARGET, 0, 1.0f, 0);
    tbDirect3D::GetDevice()->BeginScene();

    sprintf(pcSP, "Vergangene Zeit: %.3f", g_fTime);

    g_pFont1->Begin();
    g_pFont1->DrawText(tbVector2(10.0f), pcSP);
    g_pFont1->End();

    tbDirect3D::GetDevice()->EndScene();
    tbDirect3D::GetDevice()->Present(NULL, NULL, NULL, NULL);

    return TB_OK;
}



tbResult CleanUp()
{
    TB_SAFE_DELETE(g_pFont1);
    tbDirect3D::Exit();
    tbExit();

    return TB_OK;
}




int WINAPI WinMain (HINSTANCE   hInstance,
                    HINSTANCE   hPrevInstance,
                    char *      pcCommandLine,
                    int         nShowCommand)
{

    tbInit();

    if(int r = tbDoConfigDialog(&g_Config))
    {
        if(r == TB_CANCELED) { CleanUp(); return -1; }
        else
        {
            TB_ERROR_MESSAGE("Fehler im ConfigDialog");
            CleanUp();
            return -1;
        }
    }


    if(tbDirect3D::Init(&g_Config, "Models die zweite"))
    {
        TB_ERROR_MESSAGE("Fehler im tbDirect3D::Init");
        CleanUp();
        return -1;
    }

    g_pFont1 = new tbFont;

    if(g_pFont1->Init("Data\\Fonts\\TrebuchetMSNormal.tga","Data\\Fonts\\TrebuchetMSNormal.tbf"))
    {
        TB_ERROR_MESSAGE("Fehler in tbFont::Init");
        CleanUp();
        return -1;
    }

    if(tbDoMessageLoop(Move, Render))
    {
        TB_ERROR_MESSAGE("Fehler in der MessageLoop");
        CleanUp();
        return -1;
    }

    CleanUp();
    return 0;
}


Wie leicht zu sehen ist, hab ich mich extra nah an die Buchschreibweise gehalten, und das Programm is ja wirklich *kurz*. Is das trotzdem mein Fehler?

Also, bitte: Hilfe! :) Thx

bye
Klaus

David Scherfgen

Administrator

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

2

16.11.2003, 21:20

Hmm... vielleicht "deinstallierst" Du Snorkys Update mal (danach die Engine neu kompilieren). Mal sehen, ob der Fehler dann auch noch auftritt. Ach ja, passiert das auch bei den Programmen von der Buch-CD-ROM? Falls ja: Passiert es immer noch, wenn Du wieder die originale TriBase-DLL nimmst, also die von der CD-ROM?

Klaus

Treue Seele

  • »Klaus« ist der Autor dieses Themas

Beiträge: 245

Wohnort: Stuttgart

Beruf: Schüler

  • Private Nachricht senden

3

17.11.2003, 14:42

Zitat von »"David Scherfgen"«

Hmm... vielleicht "deinstallierst" Du Snorkys Update mal (danach die Engine neu kompilieren). Mal sehen, ob der Fehler dann auch noch auftritt. Ach ja, passiert das auch bei den Programmen von der Buch-CD-ROM? Falls ja: Passiert es immer noch, wenn Du wieder die originale TriBase-DLL nimmst, also die von der CD-ROM?



Aaaalso.
Jetzt hab ich das ganze mal neu gestartet, und zwar:

1. Komplettes TriBase Verzeichnis von CD Kopieren

2. Tribase.dll und TribaseD.dll aus Tribase\Lib in %windir%\system32 kopiert (alte überschrieben). Also nichts kompiliert

3. Ein wenig rumgetestet. Die Ergebnisse (immer Vollbild, 1280x1024)

3.1 Kapitel 2 - Alpha (08) --> Perfekt
3.2 Kapitel 2 - Texturen (04) --> Perfekt
3.3 Kapitel 3 - tbDirect3D (01) --> Perfekt
3.4 Kapitel 3 - Modelle (02) --> Perfekt
3.5 Kapitel 3 - Texte (03) --> Application Hang - Reboot :crying:
3.6 Kapitel 9 - Stencil Schatten (01) --> Perfekt

4. Bei allen die gelaufen sind ("Perfekt") hats nach dem ersten Rendern eine kurze Pause von 1/4 bis 3/4 Sek. gemacht - keine Ahnung warum, aber das stört mich jetzt auch net besonders so, und könnte evtl. schon immer so gewesen sein. Möglicherweise isses mir nur noch nie so aufgefallen.

5. Kapitel 3 - Texte (03) im Fenstermodus, aber selbiger Auflösung --> Perfekt
Damit lässt sich das vielleicht etwas eingrenzen. Der Fehler scheint also ausschließlich irgendwo bei den Fonts, und nur im Vollbildmodus aufzutreten.


Das sieht dann ungefähr so aus (sorry, unscharf - mit Digicam vom Bildschirm abfotographiert :D):


(Link)

(Link)

(Link)


Da die anderen Anwendungen ja auch immer kurz hingen, hab ich Hoffnung gehabt, dass auch diese nach einiger Zeit noch zu laufen beginnt, aber nach wenigen Minuten hab ich doch neu gebootet.
Es ist durchaus möglich, dass ich auch vor Snorky's Tribase Update eben dieses Beispiel nie im Vollbild angeschaut hab (ich hab den Vollbild Modus zumeist gemieden, weil man da immer für die Auflösung so weit runter scrollen muss ;D ).
Allerdings laufen die Spiele Breakanoid und Galactica (außer dem einen Fehler, den ich dir schon mal genannt hatte) perfekt, obwohl da auch Text zur Genüge gerendert wird.

Also ich bin ziemlich ratlos - ich hoffe sehr, dass du was finden kannst!

bye
Klaus

David Scherfgen

Administrator

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

4

17.11.2003, 16:01

Als erstes solltest Du Dir mal die neuesten Treiber für Deine Grafikkarte herunterladen, fallst Du das nicht schon getan hast. In den allermeisten Fällen werden Probleme dadurch gelöst.

Klaus

Treue Seele

  • »Klaus« ist der Autor dieses Themas

Beiträge: 245

Wohnort: Stuttgart

Beruf: Schüler

  • Private Nachricht senden

5

17.11.2003, 17:07

okay, werd mich drum kümmern :wirbel:

Klaus

Treue Seele

  • »Klaus« ist der Autor dieses Themas

Beiträge: 245

Wohnort: Stuttgart

Beruf: Schüler

  • Private Nachricht senden

6

17.11.2003, 17:38

boah, das is ja mega geil! :))) *yeah* *strike*

Hab mich selten so gefreut ;) Du bist ein Gott! (Warum bin ich da eigentlich nicht selber drauf gekommen? ;D )

Ja, also super, funktioniert alles ganz perfekt und einwandfrei - und das NVIEW und die ganzen Einstellungen da haben jetzt auch ganz neue Möglichkeiten, gegenüber dem alten Treiber.
Und ich hatte schon die Hoffnung aufgegeben... Schließlich gabs hier ja, wenn ich das richtig gesehn hab, schon ein paar TNT-Karten Besitzer, die man vertrösten musste, weil *irgendwas* halt einfach net möglich war.

Mensch *strahl*

bye
der glückliche Klaus :-D

David Scherfgen

Administrator

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

7

17.11.2003, 17:44

Schön, freut mich für Dich! :)

Klaus

Treue Seele

  • »Klaus« ist der Autor dieses Themas

Beiträge: 245

Wohnort: Stuttgart

Beruf: Schüler

  • Private Nachricht senden

8

17.11.2003, 17:54

öhm.. nur noch schnell ein anderes problem ;)

was bedeutet: 'Der Prozedureinsprungpunkt in "?tbDoMessageLoop@@YA?AW4tbResult@@P6A?AW41@M@Z0@Z" wurde in der DLL "Tribase.dll" nicht gefunden' (mit MB_ICONSTOP und MB_OK)?

Ich hoff, die Frage hat noch niemand gestellt - das Problem tritt bei mir grade fortlaufend auf :rolleyes:

David Scherfgen

Administrator

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

9

17.11.2003, 18:00

Es gibt wohl einen Unterschied zwischen der Version der Engine, die vom Programm benutzt wird, und der Version der DLL-Datei... hast Du Änderungen an der Engine vorgenommen? Wenn ja, dann sorge dafür, dass die richtige DLL-Datei im System32-Verzeichnis von Windows liegt.

Klaus

Treue Seele

  • »Klaus« ist der Autor dieses Themas

Beiträge: 245

Wohnort: Stuttgart

Beruf: Schüler

  • Private Nachricht senden

10

17.11.2003, 18:26

Erm... schon wieder ich :angel:

Also mit der Original-Engine von der CD läufts. (Wenn ich eben das Programm dann auch mit der kompilier)

Wenn ich jetzt aber Snorky's Update kompilieren will, gibts am Ende Fehler:

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
[Bis hier ganz normal...]

Generieren von Code...
Linker-Vorgang läuft...
   Bibliothek Debug/TriBaseD.lib und Objekt Debug/TriBaseD.exp wird erstellt
        1 Datei(en) kopiert.
        1 Datei(en) kopiert.
Zugriff verweigert
        0 Datei(en) kopiert.
Fehler beim Ausführen von g:\winnt\system32\cmd.exe.

TriBaseD.dll - 1 Fehler, 0 Warnung(en)


Zuerst ließen sich die beiden oberen Dateien auch nicht kopieren, aber da hatte ich nur vergessen, den Schreibschutz vom gesamten TriBase-Verzeichnis zu entfernen. Leider hab ich schlicht keine Ahnung, auf was für ne Datei hier jetzt der Zugriff verweigert wird... und das CMD.exe lässt sich so, wies da is auch ausführen (okay, könnte sein, dass der damit den Fehler drüber meint).
Sorry, dass ich dich so beanspruche ;)
Vielleicht kannst du ja auch mal dein ICQ anmachen - evtl. gehts dann schneller ;D


bye
Klaus


PS: Bei der Release verhält sichs fast genauso, nur dass da nach dem Erstellen der .lib und .dll noch folgende Meldung kommt:

Quellcode

1
LINK : warning LNK4089: Alle Verweise auf "OLEAUT32.dll" wurden durch /OPT:REF verworfen

Werbeanzeige