ENG Новый сайт

Расширенный поиск
[ Новые сообщения · Пользователи · Правила ]
SpaceEngine TODO - обновлено 11 июля 2016
GV_FiQstДата: Вторник, 06.09.2011, 20:10 | Сообщение # 121
Строитель Миров
Группа: Команда SE
Украина
Сообщений: 1062
Награды: 3
Статус: Offline
Quote (Crab)
Когда у игре будет галактическая карта они могут там быть. Или случайно при сверхпарсековом полете=))) Вероятность случайно встретить планету равна нулю. попробуй случайно остановиться даже рядом с обычной планетой или звездой, летя на скорости несколько парсек в секунду. Ну тогда предлогаю в игре сделать планемо таким ценным бонусом. Тоесть что бы найти планемо нужно купить где то информацию о местонахождении и только тогда лететь туда.


Это не очень хорошая как на меня идея. Ведь Space engine просто БЕСПЛАТНЫЙ симулятор иследований космоса а не что то наподобии Need For Speed World в которой можно максимальный уровень достичь всего за неделю если заплатить спидбусты за которые надо давать деньги.

Quote (Шворц)
Ну и использовать в геймплее планемо соответственно - секретные базы, тайные (с)клады, сокровища давно исчезнувших цивилизаций... Найти планемо можно только случайно наткнувшись на неё. Для игрока - неизмеримо маленькая вероятность, но предполагается, что игрок не один по космосу шныряет... Кто-то когда-то случайно наткнулся, кому-то что-то рассказал... В итоге - какие-то планемо будут отмечены на общедоступной карте, координаты каких-то можно будет купить только на чёрном рынке, координаты третьих могут быть доступны только при получении определённой миссии...


Вам не кажется что вы предлагаете зделать из увлекательно песочницы тупую проходилку где надо все делать так как написано в скрипте?


AMD Phenom II X2 555 3200 MHz;
RAM 4GB 1333 Hz;
ATI Radeon HD 5670 1024 Mb;
ОС Win 7 tabulorasa edition 32 bit
CrabДата: Вторник, 06.09.2011, 21:29 | Сообщение # 122
Первооткрыватель
Группа: Модераторы
Российская Федерация
Сообщений: 444
Награды: 1
Статус: Offline
Блин, ты не понял что я имел ввиду) Я имел ввиду игровую валюту) Ну как в Паркане 2, надо купить координаты звёздных систем а потом туда уже лететь можно, только тут можно будет долететь и своим ходом, если ты профессор астрофизики и сможешь всё рассчитать)
Насколько я знаю игра не планируется быть mmorpg.


Windows 8 x64
Intel Core2 Duo CPU E7500 2.93GHz.
4 GB RAM.
Nvidia GeForce 550Ti 1024mb.
DukeДата: Четверг, 08.09.2011, 01:07 | Сообщение # 123
Нет аватара
Первооткрыватель
Группа: Команда SE
Антарктика
Сообщений: 419
Награды: 2
Статус: Offline
Quote (SpaceEngineer)
Пока не могу посмотреть, интернет через мобильник. Напомни через пару дней

Напоминаю. Попадалась еще одна публикация http://www.cs.sjsu.edu/~teoh/research/papers/isvc09.pdf по генерации ландшафта с реками. Насколько я понял из описания сперва создается сеть рек а затем фракталами генерируется ландшафт. Исходники можно скачать здесь http://www.cs.sjsu.edu/~teoh/research/software/RiverLandSource.zip
В архиве вместе с исходниками есть скомпилированный проект. Судя по документу RiverLand генерирует 256х256 карту высот ландшафта за 0.2 секунды, 512х512 за 0.9, 1024х1024 за 4 секунды на 2 GHz CPU и 2 GB RAM. Возможно если удастся его эффективно реализовать на GPU можно будет получить прирост в быстродействии. Прикладываю пример ландшафта готорый он генерирует.


P.S.: Вопрос немного из другой темы, для создания текстуры процедурных спиральных галактик используется алгоритм похожий на генерацию циклонов или это заранее подготовленные текстуры?
Прикрепления: 8789103.jpg (162.8 Kb)
SpaceEngineerДата: Четверг, 08.09.2011, 15:36 | Сообщение # 124
Автор Space Engine
Группа: Администраторы
Российская Федерация
Сообщений: 5547
Награды: 55
Статус: Offline
Спасибо за напоминание. Но чё-то реки у них какие-то слишком уж синусоидальные...

