HALF-LIFE PORTAL
Your Gate To Valve's Games www.hl-forum.de
PORTAL
FORUM
LOGIN
User oder E-mail:


Passwort:


oder
Registrieren
Passwort vergessen?
OpenID-Login
MISC
PARTNER

TF2 Crafting

Special Artworks by
Hayungs

Link us:
HL PORTAL

Support us:


HLPortal
auf Facebook

›› Willkommen!   ›› 95.259.675 Visits   ›› 18.316 registrierte User   ›› 41 Besucher online (0 auf dieser Seite)
23.789 Themen, 325.181 Beiträge  
    FORUM 

Beitrag anzeigen

Hier kannst du einen Beitrag einzeln betrachten

Thread


Autor Beitrag
# 1
Nachricht offline
Bullsquid
1.118 Punkte
Dabei seit: 30.03.2006
318 Beiträge
Also VIS muss zur visibility berechnung deine komplette Map in leafs aufteilen.

Ich versuche es mal in Form von einer vereinfachten Analogie zu erklären: Stell dir die Leafs mal als Styropor-Quader (mit einer bestimmten, endlichen Größe) vor. Du willst nun dein Zimmer mit diesen Styroporquadern füllen - komplett, sodass keine kubikmeter mehr "leer" ist am Ende.

So, wenn dein Zimmer nun komplett leer wäre, dann hast du gar nicht soviel zu tun, du packst ein paar von den Quadern übereinander / nebeneinander und ggf muss man mal einen etwas schmaler schneiden zur Seite oder nach oben hin.

Wenn jetzt jedoch in der Mitte des Raumes einer einen Tisch hinstellt wirds schon etwas schwieriger, dann musst du mit deinen Quadern um die Tischbeine etc, also viel "rumschneiden", bis alles passt.

Wenn jetzt ein noch komplexerer Gegenstand (was weiß ich, eine Leiter, etwas kugelförmiges..) sich dort im Raum befindet, dann wird es noch viel schwieriger für dich, deine Quader so zu schneiden, bis du um alle Gegenstände "herum" bist. Wahrscheinlich würdest du oft zu viel wegschneiden oder zu wenig und müsstest die Prozedur wiederholen usw.

Genau so geht es VIS dann auch. Und die simple Lösung ist einfach aus diesen Gegenständen ein ENTITY zu machen (welches ist eigentlich egal, aber man nimmt in source meist func_detail wenn das Objekt sonst keine Funktion hat, oder vllt noch func_lod, wenn es auf Distanz ausgeblendet wird). Der Knackpunkt ist: sobald ein Brush oder eine Brushgruppe ein Entitiy sind, muss VIS sie nicht mehr beachten bei seiner Arbeit. Da eine Leiter in deinem Fall ein zusammenhängendes Objekt ist bietet es sich an alle Teile zu selektieren und zu einem func_detail o.ä. Zu machen. Wenn man jeden Brush einzelnd zu einem func_detail macht, dann schraubt man nur unnötig die Anzahl der Entities hoch (auch die sind ja limitiert von der Anzahl..).

Eine Hauswand hingegen wäre z.B. _nicht_ sinnvoll zu einem Entity zu machen, dann würde die Engine auch alles im Haus (was sonst evtl. nicht gerendert würde) rendern und das geht dann ganz einfach auf die frames per second.
12.07.2010, 14:50 Uhr Anzeigen

Sections:  HLP  Board  Mods  Steam      Games:  HL  Op4  HLBS  HL2  HL2:Ep1  HL2:Ep2  Prtl  TF2  TFC  CS  DoD  L4D  Gunman
    USER ONLINE 
Insgesamt sind 41 Benutzer online. Davon sind 0 registriert:
    SITE OPTIONS 
- Zu Favoriten hinzufügen
- Als Startseite festlegen (IE only)
- Fehler auf dieser Seite?