2017-04-30 44 views

Odpowiedz

1

Wykreśl trójkąt, kwadrat, kółko itd. Z interfejsu "Kształt", który definiuje metodę draw(). http://tutorials.jenkov.com/java/interfaces.html

Następnie utwórz listę i wsuń kształty do środka i z niego w razie potrzeby. http://www.codejava.net/java-core/collections/java-list-collection-tutorial-and-examples

W swojej metodzie onDrawFrame(GL10 gl) przeprowadź pętlę nad listą kształtów.

for(Shape s : shapeList) s.draw(gl); 

Ponadto, prawdopodobnie należy dodać pozycję kształt do kształtu dla glTranslate połączeń

+0

Czy możesz podać przykład? Nie rozumiem – amanda45

+0

@ James-Poag- Gdzie mogę utworzyć listę? – amanda45

3

utworzyć kształt interfejsu lub klasy nazywa. Będzie zawierał dane potrzebne do renderowania kształtu 3D (wierzchołki, indeksy, dane kolorów itp.). Alternatywnie VAO/VBO/identyfikator tekstury/inne identyfikatory do renderowania.

Zaletą zastosowania klasy jest to, że można zainicjować metody i zachować wszystko w jednej klasie, zachowując możliwość rozszerzenia i tworzenia większej liczby klas (kostki, piramidy itp.) W celu dostosowania obiektów.

Po utworzeniu klasy (ES), utworzyć nową listę lub mapę:

public List<Shape> shapes = new ArrayList<>(); 
//add whatever shapes you want. Create them at runtime (generate) 
// or keep them static. It is up to you 

w tej klasie tworzonej można również wdrożyć metody renderowania. Tam rysujesz obiekty. Zaletą korzystania z klasy jest możliwość dodania rysunku do tej klasy. Jeśli nie zdefiniujesz konkretnej metody losowania w klasie, musisz ręcznie narysować każdy obiekt w głównej metodzie renderowania.