Elite Games - Свобода среди звезд!
.
ВНИМАНИЕ!
Наша конференция посвящена космической тематике и компьютерным играм.
Политические вопросы и происходящие в мире события в данный момент на нашем сайте не обсуждаются!

  » Занудство: Генерация координат объектов в 3D | страница 2
Конференция предназначена для общения пилотов. Для удобства она разделена на каналы, каждый из которых посвящен определенной игре. Пожалуйста, открывайте темы только в соответствующих каналах и после того, как убедитесь, что данный вопрос не обсуждался ранее.

Поиск | Правила конференции | Фотоальбом | Регистрация | Список пилотов | Профиль | Войти и проверить личные сообщения | Вход

   Страница 2 из 3
На страницу: Пред.  1, 2, 3  След. | Все страницы
Поиск в этой теме:
Канал Игры Мечты: «Занудство: Генерация координат объектов в 3D»
Xenon J
 964 EGP


Модератор
Репутация: 161
Сообщения: 3376
Откуда: Ксенонский сектор 472
Зарегистрирован: 30.03.2007
Non :
Математически я согласен опять же. Но я хочу причесывать поле астероидов осознавая, что я делаю. Я не вижу результат математической формулы, пока не выполню её. Так же и с математической чистилкой с радиусом, но идея интересная, спасибо, доберусь до компа - попробую.
Всё равно не пойму, нахрена эта извращённая математика? Есть скрипткоманда кфтвщь мфдгу (в смысле random value Гы-гы ) ,берёшь её как величину для координат и создаёшь астероиды как тебе надо. Точку-центр скопления и радиус добавить несложно. хочешь обрезать по краям - задай точные пределы координат. Например, координата Z не больше 20, и астероидное поле будет обрезано по этой плоскости. Зачем вообще создавать что-то лишнее, если можно сделать всё и сразу?

ЗЫЖ можешь глянуть мой генератор случайных карт, может что-нибудь тебе поможет. Улыбка
_________________
Последний раз редактировалось: Xenon J (23:23 23-03-2023), всего редактировалось 16 раз
    Добавлено: 12:47 21-02-2015   
SecondShadow
 365 EGP


Репутация: -4
Сообщения: 1454 Заблокирован
Откуда: Бийск. Алтай.
Зарегистрирован: 09.02.2008
Даже глядеть не хочу, обязательно что-нибудь в Землю шарахнет, если посмотрю, нафиг надо. Подозрение.
_________________
Склероз - классная болезнь, ничего не болит и новости каждый день.
    Добавлено: 14:15 21-02-2015   
Grebomet
 1460 EGP


Модератор
Рейтинг канала: 2(20)
Репутация: 261
Сообщения: 4783
Откуда: Питербурх
Зарегистрирован: 06.01.2003
Xenon J :
берёшь её как величину для координат и создаёшь астероиды как тебе надо. Точку-центр скопления и радиус добавить несложно. хочешь обрезать по краям - задай точные пределы координат.

Пересекаться же ж будут друг с другом.
_________________
Классическая ошибка, которую совершают проектировщики абсолютно надежных систем, – недооценка изобретательности клинических идиотов.
    Добавлено: 14:41 21-02-2015   
Xenon J
 964 EGP


Модератор
Репутация: 161
Сообщения: 3376
Откуда: Ксенонский сектор 472
Зарегистрирован: 30.03.2007
Grebomet :
Пересекаться же ж будут друг с другом.
Что с чем? Задать размер объектов и мин. дистанцию между ними элементарно.
_________________
Последний раз редактировалось: Xenon J (23:23 23-03-2023), всего редактировалось 16 раз
    Добавлено: 15:30 21-02-2015   
Non
 802 EGP


Модератор
Репутация: 239
Сообщения: 801

Зарегистрирован: 27.06.2006
Xenon J :
Всё равно не пойму, нахрена эта извращённая математика?

Ыыыыч Совсем запутался...

