Думал два массива и рисовать линии в каждой итерации цикла, между точками с индексами этого массива.
Сами поняли, что написали?
Всё ваше сообщение говорит о изобритении велосипеда. Думаю вам надо вначале изучить существующие методы и подходы. Ссылки в конце сообщения.
В дальнейшем нужно будет реализовать вращение объекта, перемещение и масштабирование. Для этого нужно сразу прикрутить, наиболее оптимальное, решение отрисовки всех вертексов и линий между ними(возможно и полигонов).
Это ошибка. Преждевременная оптимизация вредит разработке программы. Тем более, если вы не знаете, где тормозит.
Предлагаю взглянуть на задачу не снизу-вверх, а сверх-вниз. Это добавит понимания задачи. Для этого сложную задачу разбиваете на простые подзадачи. А те в свою очередь на ещё более простые и так далее пока подзадача не станут настолько простыми, что их не будет нужды разбивать.
Что бы ничего не упустить предлогается зарисовать это в виде схемы деления.
По поводу оптимизации есть несколько методов:
1) Отсечение лишнего.
2) Группировка данных по однотипной операции.
3) Снижения точности. (Замена сложных вычислений простыми).
Конкретно в вашем случае надо использовать 2 метод.
Для вывода линии не нужно над каждой точкой линии производить проекционные преобразования достаточно сделать только над крайними точками, а далее интерполировать результаты.
Научился отрисовывать точки в перспективе. В дальнейшем нужно будет реализовать вращение объекта, перемещение и масштабирование.
Вообще-то вращение перемещение даётся до перспективного преобразования.
Всё очень просто, если представить данные в виде векторов и матриц.
http://algolist.manual.ru/graphics/3dfaq/index.phphttp://en.wikipedia.org/wiki/Rendering_(computer_graphics)#Chronology_of_important_published_ideashttp://graphicon.ru/oldgr/courses/cg99/notes/lect10/ogl_vvol.htm - последняя ссылка временно не работает (выходные в МГУ свет выключили, в будни включат)