Heightmap - Unerwünschte Linien



  • Hey!

    Mein kleiner Terraingenerator ist fertig. Er liest eine 24bit-Bitmap pixelweise (Mit einstellbarem pixel-skip natürlich) ein und generiert daraus die Vertexdaten. Bei einer Ebene stimmt alles.

    Hier habe ich die HeightMap weiß gelassen, nur links und rechts am Rand ein dünner, vertikaler und schwarzer Strich.

    http://krautland.net/gfx/terrain.jpg
    (Bitte vergrößern, um den Effekt genau zu sehen!)

    Aber woher kommen die Linien? Was habe ich falsch gemacht? Es handelt sich um trianglestrips.

    So ca.:

    Vertices:

    48--49--50--51--52--53--54--55--56--57--58--59 
     |   |   |   |   |   |   |   |   |   |   |   | 
    36--37--38--39--40--41--42--43--44--45--46--47 
     |   |   |   |   |   |   |   |   |   |   |   | 
    24--25--26--27--28--29--30--31--32--33--34--35 
     |   |   |   |   |   |   |   |   |   |   |   | 
    12--13--14--15--16--17--18--19--20--21--22--23 
     |   |   |   |   |   |   |   |   |   |   |   | 
    00--01--02--03--04--05--06--07--08--09--10--11
    

    Indices:
    0, 12, 1, 13, 2, 14, 3, 15, 4, 16, 5, 17, 6, 18, 7, 19, 8, 20, 9, 21, 10, 22, 11, 23, 23, 12, 12, 24, 13, 25, 14, 26, 15, 27, ...

    Mfg

    EDIT:
    Hier ein Stück genauer:

    http://krautland.net/gfx/damn.jpg



  • ceplusplus schrieb:

    Indices:
    0, 12, 1, 13, 2, 14, 3, 15, 4, 16, 5, 17, 6, 18, 7, 19, 8, 20, 9, 21, 10, 22, 11, 23, 23, 12, 12, 24, 13, 25, 14, 26, 15, 27, ...

    Warum steht in der Indizeliste "23-23-12-12"?
    Wieso fängst du keinen neuen Trianglestrip an? bzw. travesierst die heightmap nicht so: "10-22-23-35-34" und fügst nachträglich das ausgelassen dreieick "10-11-23" ein?


  • Mod

    ceplusplus schrieb:

    Aber woher kommen die Linien?

    es gibt degenerierte dreiecke nur bei gefuellten dreiecken, nicht bei linien, deswegen siehst du die linien.



  • @megaweber

    Wurde mir so erklärt. Damit "springt" man sozusagen in die nächste Zeile, ohne eine Diagonale durch die Reihe zu bekommen...

    http://www.c-plusplus.net/forum/viewtopic-var-t-is-173530.html

    @rapso

    Also ist es egal? Den Wireframe-Modus sehe sowieso nur ich...

    MfG


  • Mod

    ceplusplus schrieb:

    Also ist es egal? Den Wireframe-Modus sehe sowieso nur ich...

    du must selbst wissen ob dir das egal ist. es ist nunmal die definition wie rasteriziert wird. schau es dir in fillmode an, dann sollten die linien weg sein.



  • Sind weg, jo, danke.
    Hmm, also sah ich bei jedem Wireframe-Terrain bis jetzt trianglelists? Solche Linien habe ich nämlich noch nie bemerkt.

    MfG


  • Mod

    wie ich hier schon sehr oft sagte, tri-lists koennen schneller sein. jedoch benutzt man oft noch strips fuer terrains, jedoch versucht man das cacheoptimierter zu machen, entweder nur indem man bei jedem zweiten streifen dann rueckwaerz die strips zieht, oder sogar indem man strips-strips hat :), also sich schlaengelnde tristrips die sozusagen einen breiten strip ergeben.


Anmelden zum Antworten