Rendert Blitz3D bei zu vielen Dreiecken nicht mehr?
Übersicht

horstböhseBetreff: Rendert Blitz3D bei zu vielen Dreiecken nicht mehr? |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hallo!!
Ich habe folgendes Problem: Ich habe für mein Spiel ein Algorithmus geschrieben, der mir mittels der Surface-Befehle aus einer Höhenbitmap ein Terrain erstellt. Das hat bisher ganz gut geklappt, bis ich ein 266x212 Pixel großes Terrain mit sehr viel Land und wenig Wasser bepackt habe. In der besten Qualitätsstufe benutzt mein Algorithmus pro Pixel im Bild einen Vertex, in der nächsten alle 2 Pixel einen, usw. Also wenn ich dieses Bild in bester Qualität von BB3D rendern lasse, wird nur der obere Teil gerendert und der Rest wird einfach weggelassen. Die Kollisionsprüfung erfolgt aber dennoch auch in den nicht sichtbaren Bereichen. Mit der 2. Qualitätstufe wird alles gerendert! Kann es vielleicht sein, dass die in Stufe 1 zu rendernden 76.000 Dreiecke zu viel sind und BB sie einfach nicht zeichnet? Kann mir das einfach nicht erklären! |
||
ZhangHe2 |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
ich glaube pro surface sind nur rund 32k vertices erlaubt | ||
![]() |
Justus |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich als 3D-Noob vergesse gerne mal, die Sichtweite der Kamera richtig einzustellen... 8) | ||
![]() |
Xaron |
![]() Antworten mit Zitat ![]() |
---|---|---|
Es dürfen 64k Vertizes pro Surface sein.
Gruß - Xaron |
||
Cerberus X - Monkey X Reloaded! |
horstböhse |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Das erklärt das ganze natürlich!! Danke! | ||
Weazle25 |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Xaron hat Folgendes geschrieben: Es dürfen 64k Vertizes pro Surface sein.
Gruß - Xaron Also ich habe nun schon in mehreren Threads gelesen das nur 32.000 Vertices pro Mesh möglich sind (egal wie viele Surfacen). Weiss jemand wieviele Vertices denn nun wirklich möglich sind? Hat vielleicht schon jemand nachgezählt? ![]() Gruss Weazle |
||
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
16k Polygone sind auf alten Karten das Maximum pro Surface. Vertices sind es 64k, das ist auch das Maximum was du in einem .X oder .3DS Mesh Maximal haben kannst (zumindest in den Versionen dieser Formate die B3D unterstützt, also DX7 X Format und das originale non-animated 3DS).
Nun ist aber ein solches Mesh in B3D zu einer Surface wird. Insofern gilt dort dann dieses Maximum auch für eine Surface. Man sollte sowieso nie grosse Bereiche in 1 Surface packen. Wenn man sie in mehrere Surfaces packt, macht das das ganze extrem viel schneller. Denn solange nur ein einziger Vertex von einer Surface im Kamerasichtbereich ist, wird die gesamte Surface verarbeitet (nicht nur der sichtbare Vertex). Ansonsten wird die komplette Surface ignoriert. |
||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
Weazle25 |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Das erklärt natürlich einiges.
Allerdings habe ich auch festgestellt das B3D mit unter Probleme hat wenn man erst alle benötigten Vetices ( mehr als 10 auf einmal ) und dann die Polygone erstellt. Wenn man immer nur max 4 Vetices auf einmal erstellt und dann daraus die Polygone erstellt gibt es jedoch keine Probleme. Dreamora hat Folgendes geschrieben: Vertices sind es 64k, das ist auch das Maximum was du in einem .X oder .3DS Mesh Maximal haben kannst (zumindest in den Versionen dieser Formate die B3D unterstützt, also DX7 X Format und das originale non-animated 3DS).
Ich habe das gerade eben mit C4D ausprobiert. Mesh mit 200.000 Vertices erstellt und als 3ds gespeichert und das Mesh wurde dabei in mehrere Surfaces mit max 65.000 Vertices zerlegt. Gruss Weazle |
||
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Mit dem erstellen hatte ich nie Probleme.
Habe beim Terrrainsystem alle 129x129 Vertices erzeugt und dann die Polygone dazwischen und funktionierte ohne Probleme ... Vielleicht hast du bei deiner Massenerzeugung die Vertexindizes durcheinander gebracht oder den Umlaufsinn der Polygone. Allerdings sind solche Einzelsurfaces nicht wirklich wünschenswert, da sie natürlich ziemlich an der Performance ziehen. Habs dann deswegen in ein System geändert das 8x8 - 64x64 Blöcke anlegt (jeder mit ner eigenen Terraintextur)... dadurch habe ichs auf gut 600'000 Polygone Terrain aufm Screen geschaft gleichzeitig bei rund 20 FPS ... und das auf einer GF4 MX mit 64MB RAM. Also gut 10-20x soviel wie man wirklich auf einmal brauchen würde, wenn man das System ein wenig optimiert so das Dinge die "unsichtbar" sind gehided werden. |
||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group