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

Goergi

Frischling

  • »Goergi« ist der Autor dieses Themas

Beiträge: 85

Wohnort: NÖ

  • Private Nachricht senden

1

26.02.2005, 19:38

TriBase neu starten

Hallo!

Gibt es irgendwie die möglichkeit dass man sich während des spieles die config variable, die von tbDoConfigDialog() ausgefüllt wurde, herholt und diese dann verändert (zB auflösung ändern)
dann soll TB mit den neuen Optionen neugestartet werden ohne dass man dabei die spiel.exe neu aufrufen muss

Goergi
Get Firefox!!!
http://www.mozilla.com

rewb0rn

Supermoderator

Beiträge: 2 773

Wohnort: Berlin

Beruf: Indie Game Dev

  • Private Nachricht senden

2

26.02.2005, 20:22

Also wie man die Konfig wiederholt und/oder ändert weiß ich gerade nicht, aber wenn du die neue Konfig hast, solltest du sie so verwenden können, also die neuen Werte übernehmen:

C-/C++-Quelltext

1
2
3
tbDirect3D::Exit();

if(tbDirect3D::Init(&g_Config, "Beispielprogramm Nr. 2: Modelle", NULL, LoadIcon(hInstance, MAKEINTRESOURCE(IDI_ICON1))))


Also einfach Direct3D schließen, und dann mit der neuen Konfig und deinen Werten aufrufen, wie dus schon am Programmstart gemacht hast.
Bin mir aber nicht sicher, habs nicht getestet.

Goergi

Frischling

  • »Goergi« ist der Autor dieses Themas

Beiträge: 85

Wohnort: NÖ

  • Private Nachricht senden

3

26.02.2005, 22:09

so habe ich mir das auch vorgestellt, aber kann ich Exit und Init in zB der Move methode aufrufen oder wie macht man das am besten?
bemerkung: es soll ein grafik-optionsmenü werden.
Get Firefox!!!
http://www.mozilla.com

rewb0rn

Supermoderator

Beiträge: 2 773

Wohnort: Berlin

Beruf: Indie Game Dev

  • Private Nachricht senden

4

27.02.2005, 11:16

klar, das solltest du in jeder methode aufrufen können, die du willst.
Btw wenn du dir angucken willst, wie man eine neue Konfíguration erstellt, wirst du bestimmt in der Datei tbConfig.h im Ordner Include fündig.

Goergi

Frischling

  • »Goergi« ist der Autor dieses Themas

Beiträge: 85

Wohnort: NÖ

  • Private Nachricht senden

5

27.02.2005, 11:26

neue config erstellen sollte nicht so schwer sein...
ich würde da einfach eine "standard"-config abspeichern und dann halt reinladen (als tbConfig) und dann nur die paar parameter verändern wie zB. Auflösung, soundqualität,...

wegen der methode: kann da nix schiefgehen, dass die exit() irgendwelche variablen löscht?!? ich glaub nämlich dass dann die render() nicht mehr gehen wird (aber ist nur so eine vermutung...)
Get Firefox!!!
http://www.mozilla.com

rewb0rn

Supermoderator

Beiträge: 2 773

Wohnort: Berlin

Beruf: Indie Game Dev

  • Private Nachricht senden

6

27.02.2005, 11:40

wie gesagt, ich weiß es nicht.. aber du musst dir vorstellen: wenn exit aufgerufen wird und dann direct3d wieder neu initialisiert wird, wird die render funktion in der zeit ja gar nicht aufgerufen, weil ja gerade in der move funktion (oder wo auch immer) der code ausgeführt wird. erst danach wird render wieder ausgeführt, und dann ist direct3d ja wieder neu initialisiert und es sollte mit neuer auflösung klappen.

Goergi

Frischling

  • »Goergi« ist der Autor dieses Themas

Beiträge: 85

Wohnort: NÖ

  • Private Nachricht senden

7

27.02.2005, 12:06

ich werds mal probieren und werde dann berichten... :)
Get Firefox!!!
http://www.mozilla.com

Goergi

Frischling

  • »Goergi« ist der Autor dieses Themas

Beiträge: 85

Wohnort: NÖ

  • Private Nachricht senden

8

28.02.2005, 12:30

hmmmm...
also so geht es nicht.
ich glaub das ist genauso wie wenn du sagst du musst dich selbst erwürgen.
das kann mit den herkömmlichen methoden gar nicht gehen.

Ich probiere das nämlich an breakanoid aus und hab halt einmal die move methode modifiziert. tja. dann kommt komischerweise ganz kurz das spiel und dann ist es aus. im log steht nur dass er eine textur nicht gefunden hat.

hat sich schon irgendwer damit beschäftigt bzw.
wer weiß wie das geht ???
Get Firefox!!!
http://www.mozilla.com

Anonymous

unregistriert

9

04.03.2005, 15:33

@ Goergi

ich vermute ma, dass der texturmanager da rummeckert, weil direct3d heruntergefahren wurde!

wenn du direct3d herunterfährst, dann darf in der zeit zwischen herunterfahren und neu initialisieren natürlich nix gerendert werden, dass machste am besten mit tbSetAppActive !!!!

habs nicht getestet!!!

Slaham

Goergi

Frischling

  • »Goergi« ist der Autor dieses Themas

Beiträge: 85

Wohnort: NÖ

  • Private Nachricht senden

10

04.03.2005, 21:35

danke erstmal.

aber muss ich nicht dann trotzdem den texturmanager neu initialisieren?
oder wie meinst du das mit tbSetAppActive (Codebeispiel)
Get Firefox!!!
http://www.mozilla.com

Werbeanzeige