Загляните вот сюдой, посмотрите на карты Хомы и вы поймете почему я хочу такие фичи типа кисти (как Dissolve в граф редакторах). Или хотя бы просто кусторез (удаление координат группами вокруг точки.

Рофл. Я придумал как сделать.
Берется Galaxy Editor, корабль игрока двигается по карте быстро с помощью numpad'ов, и скрипт создает вокруг него астероиды.
XArgon подкинул идейку, хе. Подмигиваю

Даже лучше. Можно летать на корабле и записывать его текущие координаты снапшотами в массив. Потом использовать массив как график.
Гыыыы. Подозрение.

Последний раз редактировалось: Non (19:21 21-02-2015), всего редактировалось 2 раз(а)
    Добавлено: 19:12 21-02-2015   
Grebomet
 1460 EGP


Модератор
Рейтинг канала: 2(20)
Репутация: 261
Сообщения: 4783
Откуда: Питербурх
Зарегистрирован: 06.01.2003
Xenon J :
Что с чем?

Камушки с друг с другом.

Xenon J :
Задать размер объектов и мин. дистанцию между ними элементарно.

А что, если координаты выпадут почти в одной точке, астероиды сами расползутся?
_________________
Классическая ошибка, которую совершают проектировщики абсолютно надежных систем, – недооценка изобретательности клинических идиотов.
    Добавлено: 19:12 21-02-2015   
Non
 802 EGP


Модератор
Репутация: 239
Сообщения: 801

Зарегистрирован: 27.06.2006
Grebomet :
А что, если координаты выпадут почти в одной точке, астероиды сами расползутся?

Ну ищешь ближайший астероид - ставишь условие, если расстояние меньше положенного - генерируешь координату еще раз. Делов то.

Вот как сгладить график на скриптах.. Тоесть не линейный, а косинусно или кубически интерполированный. Тогда ваще будет огонь.



Хотя зачем его сглаживать, если просто можно чаще снимать координату с корабля. Но интерполировать интереснее, если скажем летишь на нем в одну точку, потом линейно в другую. Прикольная штука эта математика, кто бы мне про такое рассказал, когда я школяром был. Я б ее учил тогда. Супер!

Последний раз редактировалось: Non (19:24 21-02-2015), всего редактировалось 2 раз(а)
    Добавлено: 19:15 21-02-2015   
Minx
 985 EGP


Модератор
Рейтинг канала: 6(329)
Репутация: 135
Сообщения: 10533
Откуда: Gomel, Belarus
Зарегистрирован: 19.11.2005
Non :
Делов то.

Ну, делов как миниумум на O(n^2). И как максимум бесконечность, если объем и кол-во*единичный_объем сравнимы.

Non :
Прикольная штука эта математика, кто бы мне про такое рассказал, когда я школяром был. Я б ее учил тогда.

Ты бы рассказал ему какой-нибудь такой анекдот:
Цитата:
Встречаются как-то профессор математики и бывший студент медицинского университета через несколько лет после выпуска.
Профессор:
- Ну как, пригодилась вам математика в жизни?
Бывший студент:
- Да, когда у меня однажды засорился унитаз, то, изогнув проволоку ИНТЕГРАЛОМ, я с легкостью прочистил его!..

И пошел бы заниматься очередным тру-КСО.
_________________
μηδείς αγεωμέτρητος εισίτω
    Добавлено: 19:30 21-02-2015   
Non
 802 EGP


Модератор
Репутация: 239
Сообщения: 801

Зарегистрирован: 27.06.2006
Non :
Ты бы рассказал ему какой-нибудь такой анекдот:

Не, когда я был школяром, мне нравилось летать, торговать, а еще больше сектора ваять со всякими там астероидными полями.

Любое практическое применение математики для легкого создания чего либо вызвало бы у меня интерес.

Хотя мб ты и прав.. Гы-гы
    Добавлено: 19:34 21-02-2015   
Shirson
 1605 EGP


Модератор
Рейтинг канала: 7(626)
Репутация: 219
Сообщения: 16511
Откуда: 79°W 44°N
Зарегистрирован: 29.01.2002
Non :
Grebomet :
А что, если координаты выпадут почти в одной точке, астероиды сами расползутся?

Ну ищешь ближайший астероид - ставишь условие, если расстояние меньше положенного - генерируешь координату еще раз. Делов то.

Дао истинной генерации не познал ты еще Улыбка

1. Всё пространство делится на ячейки (10, 100, 1000м или чегоужонотам).
2. В ячейках генерятся или не генерятся астероиды - в зависимости от значения, выданного функуцией шума Перлина (функцией от координат). Именно базовой, никаких октав и сглаживаний тут ненужно.
3. Сгенерённые астероиды смещаются на (псевдо)рандомные вектора в пространстве (но в пределах ячейки).
...
9. Профит!
Улыбка

Никаких пересечений.
При правильно подобраных размерах ячейки и смещения - никакой "искусственности"
При постижении этой ступени дао, можно усложнить формулу и генерить астероиды на несколько ячеек ("сливанием" вместе соседних)
_________________
У меня бисера не доxеpа.
    Добавлено: 19:41 21-02-2015   
Non
 802 EGP


Модератор
Репутация: 239
Сообщения: 801

Зарегистрирован: 27.06.2006
Shirson :
Дао истинной генерации не познал ты еще Улыбка

Понятное дело, что не познал. Улыбка

Думаю, что заполнять поле можно по центрам этих самых ячеек, о которых ты говоришь.
Мол начинать с верхнего дальнего угла и сдвигать основную координату на фиксированное значение (три цикла в цикле по трем осям). Тоесть использовать это как точку отсчета. Далее рисовать или не рисовать астероид в ячейке. Далее смещать его так, чтобы край его не выходил за ячейку (тоесть - узнать радиус объекта и вычесть этот радиус из радиуса ячейки, если превратить ее в шар - чтобы потом использовать полученное значение в качестве доступной вариативности координат).

Тут интересный нюанс, хватит ли для шума Перлина стандартной простой математики X2, и как на базе простой математики сделать сложную, если это вообще возможно.

Спасибо за совет. Подмигиваю

Другое дело, что хочется различных астероидных закрученных фигурных ленточек. Их довольно просто можно создавать вокруг какой-то функции. Т.е. по 3-4 астероида на итерацию с использованием минимально допустимой дистанции (координату функции). Получалось довольно забавно, я проверял. Улыбка

Наверное мне сначала нужно познать, как выглядит каждая функция и потом из них лепить. Улыбка

Последний раз редактировалось: Non (19:54 21-02-2015), всего редактировалось 3 раз(а)
    Добавлено: 19:49 21-02-2015   
Shirson
 1605 EGP


Модератор
Рейтинг канала: 7(626)
Репутация: 219
Сообщения: 16511
Откуда: 79°W 44°N
Зарегистрирован: 29.01.2002
Для этой цели подойдёт любая функция, дающая более-менее "шумный" результат от координат. Просто Перлин даёт заведомо шикарный результат Улыбка
А если ты не пытаешься генерить это на лету (для условно-бесконечного пространства), то вполне подойдёт любой генератор псевдослучайных чисел.
_________________
У меня бисера не доxеpа.
    Добавлено: 19:53 21-02-2015   
Non
 802 EGP


Модератор
Репутация: 239
Сообщения: 801

Зарегистрирован: 27.06.2006
Shirson :
Просто Перлин даёт заведомо шикарный результат Улыбка

Я вот думаю, как мне вокруг функции кривой построить ячейки и использовать Перлина. Улыбка
Нравятся астероидные закрученные ленточки из Homeworld.

Кстати в случае с шумом Перлина, когда он не абсолютный (0 или 1 - рисовать или нет), можно попробовать использовать просто меньшие астероиды (крупность астероида в зависимости от участка функции), это должно выглядеть неплохо. Улыбка

Последний раз редактировалось: Non (19:57 21-02-2015), всего редактировалось 1 раз
    Добавлено: 19:56 21-02-2015   
Minx
 985 EGP


Модератор
Рейтинг канала: 6(329)
Репутация: 135
Сообщения: 10533
Откуда: Gomel, Belarus
Зарегистрирован: 19.11.2005
Shirson :
Всё пространство делится на ячейки (10, 100, 1000м или чегоужонотам).

Ведет к кластеризации. Теряется тру-распределение.

Если геймплей допускает, то да. Но не всегда. Даже далеко не всегда.
_________________
μηδείς αγεωμέτρητος εισίτω

Последний раз редактировалось: Minx (20:17 21-02-2015), всего редактировалось 1 раз
    Добавлено: 20:14 21-02-2015   
profit
 467 EGP


Репутация: 50
Сообщения: 288
Откуда: отсюда
Зарегистрирован: 25.12.2014
Shirson :
9. Профит!

А? Подозрение.
_________________
Wanna play?
    Добавлено: 20:24 21-02-2015   
Minx
 985 EGP


Модератор
Рейтинг канала: 6(329)
Репутация: 135
Сообщения: 10533
Откуда: Gomel, Belarus
Зарегистрирован: 19.11.2005
Ещё я наверно не совсем понял при чем тут вообще Перлин и все остальное. У Non так понимаю проблема в создании удобного инструмента для выражения своих мыслей и далее, уменьшения времени и ресурсов между шагом задумки и шагом увидеть результат.

Человек спрашивает одно, а ему в ответ все подряд и без разбору.
_________________
μηδείς αγεωμέτρητος εισίτω
    Добавлено: 20:26 21-02-2015   
Shirson
 1605 EGP


Модератор
Рейтинг канала: 7(626)
Репутация: 219
Сообщения: 16511
Откуда: 79°W 44°N
Зарегистрирован: 29.01.2002
profit :
Shirson :
9. Профит!

А? Подозрение.

Погода, говорю, хорошая Улыбка
_________________
У меня бисера не доxеpа.
    Добавлено: 20:27 21-02-2015   
Minx
 985 EGP


Модератор
Рейтинг канала: 6(329)
Репутация: 135
Сообщения: 10533
Откуда: Gomel, Belarus
Зарегистрирован: 19.11.2005
Non :
Грубо говоря хочется что-то типа визуального программирования (задать минимальную дистанцию между объектами и т.п.) с возможностью графического редактора.

В качестве примера то, что сделал Джош в 19-м апдейте LT: https://www.youtube.com/watch?v=UGP7S2Oq0M8
(начинает об этом где-то с 3:20)

Т.е. когда текстовый редактор (vim) связан с уже готовой средой и позволяет очень быстро перепрыгивать между представлением рандома в виде формул и их визуализацией. Может что-нибудь найдешь себе в этом ролике.
_________________
μηδείς αγεωμέτρητος εισίτω

Последний раз редактировалось: Minx (21:02 21-02-2015), всего редактировалось 1 раз
    Добавлено: 21:02 21-02-2015   
Minx
 985 EGP


Модератор
Рейтинг канала: 6(329)
Репутация: 135
Сообщения: 10533
Откуда: Gomel, Belarus
Зарегистрирован: 19.11.2005
Ещё как вариант.

Берем какой-нибудь распространенный и удобный 3D-редактор. Что-нить типа 3DMax или автокада. Рисуем там чего хотим из простейших отрезков-фигур-.. Потом экспортируем в текстовый файл (если склероз не изменяет, и в 3DMax ничего принципиально за последние 10 лет не поменялось, то он умел скидывать в простом текстовом формате). Пишем простой парсер, который подхватывает это и записывает в твою уже программу в её 3D-представлениях. Далее какая-то пост-обработка (астероиды вокруг отрезков, заполнить объемные фигуры такой-то плотностью и т.п.). И вот теперь можно звать profit'a (;
_________________
μηδείς αγεωμέτρητος εισίτω
    Добавлено: 21:22 21-02-2015   
Non
 802 EGP


Модератор
Репутация: 239
Сообщения: 801

Зарегистрирован: 27.06.2006
Minx :
Ещё как вариант.

Была такая мысль.
Тем более что достаточно просто интересно закрученную линию сделать, а потом вокруг нее уже плясать на каждой итерации.
Спасибо. Улыбка
    Добавлено: 21:26 21-02-2015   
Канал Игры Мечты: «Занудство: Генерация координат объектов в 3D»
На страницу: Пред.  1, 2, 3  След. | Все страницы
  
Показать: 
Предыдущая тема | Следующая тема |
К списку каналов | Наверх страницы
Цитата не в тему: Поэтому Ctrl+X отседова и Ctrl+V где-нибудь в другом месте, желательно подальше отсюда. (сердится Viallo)

  » Занудство: Генерация координат объектов в 3D | страница 2
Каналы: Новости | Elite | Elite: Dangerous | Freelancer | Star Citizen | X-Tension/X-BTF | X2: The Threat | X3: Reunion | X3: Terran Conflict | X Rebirth | X4: Foundations | EVE Online | Orbiter | Kerbal Space Program | Evochron | VoidExpanse | Космические Миры | Онлайновые игры | Другие игры | Цифровая дистрибуция | play.elite-games.ru | ЗВ 2: Гражданская война | Творчество | Железо | Игра Мечты | Сайт
   Дизайн Elite Games V5 beta.18