Purebasium hat geschrieben:Danke für die Idee.
Ich weiß wie du es meinst (da ich selber Minecraft spiele), aber nicht genau wie man es umsetzten kann.
Z.B. Wie kann man Entitys nur anzeigen, wenn sie im sichtbaren Chuck sind? (Etwa einfach mit den x und y Werten der Kamera ausrechenen, ob es angezeigt wird und wenn nicht dann werden sie mit Hideentity verbergen?)
Könntest du mir mit einem kleinen Beispiel helfen?
vielen Dank!!!!
Du sollst ja das Entity garnicht erst erstellen, wenns nicht im sichtbaren Chunk ist (das ist ja der sinn), sonst ist es ja wieder in der OGRE Engine.
Du kennst ja die Chunkpositionen und kannst somit zB das aktuelle Chunk und die 8 Nachbarn (in einer Ebenen Welt) oder 26 Nachbarn (in einer räumlichen Welt). einladen und die darin enthaltenen Objekte und sie wieder löschen, wenn sie nicht zu den angezeigten Chunks gehören.
vermutlich weil auf dem Terrain kein NormalMapping mehr gemacht hat, das heißt eine flache Fläche ist einfach nur noch flach (in Bezug auf das Licht).
Bei NormalMapping wird ja das Licht ja auch noch in Abhängigkeit von der Textur berechnet.
Dann muss er ja eine richtig schlechte GPU besitzen oder gar keine... Bzw. CPU
Das macht bei normalen Einstellung (fast) keine Leistungseinbuße. Eventuell sind die Texturen zu groß?
Aha,
da liegt es also. Ja, Echtzeitschatten sind sehr leistungsintensiv. Modulative Schatten werden nur vom CPU berechnet, Additive meine ich auch noch (Stencil Shadows); Erst die Texture_Additiven Schatten werden zur GPU geschickt. Ich habe das Gefühl, dass da trotzdem noch eine Menge beim CPU hängen bleibt.
Erst mit eigenen Shadowcastern und -Receivern könnte man das Problem (fast) ganz auf die GPU wälzen, was jedoch derzeit nicht in PB implementiert ist.
Des weiteren spinnt das Terrain + Schatten. Ich hoffe, dass das zu PB 5.3 hin überarbeitet wird. Den Fehler haben schon Einige im englischen Forum angemerkt.
Wie viele Ent besitzen denn einen Schatten? Hilft eventuell die Renderdistanz, die du mit WorldShadows() definierst?
Klar, es wird unnatürlich (Die Schatten hören ja einfach auf). Eine andere Methode wäre ersteinmal mit MeshLOD zu arbeiten, da habe ich aber leider keine Ahnung davon (Würde ich auch gerne machen; Gleiches Problem mit den Schatten).
Mit der Renderdistanz habe ich es auch schon versucht, aber es sieht nur blöd aus und es funktioniert auch nicht besser. Und was ist dieses MeshLOD genau?
"Ordnung braucht nur der Dumme, das Genie beherrscht das Chaos. "
Albert Einstein