Dach erkennen, bzw Verdeckte Figur sehen...

Übersicht BlitzBasic Blitz3D

Neue Antwort erstellen

 

Tomarr Sovai

Betreff: Dach erkennen, bzw Verdeckte Figur sehen...

BeitragMo, Dez 22, 2003 22:22
Antworten mit Zitat
Benutzer-Profile anzeigen
Irgendwie mache ich momentan nen Denkfehler. Ich habe folgendes Problem.

Ich habe einen Outdoorlevel mit Isometrischer ansicht (schräg von oben).

Nun versuche ich die ganze Zeit eine Routine zu schreiben die, sobald die Spielfigur z.B. ein Gebäude betritt, quasi den Raum erkennt, und den Raumumfang um alles was über der Figur ist, also die Figur bedeckt, auszublenden.

Dann gibt es ja noch die Möglichkeit´die Sichtlinie für sich zu nutzen. Aber irgendwie sieht das alles blöd aus wenn ich den oberen Teil ausblende.

Vor allem muss das ganze auch in grösseren Räumen wie Hölen, oder einfach nur durch einzelne Bäume funktionieren. Und wenn die Figur ausserhalb des Gebäudes hinter ner Mauer steht soll nichts passsieren usw.

Gibt es da nicht schon irgendwie ne Routine die ich mir als Ideenanstoß mal anschauen kann? Oder hat jemand von euch ne Idee?

DC

Sieger des B2D Retro Wettbewerb / Aug 04

BeitragMo, Dez 22, 2003 22:28
Antworten mit Zitat
Benutzer-Profile anzeigen
Hmm geht es wirklich um 3D oder hast du nur im falschen Forum gepostet (wegen dem ISO)

Wenn es 3D ist würde ich Dächer und Decken von Höhlen und so einfach komplett als ganzes Objekt machen und dann Picken ob was zwischen Cam und Spielfigur ist (mit LinePick oder CameraPick) wenn ja, das einfach durchsichtig machen oder ganz hiden.
Core i5 4670K | 4 x 3,40 GHZ | 16 GB Ram | GeForce GTX 960 | HTC Vive | Win 10 Pro
www.UnrealSoftware.de | www.StrandedOnline.de | www.CS2D.com |
www.CarnageContest.com | www.Stranded3.com
 

Tomarr Sovai

BeitragMo, Dez 22, 2003 22:49
Antworten mit Zitat
Benutzer-Profile anzeigen
Ist schon 3D, aber auch da kann man ja gerne mal aus der Isoansich spielen Smile.

Das Problem bei deinem Vorschlag ist gar nicht mal so schlecht. Doch dann müsste ich ja bei jedem Gebäude, jede Etage eigenst laden und placen, sind allerdings schon einige 100 Gebäude von denen ich dann spreche. Was bei den Gebäuden noch geht ist bei der restlichen Welt jedoch unmöglich, denn Hölen usw. sind wirklich in meine Landschaft in die Berge eingebaut. Ich müsste dann den ganzen oberen Teil des Berges "absägen" und neu placen. Was spätestens schwierig wird wenn die Höle etwas Bergauf geht.

Oder ich müsste einen Weg finden mit dem ich feststellen kann wodurch die Figur bedeckt wird. Sind es Bäume oder Gebäudedecken dann eben die Etagen ausblenden, oder ist es ne Höle fange ich eben an die Camera erst knapp über der Spielfigur rendern zu lassen.

Hmmm, mal schaun ob das so geht, und vor allem wie das dann aussieht.
 

darkshadow

BeitragMo, Dez 22, 2003 23:52
Antworten mit Zitat
Benutzer-Profile anzeigen
Um Performance bei dem ganzen gepicke zu sparen würdest du doch eh eine If EntityInView Abfrage machen.. Aber das überprüfen, ob hinter einem Obj oder nicht könntest du auch mit EntityVisible (oder wars EntityInvisible - kA ich verwechsel es ständig) machen. Nur ist der Befehl noch recht buggy, da er nur auf der Mitte des Meshs prüft. Mal sehen, wann das mit einem Update gefixt wird.
 

Tomarr Sovai

BeitragDi, Dez 23, 2003 0:29
Antworten mit Zitat
Benutzer-Profile anzeigen
Hmm, was meinst du, würde es gehen wenn ich das Haus etagenweise aufbaue, und der etage einen Level gebe. z.B. etage 1 = value 1, etage2 value 2

und sobald ich halt auf ne entity trete alles weggeblendet wird das value > das betretene value hat?

Theoretisch müsste das recht unaufvendig sein, denn wenn ich auf etwas stehe was kein value hat einfach nicht weiter abfragen.

Aber wie sieht das theopraktisch aus?

Na mal schaun ob ich das so hinbekomme.

Markus2

BeitragDi, Dez 23, 2003 13:08
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi,
meine Idea Smile
Mit VertexAlpha arbeiten und die Dreiecke die im weg
sind einfach unsichtbar machen .

edit:
Mit LinePick der erste Dreieck finden und alle die
wo die Oberflächen Normale in der selben richting ist oder so
ähnliche richtung wie oben gedacht ausblenden .
 

Tomarr Sovai

BeitragDi, Dez 23, 2003 13:44
Antworten mit Zitat
Benutzer-Profile anzeigen
So mache ich das momentan. Nur das sieht in dem sinne blöd aus weil die obere kannte einer Mauer dann schwarz ist. So kann ich das in den hölen machen, aber wie gesagt, bei den Häusern siehts doof aus.

Neue Antwort erstellen


Übersicht BlitzBasic Blitz3D

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group