Próbuję wdrożyć LOD, aby zwiększyć wydajność mojej gry. Znalazłem bardzo fajny samouczek .
Podstawową koncepcją, którą, jak sądzę, rozumiem, jest: Uzyskaj odległość od kamery do obiektu, sprawdź odpowiedni poziom LOD, a następnie renderuj obiekt z „odpowiednią liczbą instancji”.
Jak to zaimplementować? Podany przykładowy kod jest dla mnie tajemnicą ...
Parę pytań:
- Czy to dobra metoda na wdrożenie LOD?
- Czy ktoś może wyjaśnić mi szczegółowo, w jaki sposób muszę to wdrożyć, z zapytaniami i tak dalej ...
Renderuję wszystkie moje obiekty za pomocą
GL11.glDrawElements(GL11.GL_TRIANGLES, model.getRawModel().getVertexCount(), GL11.GL_UNSIGNED_INT, 0);
Przykładowy kod wykorzystuje
GL_POINTS
. Czy mogę to również zaimplementowaćGL_TRIANGLES
?
Odpowiedzi:
Myślę, że to zależy od tego, jak już skonfigurowałeś rendering, zakładając, że używasz tablicy indicie do rysowania swoich wierzchołków w terenie, to możesz po prostu stworzyć więcej tablic indicie do rysowania, przechodząc wzdłuż kolejnych wierzchołków z każdą tablicą.
źródło