Heim > Artikel > Backend-Entwicklung > Wie gehe ich mit separaten Vertex- und Normalindizes in OpenGL mithilfe eines Indexpuffers um?
Herausforderungen beim OpenGL-Indexpuffer
In diesem Szenario enthält das bereitgestellte benutzerdefinierte Dateiformat separate Indizes für Scheitelpunkte und Normalen, was eine Herausforderung darstellt, wenn unter Verwendung von OpenGL, da ein einzelner Satz von Indizes erwartet wird. Um dieses Problem zu lösen, ist es notwendig, für jedes eindeutige Paar aus Vertexindex und Normalindex einen OpenGL-Scheitelpunkt zu erstellen.
Lösung mit Datenstrukturen
Betrachten Sie den folgenden Ansatz :
Wie im Problem erwähnt, kann es zu doppelten Scheitelpunkten kommen. Um dies zu bewältigen, können Sie einen Satz oder eine Hash-Tabelle verwenden, um eindeutige Scheitelpunkte zu speichern. Wenn Sie auf einen neuen Scheitelpunkt stoßen, der nicht in der Menge enthalten ist, fügen Sie ihn der Menge und dem kombinierten Scheitelpunkt-Array hinzu.
Das obige ist der detaillierte Inhalt vonWie gehe ich mit separaten Vertex- und Normalindizes in OpenGL mithilfe eines Indexpuffers um?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!