Quote (Duke)
P.S.: Вопрос немного из другой темы, для создания текстуры процедурных спиральных галактик используется алгоритм похожий на генерацию циклонов или это заранее подготовленные текстуры?

Процедурных галактик нет вообще. Есть просто десяток моделей, которые всюду повторяются. Генерируются они по заданным в файлах текстурам.


DukeДата: Четверг, 08.09.2011, 22:35 | Сообщение # 125
Нет аватара
Первооткрыватель
Группа: Команда SE
Антарктика
Сообщений: 419
Награды: 2
Статус: Offline
Quote (SpaceEngineer)
Спасибо за напоминание. Но чё-то реки у них какие-то слишком уж синусоидальные...

Это да. Однако я генерировал на парамерах по умолчанию, возможно там в настройках есть дополнительные параметры которые определяют их вид.

Quote (SpaceEngineer)
Процедурных галактик нет вообще. Есть просто десяток моделей, которые всюду повторяются. Генерируются они по заданным в файлах текстурам.

Возможно ли сделать текстуры процедурных спиральных галактик из модифицированного алгоритма циклона что бы они получались так же разнообразными?
SpaceEngineerДата: Пятница, 09.09.2011, 02:54 | Сообщение # 126
Автор Space Engine
Группа: Администраторы
Российская Федерация
Сообщений: 5547
Награды: 55
Статус: Offline
Возможно, но этого мало. Надо ввести кэш моделей галактик, аналогичный кэшу планет или звёзд. А это уйма работы (хотя копипастинг и поможет smile ).

DukeДата: Суббота, 10.09.2011, 22:17 | Сообщение # 127
Нет аватара
Первооткрыватель
Группа: Команда SE
Антарктика
Сообщений: 419
Награды: 2
Статус: Offline
Попалась еще одна публикация по облакам, хотя она возможно уже знакома.
Насколько я понимаю это диссертация Antoine Bouthors
http://evasion.imag.fr/~Antoine.Bouthors/research/phd/
К сожелению она без исходных кодов.
Есть так же старая работа этого же автора с исходниками здесь
http://www-evasion.imag.fr/Membres....ry.html

P.S.: По облакам возник один вопрос. В данный момент текстура облаков создается по алгоритму подобного описанному здесь http://evasion.imag.fr/Publications/2006/AN06/ (там есть код шейдера)?


Сообщение отредактировал Duke - Суббота, 10.09.2011, 22:55
SpaceEngineerДата: Воскресенье, 11.09.2011, 00:33 | Сообщение # 128
Автор Space Engine
Группа: Администраторы
Российская Федерация
Сообщений: 5547
Награды: 55
Статус: Offline
Quote (Duke)
P.S.: По облакам возник один вопрос. В данный момент текстура облаков создается по алгоритму подобного описанному здесь http://evasion.imag.fr/Publications/2006/AN06/ (там есть код шейдера)?

Нет, я сам придумывал функцию. Интересно было бы почитать про этот flow noise, но там на французском...


DukeДата: Воскресенье, 11.09.2011, 21:38 | Сообщение # 129
Нет аватара
Первооткрыватель
Группа: Команда SE
Антарктика
Сообщений: 419
Награды: 2
Статус: Offline
Наткнулся на несколько публикаций по еще одному типу шума Anisotropic Noise с некоторыми интересными свойствами
http://graphics.ucsd.edu/~matthias/Papers/AnisotropicNoise.pdf
http://citeseerx.ist.psu.edu/viewdoc....ype=pdf
к сожелению без исходников.
SpaceEngineerДата: Понедельник, 12.09.2011, 01:02 | Сообщение # 130
Автор Space Engine
Группа: Администраторы
Российская Федерация
Сообщений: 5547
Награды: 55
Статус: Offline
Duke, это больше похоже на антиалиасинг шума при рендере прямо на экран. Тоже полезная вещь, но не для моей нынешней реализации.

DukeДата: Понедельник, 12.09.2011, 19:40 | Сообщение # 131
Нет аватара
Первооткрыватель
Группа: Команда SE
Антарктика
Сообщений: 419
Награды: 2
Статус: Offline
Решена ли проблема с разрешениями меньше 10 метров на вертекс? Насколько я понимаю по постам с gamedev.ru были проблемы с достижением предела точности float. Если я правильно понимаю одно из решений данной проблемы здесь
http://www.gamedev.net/topic....ecision
Там в 11 посте marius4143 описывал свою реализацию алгоритма для расчета координат для точек поверхности.
Насколько я понимаю у него для каждого патча была реализованна своя система координат которую при рендере он приводил к необходимому ему виду. Согласно 9 посту идею для этой реализации он почерпнул из этого http://citeseerx.ist.psu.edu/viewdoc....ype=pdf документа. Правда его реализация использует и CPU и поэтому ему доступен double, но возможно удастся использовать идею с отдельной системой координат для патчей.

