Как реализовать 3D space diving с использованием 2D графики

#c# #graphics #3d #xna #2d

#c# #графика #3D #xna #2d

Вопрос:

Я пытаюсь получить что-то вроде этогоhttp://www.fotosearch.com/CSV008/k6834584

Но у меня проблема с перемещением звезд на 2D экране.

Я ищу алгоритм, который имитирует 3D space diving.

Ответ №1:

Ваш вопрос крайне расплывчатый, я сомневаюсь, что вы сможете получить удовлетворительный ответ таким образом. Если вы уже пытались реализовать это, вам следует показать свой код и конкретные части, с которыми у вас возникли проблемы. Я бы подумал, что наиболее важными базовыми моментами, которые следует иметь в виду, было бы то, что

  1. звезды становятся больше по мере приближения к экрану
  2. звезды, которые не находятся точно в центре экрана, будут перемещаться в стороны по мере приближения
  3. звезды необходимо удалить, как только они достигнут определенного порога близости к «камере»

Вполне возможно реализовать что-то столь простое, как это, используя GDI , однако более сложные сценарии, вероятно, следует решать с использованием какой-либо библиотеки 3D-графики (например, Direct3D), чтобы позаботиться о перспективе и проекции.