Не надо избегать близости звёзд: несколько слишком близких звезд - это кратная звезда. Генерь, потом проверяй и никаких гвоздёв. А от сликом большого числа кратных звёзд защитись с помощь теории вероятности и отношения численности звёздного населения к общему объёму.
Пакость же возможна такая: кратная звезда с планетами, у которой расстояние между компонентами больше радиусов планетных орбит. Это может привести к неустойчивости орбит, особенно если планета попадёт в окрестности центра масс двух звёзд или всей системы.
Да нормально всё. Когда нибудь и на метагалактику замахнутся, а пока одна галактика.
Попробуй рассмотреть галактику в виде часового механизма. Где одна солнечная система играет роль одной шестеренки, взаимодействующий с другими. Дальше вроде все просто. Одна звездная система, одна координата. Можно попробовать построить модельку в 3D s max с вращающимися дисками на которых отдельные вершины будут обозначать планеты. Так можно найти нужные тебе координаты в любой момент времени. Координата x-0. y-0. z-0. центр галактики.
P.S. Удачных расчетов =)
Расстояния между планетами - порядка астрономической единицы (1 а.е. = 149598000 км), радиус нашей Солнечной системы порядка 100 а.е. Другие системы могу быть несколько сотен а.е. Расстояния звёздами - порядка парсека (1 пс = 3.26 св. лет = 206265 а.е. = 3.08568e13 км), т.е. на 3-4 порядка больше размеров планетной системы. Поэтому вероятность того, что две звезды случайно сгенерятся ближе 100 а.е., крайне низка. Если хочется, можно пройтись по всем звёздам, найти для каждой ближайшую, и удалить её, если она ближе 1000 а.е.
У двойных звёзд расстояние между компонентами бывает от радиуса звезды (контактные тесные двойные) до сотен а.е. Можно ограничиться расстоянием в 1000 а.е. Двойные звёзды надо делать как и планеты - внутренними объектами объекта "планетная система", потому что они двигаются по орбитам вокруг общего центра масс. Я делал так. Есть объект "планетная система", из таких объектов состоит Галактика. Издалека они рендерятся как звезды. При приближении создаётся сама система - с вероятностью 50% это одиночное солнце и планеты вокруг него, в противном случае создаётся барицентр двойной звезды, вокруг него по эллиптически обритам обращаются два солнца, вокруг них уже планеты, если пара широкая. Если пара достаточно компактная, возможны планеты на орбитах сразу вокруг обоих солнц (вогруг барицентра системы). Так же с некоторой вероятностью одно из солнц в широкой паре может в свою очередь быть двойным, а вокруг компактной пары может быть третье солнце, которое тоже может быть двойным, и т.д. Такой рекурсивный метод генерации системы.
В общем, можешь генерить учаток галактики в два этапа. Сначала сгенерировать звёзды с рандомными координатами в заданном в объёме. А потом убедиться, что нет звёзд ближе 1000 а.е. (0.005 пк) друг от друга. Хотя я такую проверку не использую, и ещё ни разу не наткнулся на пересекающиеся планетные системы.
Тема в архиве.