XNA Game Development Orbital Motion
Я пытаюсь разработать игру, которая будет проходить в космосе. Мы решили создать полноценную трехмерную среду. Наша цель - создать бесконечный мир - он создается сам при необходимости. Одна из наших проблем - как создать орбитальное движение планет оптимальным образом. Их будет сотни, и вычисление их новой позиции в каждом кадре звучит очень дорого.
У нас есть две идеи, как с этим бороться:
- Рассчитайте каждую позицию в цепи (зависит от времени) после создания планеты, а затем во время игры просто прочитайте ее из памяти. Однако это звучит как большая трата памяти.
- Рассчитайте их движение, только если они находятся в зоне видимости камеры. Но это создает еще одну проблему с обнаружением столкновений с другими объектами за пределами экрана.
У меня вопрос: кто-нибудь знает, как это сделать? Интересно, сосредоточимся ли мы на оптимизации использования процессора или памяти?