entity anzeigen wenn...

Übersicht BlitzBasic Blitz3D

Neue Antwort erstellen

 

sephclone

Betreff: entity anzeigen wenn...

BeitragDi, Feb 07, 2006 20:17
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo Leute,
ich habe da ein kleines problem, ich wollte eine variable erstellen
Code: [AUSKLAPPEN]

Global ort = 1

raum1 = loadmesh("raum1.3ds")
raum2 = loadmesh("raum2.3ds")


Und dann in einer schleife immer folgendes abfragen,
Code: [AUSKLAPPEN]

If ort = 1 then
  "Zeige die entity raum1"
elseif ort = 2 then
  "Zeige die Entity raum2"
endif


So könnte ich dann auch die Kamera einstellen , wenn ort = 1 kamera ist dort und so.
Lässt sich das aber machen? Die Entity kann man ja mit positionentity an den ort setzen, wie mach ich aber das wenn ort <> 1 sie dann wieder gelöscht wird?
Oder soll ich sie dann einfach ürgentwo hin verschieben wo man sie nicht sieht?
 

TACITUS

BeitragDi, Feb 07, 2006 20:18
Antworten mit Zitat
Benutzer-Profile anzeigen
Guckst du OnlineHilfe:
HideEntity
AMD Athlon 64 X2 4200+ Dual Core Prozessor _ 1024 MB Dual Channel DDR RAM _ GeForce 7800 GT PCI Express 256 MB GDDR3 RAM _ Festplatte 410 GB _ DirectX 9.0c
User posted image
 

HW

BeitragDi, Feb 07, 2006 20:21
Antworten mit Zitat
Benutzer-Profile anzeigen
Du kannst die Räume auch mit ql:hideentity verstecken, sodass sie nicht mehr sichtbar sind. Dann solltest du sie aber nicht an denselben Ort hinstellen, da es Probleme mit der Kollision geben könnte. Am Besten wäre vllt nebeneinander.

Edit: Zu spät, aber dafür hab ich nen Link.
Edit²: Das mit der Kollision stimmt übrigens nicht, ich hab selber nochmal nachgeguckt. Nch HideEntity werden die Entities auch nicht mehr nach Kollision geprüft.
 

sephclone

BeitragDi, Feb 07, 2006 21:10
Antworten mit Zitat
Benutzer-Profile anzeigen
Danke sehr das hat mir sehr geholfen.Ich hab gar nicht drüber nachgedacht sie zu verstecken, hab die onlinehilfe alle begriffe angeguckt und nur bei freeEntity und so nachgeguckt.

Wenn ich sie verstecke wird das spiel dadurch aber nicht viel langsamer oder?
z.B wenn da jetzt 200 orte versteckt sind und 1 gerade angezeigt wird.

hectic

Sieger des IS Talentwettbewerb 2006

BeitragDi, Feb 07, 2006 23:02
Antworten mit Zitat
Benutzer-Profile anzeigen
Die Onlinehilfe sagt:
    Die Anweisung HIDEENTITY schaltet ein Objekt aus - es wird dadurch unsichtbar. Ausgeschaltete Objekte werden zudem nicht auf eine Kollision mit anderen Objekten geprüft.

    Am Anfang des Programms kann man dadurch beliebige Objekte erstellen. Diese Objekte können danach ausgeschaltet werden. Wird ein Objekt benötigt, dann kann es wieder eingeschaltet werden. Dies ist wesentlich besser, als wenn man neue Objekte mitten im Spiel erstellt. Das ist auch der Hauptzweck dieser Anweisung.

    Wenn ein Objekt ausgeschaltet wurde, dann wird es nicht mehr auf Kollision überprüft. Wenn die Kollisionsprüfung weiterhin aktiviert sein soll, dann sollte man besser ENTITYALPHA mit Alphawert 0 benutzen. Solche Objekte werden nicht gerendert, aber trotzdem noch auf Kollision überprüft.

    Wenn ein Objekt weitere angehängte Objekte (child-entitys) hat, dann werden die automatisch deaktiviert.

Was eventuell passieren kann ist, wenn die Welten sehr groß sind das der Speicher diese nicht mehr 'tragen' kann. Wo die Grenze dazu liegt, weiß ich nicht. 200 Orte werden aber ja wohl kaum in einem Spiel von nöten sein, die immer direkt und ohne Zeitverlust aktiviert werden können.

Neue Antwort erstellen


Übersicht BlitzBasic Blitz3D

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group