43 | | 1. generateGeometry umbauen, so dass es keine Oberfläche und keinen Skirt an spezifizierten Stellen bildet. |
44 | | -> Definition eines shapes notwendig, da beim Ausschneiden ein simples Rechteck wie bei Heightmodifikation nicht ausreicht. Per Vertex: Inside polygon nötig. |
45 | | --> Aufwändig |
46 | | 1. einene weiteren "map" layer einbauen der pro Vertex entscheidet ob der Vertex gerendert wird oder nicht. |
47 | | -> Todo: Switchlayer ansehen, evtl ist dass ja schon sowas. |
48 | | 1. Alpha in der Textur aktivieren für Stellen die Löcher haben sollen und blenden lassen. |
49 | | -> Todo: Wird zFightfing vermieden wenn einer der Partner transparent ist? vermutlich nicht.) |
50 | | -> Todo: VPB Texturen liegen komprimiert vor, müssten dekomprimiert werden um Alphawerte zu ändern. |
51 | | 1. Shader nutzen, um im Fragmentshader die transparenten Elemente des Terrains zu verwerfen mittels discard keyword. |
52 | | -> todo: Wie kann man Terrain zu allen anderen Elementen unterscheiden? |
| 43 | 1. Modify generateGeometry(), to avoid surface and skirt vertices on the specified locations. |
| 44 | * Neccessary to define a shape because cutting only rectangular holes defined by lat/lon is not sufficient. Per Vertex: Check if it is inside the shape. |
| 45 | * Complex and low performance. |
| 46 | 1. Use a new "map" layer who decides for each vertex of it is rendered or not. |
| 47 | * Todo: Look at wwitchlayer, maybe it is what we need. |
| 48 | 1. use alpha blending in image layer to ctreate holes in the tiles. |
| 49 | * Todo: Does it avoid z-Fighting if one of the causing planes is transparent? Unlikely. |
| 50 | * Todo: VPB Texturen are compressed with libsquish (DXT1/DXT3) must be decompressed to modify alpha on the fly. |
| 51 | 1. Use of shaders to discard all fragments belonging to the terraintile with hole (keyword discard) |
| 52 | * Todo: How to determine which fragment belong to terrain and which to other objects? |
| 53 | * Todo: How to determine if the fragment of a terrain belongs to the hole or not? |