P.S.: Кстати здесь http://www.gamedev.net/topic....ecision Флавьен описывал своим проблемы и насколько я понял из его постов он планировал перевести генерация шумов назад на CPU чтобы использовать double.


Сообщение отредактировал Duke - Понедельник, 12.09.2011, 20:51
SpaceEngineerДата: Понедельник, 12.09.2011, 22:08 | Сообщение # 132
Автор Space Engine
Группа: Администраторы
Российская Федерация
Сообщений: 5547
Награды: 55
Статус: Offline
Duke, проблема дрожания вершин решена переходом в локальную С.К. для каждого патча. Но остаётся проблема генерации шума - именно его точность не позволяет увеличить детализацию планет. Т.к. шум должен быть непрерывным по всей поверхности планеты, перейти в локальные координаты невозможно.
Для самых мелких деталей рельефа можно использовать алгоритм типа diamond-square - разбиение самой сетки, т.е. он будет как бы локальным. Но тогда не получится сгенерировать нормали, и такие детали будут с "плоским" освещением.
Пока я выжу только один выход - для hi-end железа использовать double в шейдерах (это возможно уже начиная с GeForce 7800 кажется, но более-менее быстро работает на более современном железе). А для более старого обходиться текстурными деталями, оставив сетку с детализацией в 10 метров.
Перейти назад на CPU я не могу, т.к. я изначально всё делал на GPU.


GV_FiQstДата: Вторник, 13.09.2011, 01:59 | Сообщение # 133
Строитель Миров
Группа: Команда SE
Украина
Сообщений: 1062
Награды: 3
Статус: Offline
А можна поинтересоватся зачем нужен шум?

AMD Phenom II X2 555 3200 MHz;
RAM 4GB 1333 Hz;
ATI Radeon HD 5670 1024 Mb;
ОС Win 7 tabulorasa edition 32 bit
SpaceEngineerДата: Вторник, 13.09.2011, 12:50 | Сообщение # 134
Автор Space Engine
Группа: Администраторы
Российская Федерация
Сообщений: 5547
Награды: 55
Статус: Offline
Quote (GV_FiQst)
А можна поинтересоватся зачем нужен шум?

С его помощью и генерируется рельеф.


DukeДата: Вторник, 13.09.2011, 19:42 | Сообщение # 135
Нет аватара
Первооткрыватель
Группа: Команда SE
Антарктика
Сообщений: 419
Награды: 2
Статус: Offline
Quote (SpaceEngineer)
Пока я выжу только один выход - для hi-end железа использовать double в шейдерах (это возможно уже начиная с GeForce 7800 кажется, но более-менее быстро работает на более современном железе). А для более старого обходиться текстурными деталями, оставив сетку с детализацией в 10 метров.

Насколько я понимаю из этой http://www.ixbt.com/video2/spravka-gt2xx.shtml таблицы поддержка fp64 появилась только начиная с GT200 и согласно некоторым другим документам fp64 в 8 раз медленнее fp32. Если уж совсем без fp64 не обойтись можно попробывать его эмулировать с помощью 2xfp32. Описание такого трюка с исходниками на GLSL видел здесь http://www.thasler.org/blog/?p=93 (там кстати из-за оптимизации на NVIDIA код работал неправильно и автор его подправил здесь http://www.thasler.org/blog/?p=133 ). Так же ветку по этому вопросу, с добавлением других математических операций, видел на форуме nvidia здесь http://forums.nvidia.com/index.php?showtopic=73067 (там кажется последняя версия dsmath.h внизу и если не ошибаюсь ее без регистрации можно посмотреть здесь http://www.klayge.org/wp/wp-content/uploads/2011/01/dsmath.h ).
Насколько я понял из описания реализации мандельброта эмулированный fp64 работает в 4 раза медленнее fp32. Сответственно его придется использовать как можно реже и переходить на него только на нижних уровнях лода. По некоторым источникам вычисления с fp16 работают более чем в 2 раза быстрее fp32. Возможно если бы удалось создать свой тип из 3xfp16 его скорость была бы не такой плохой и точности хватало бы для рассчетов.


Сообщение отредактировал Duke - Вторник, 13.09.2011, 20:00
Поиск:

>