Еще это обсуждалось на циврукоме: http://www.forum.civru.com/index.php?actio...&topic=9111
<div class='quotetop'>Цитата(Peter * 14.4.2010, 16:34) [snapback]332911[/snapback]</div>Там же я предлагаю перейти в непрерывное пространство.было бы здорово еще подсчитать регулярность сетки. то есть насколько я знаю метод разбиения икосаэдра приводит к некоторым искажениям... по идее они должны быть тем более заметны чем больше мы производим разбиений. было бы здорово сравнить минимальную и максимальную длины ребер между соседними вершинами.
[/b]
<div class='quotetop'>Цитата(Peter * 14.4.2010, 16:34) [snapback]332911[/snapback]</div>Это уже визуальная карта. Всего основных карт три: рельефная, климатическая и визуальная. Это все там же рассказывается.еще было бы круто окрашивать местность в зависимости не только от высоты.. или накладывать текстуру на какието области.. чтобы различать к примеру пустыню и степь.
[/b]
<div class='quotetop'>Цитата</div>Имеется в виду непрерывная поверхность.Там же я предлагаю перейти в непрерывное пространство.[/b]
я предлагаю не использовать непрерывное пространство.
про три основных карты как-то очень скупо. зачем столько карт? почему бы не обойтись одной?
зы: если ты хочешь непрерывное пространство, зачем тогда нужны треугольники?
EC2 - разработка игры
Мастерская Steam - мои моды для Civilization V
Last Citadel - сайт игроков Warlords III
<div class='quotetop'>Цитата(Peter * 14.4.2010, 17:11) [snapback]332915[/snapback]</div>Как и все модели я строю от простого к сложному. Первым делом задаем рельеф, это очень важно. Над чем я собственно и работал в последнее время. Таким образом автоматически появляется рельефная карта. Вторым делом задаем климат на рельефной карте, т.е. климатические пояса с температурой и влажностью. Таким образом появляется климатическая карта. Визуальная карта - итог работы, показывает "все, что вижу", т.е. пустыни, степи и т.д. Пустыня или степь или ... накладывается автоматически как текстура с учетом рельефной и климатической карты. Если сажаем лес, то он автоматически строиться опять же с учетом рельефной карты и климатической карты, программа сама выбирает какой это лес: хвойный, лиственный, пальмовый и т.д. Основная карта игрока - это визуальная карта, аналогичная той, что в циве. Две другие существуют как необходимый промежуточный этап, чтобы построить основную карту. Пусть и они будут в игре доступны, всегда могут пригодиться.я предлагаю не использовать непрерывное пространство.
про три основных карты как-то очень скупо. зачем столько карт? почему бы не обойтись одной?
зы: если ты хочешь непрерывное пространство, зачем тогда нужны треугольники?
[/b]
<div class='quotetop'>Цитата(superregistr * 14.4.2010, 17:23) [snapback]332918[/snapback]</div>а механизм наложения текстуры на часть поверхности глобуса определен уже?[/b]
EC2 - разработка игры
Мастерская Steam - мои моды для Civilization V
Last Citadel - сайт игроков Warlords III
На счет непрерывного пространства: передвижение происходит в два этапа: 1) с одного треугольника на другой 2) непрерывно по треугольнику. Треугольник - это единица поверхности, но юнит по нему может перемещаться непрерывно, пока не перейдет на другой треугольник и т.д. Треугольники опять же играют промежуточную роль для перемещения.
Основные характеристики юнита: радиус видимости (в этом радиусе он видит соседние юниты и объекты) и радиус действия (в этом радиусе он может действовать, например атаковать). Треугольники существенно убыстряют процесс обнаружения соседей, т.к. нужно рассмотреть только соседние треугольники.
<div class='quotetop'>Цитата(Peter * 14.4.2010, 17:27) [snapback]332920[/snapback]</div><div class='quotetop'>Цитата(superregistr * 14.4.2010, 17:23) [snapback]332918[/snapback]а механизм наложения текстуры на часть поверхности глобуса определен уже?[/b]
[/b][/quote]
Обычными средствами наложения текстуры в опенгл. В проге есть функция, которая по значению дискретного радиуса ставит в соотвествие точке определенный цвет. Задание текстуры будет работать аналогично. По значениям трех точек (а именно какой у них рельеф и какой климат) программа в соответствии будет накладывать определенную текстуру. Но сначала нужно создать климатическую карту.
<div class='quotetop'>Цитата(superregistr * 14.4.2010, 17:34) [snapback]332921[/snapback]</div>а зачем это надо? по моему проще между вершинами передвигатьсяНа счет непрерывного пространства: передвижение происходит в два этапа: 1) с одного треугольника на другой 2) непрерывно по треугольнику. Треугольник - это единица поверхности, но юнит по нему может перемещаться непрерывно, пока не перейдет на другой треугольник и т.д. Треугольники опять же играют промежуточную роль для перемещения.
[/b]
EC2 - разработка игры
Мастерская Steam - мои моды для Civilization V
Last Citadel - сайт игроков Warlords III
<div class='quotetop'>Цитата(Peter * 14.4.2010, 17:45) [snapback]332927[/snapback]</div><div class='quotetop'>Цитата(superregistr * 14.4.2010, 17:34) [snapback]332921[/snapback]а зачем это надо? по моему проще между вершинами передвигатьсяНа счет непрерывного пространства: передвижение происходит в два этапа: 1) с одного треугольника на другой 2) непрерывно по треугольнику. Треугольник - это единица поверхности, но юнит по нему может перемещаться непрерывно, пока не перейдет на другой треугольник и т.д. Треугольники опять же играют промежуточную роль для перемещения.
[/b]
[/b][/quote]
Ихмо, накладывает неудобства. Если в реальности можешь пройти прямо, то так нужно будет огибать по вершинам узлов. Да и красивее и удобнее как-то иметь дело с непрерывным пространством, чем с дискретным
ЗЫ Мы ведь не ищем легких путей. Правда?![]()
<div class='quotetop'>Цитата(superregistr * 14.4.2010, 17:51) [snapback]332929[/snapback]</div>может и красивее (не существенно) но никак не удобнее. рассчитывать границы объектов в пространстве и притом на сфере - это ни с какого боку не удобнее чем привязка объектов к вершинам. и потом какой практический смысл всего этого (кроме "красоты" - причем в ущерб наглядности. имхо в стратегии красота не должна доминировать над наглядностью) мы же не тактический симулятор вроде как делаем а глобальную стратегиюИхмо, накладывает неудобства. Если в реальности можешь пройти прямо, то так нужно будет огибать по вершинам узлов. Да и красивее и удобнее как-то иметь дело с непрерывным пространством, чем с дискретным
[/b]![]()
EC2 - разработка игры
Мастерская Steam - мои моды для Civilization V
Last Citadel - сайт игроков Warlords III
<div class='quotetop'>Цитата(Peter * 14.4.2010, 17:58) [snapback]332931[/snapback]</div><div class='quotetop'>Цитата(superregistr * 14.4.2010, 17:51) [snapback]332929[/snapback]может и красивее (не существенно) но никак не удобнее. рассчитывать границы объектов в пространстве и притом на сфере - это ни с какого боку не удобнее чем привязка объектов к вершинам. и потом какой практический смысл всего этого (кроме "красоты" - причем в ущерб наглядности. имхо в стратегии красота не должна доминировать над наглядностью) мы же не тактический симулятор вроде как делаем а глобальную стратегиюИхмо, накладывает неудобства. Если в реальности можешь пройти прямо, то так нужно будет огибать по вершинам узлов. Да и красивее и удобнее как-то иметь дело с непрерывным пространством, чем с дискретным
[/b]
[/b][/quote]
Ихмо есть разница, юнит ходит только по узлам или юнит ходит как захочет. Техническое усложнение не очень велико, в несколько раз, а ощущение "реальности" увеличивается в порядки.
<div class='quotetop'>Цитата</div>для игрока, так же игрок должен обдумывать обход по узлам. А в непрерывном случае просто идет вперед.удобнее[/b]
<div class='quotetop'>Цитата(superregistr * 14.4.2010, 18:05) [snapback]332932[/snapback]</div>по моему наоборот. ощущение реальности на пару процентов увеличивается а сложность возрастает раз в 100 или 1000.Ихмо есть разница, юнит ходит только по узлам или юнит ходит как захочет. Техническое усложнение не очень велико, в несколько раз, а ощущение "реальности" увеличивается в порядки.
[/b]
<div class='quotetop'>Цитата(superregistr * 14.4.2010, 18:05) [snapback]332932[/snapback]</div>ну да, в непрерывном случае он будет линейкой измерять расстояния. одно дело когда юнит идет "из занзибара в гондурас" а другое - "из 234 градусов южной широты 453 восточной долготы в 345 северной широты 644 западной долготы". для глобальной стратегии это на мой взгляд абсолютно излишняя и более того, очень вредная детализация.для игрока, так же игрок должен обдумывать обход по узлам. А в непрерывном случае просто идет вперед.
[/b]
зы:
вообще по концепции вроде как so far остановились на армиях а не на юнитах. то есть двигать туда сюда юнитов никто не будет, разве что для наглядности какие то фигурки будут бегать по горам по долам.
EC2 - разработка игры
Мастерская Steam - мои моды для Civilization V
Last Citadel - сайт игроков Warlords III
Долго обдумывая модель положения и перемещения, все же пришел именно к непрерывной модели как наиболее интересной. Представь просто шар-Землю, выбираешь точку на сфере, перемещаешь в нее свой юнит (для условности говорю пока юнит). Все эти треугольники нужны поскольку-постольку, чтобы была поверхность. Также можно сделать в циве, представь, что ты можешь теперь перемещаться не только по клеточкам, но внутри клеточек как захочешь.
<div class='quotetop'>Цитата</div>не совсем понял, что ты имеешь в виду. Если ты говоришь о положении, то это просто точка с углами тета и фи. Если ты говоришь про радиусы, то я придумал некоторые алгоритмы, которые достаточно быстро будут вычислять юнитов в них (в радиусах).рассчитывать границы объектов в пространстве и притом на сфере[/b]
В смысле находящихся в радиусах.
Относительно движка.
Пока выделил для себя последовательные первостепенные задачи:
1) создать редактор рельефа, с опциями создать, сохранить, загрузить
2) разработать модель положения и перемещения
3) разработать модели радиусов
4) заняться климатической картой
5) реки и озера
6) создавать 3D объекты для визуальной карты (предположительно в Blender)
Ихмо.
<div class='quotetop'>Цитата</div>Думал я об этом, но пока решил сильно не заморачиваться, оставив мысль в потаённом уголке. Главное всё таки некая фиксированная ячейка позволяющая упростить разбиение на зоны поверхности шарика, а в каких координатах она считается это уже не так важно, вернее это проблема отображения, а не логики игры. В базе просто будет ячейка с номером таким-то. Передвижение юнитов, поселения и злдания привязываются к узлам ячеек, также как ландшафт и ресурсы. Впрочем это всё вы и так знаетеНе проще ли полностью перейти в сферическую систему координат?[/b]![]()
Разработка игры Вселенная: расширяя пределы. Universe: extending the frontier. (UEF)
superregistr ну ты представь поиск пути например - не по ячейкам а на поверхности сферы, с учетом препятствий непредсказуемой формы. Расположение объектов опять же не фиксированной формы (многоугольники в основании), чтобы их края не пересекались, вычисление расстояния между ними (а не между их центрами) и т.п. - и все это на сфере. Ты несколько месяцев делал такую простую вещь как сетку из треугольников (которая теперь тебе оказалась нафиг не нужна), представь сколько ты будешь возиться со всей этой трехмерной геометрией.
Просто не понятно, ради чего всё это? Я не понимаю ради чего. Просто "чтобы было"![]()
Но если тебе это интересно твое дело конечно, просто к игре эти изыски уже не имеют отношения. Если ты не будешь делать на этой основе 3д шутер![]()
EC2 - разработка игры
Мастерская Steam - мои моды для Civilization V
Last Citadel - сайт игроков Warlords III
<div class='quotetop'>Цитата</div>Вставлю маленький комментарий. Узлы первичны, треугольники вторичны. Но и те, и те важны, т.к. задают информацию о поверхности.Ты несколько месяцев делал такую простую вещь как сетку из треугольников (которая теперь тебе оказалась нафиг не нужна)[/b]
Насколько легче будет пользоваться только узлами для перемещения? Что будет с поверхностью, которая не задействована? (Вообще то есть единственный способ это проверить, сделать и посмотреть)
В пределах треугольника - плоскость, на которой не должно быть препятствий непредсказуемой формы. К тому же у меня всегда есть на всякий случай спасительный козырь в кармане. Юнит может занимать под себя фиксированный треугольник и видеть соседние (типа как в циве).
Вообще надо поэкспериментировать над разными способами и разными реализациями. Но вопрос остается вопросом: не появится ли у игрока впечатления, что его опять обманули?
ЗЫ
<div class='quotetop'>Цитата</div>В этом и вся прелесть использования треугольников. Они играют роль промежуточной ячейки. Сначала поиск пути происходит по ним, а в их пределах юнит движется по прямой (т.к. это плоскость).ну ты представь поиск пути например - не по ячейкам а на поверхности сферы, с учетом препятствий непредсказуемой формы.[/b]
Надо забыть на время о треугольниках и сферической геометрии, это чистая математика, которая многим из нас особо не нужна, самому мне приходится прилагать определённое усилие над собой, чтоб умерить полёт фантазии и перелагать мысли на формулы
Наилучшем решением для себя вижу движение и размещение объектов в узлах решётки, к ним же привязываются и ресурсы и элементы ландшафта. А визуально можно представить это как частично перекрывающиеся области близкие к кругу (на самом деле это те же самые шестиугольники и в отдельных местах пятиугольники).
Разработка игры Вселенная: расширяя пределы. Universe: extending the frontier. (UEF)
<div class='quotetop'>Цитата(Pavel Zachesa * 15.4.2010, 16:22) [snapback]333038[/snapback]</div>вот я также думаю. есть же узлы, нафига еще что-то?[/b]
EC2 - разработка игры
Мастерская Steam - мои моды для Civilization V
Last Citadel - сайт игроков Warlords III
С одной стороны, узлы действительно упростят расчет. С другой, сократят игровое пространство. Лично мне они не нравятся тем, что нельзя ходить по прямым. Т.е. путь будет похож на ломаную кривую, которую делает пьяный американский водитель встретившись с полицейским
ЗЫ треугольники нужны для построения (для рендеринга). Эта самая лучшая из фигур в опенгл, т.к. самая быстрая.
<div class='quotetop'>Цитата</div>На самом деле в мире прямых дорог нет, а захочется строить хайвей, так его и ставить единым объектом из разных не обязательно смежных узлов, а движение объектов обрабатывать отдельно. С рендером то и так понятно, текстурироваться будут именно треугольники, но это больше к визуализации относится, а не к логике игры и для более симпотного вида, придётся эти треугольники дробить ещё как минимум на четыре части. Каждую отрисовывать в соответствии с узлом а центральную делать какой-нибудь нейтральной текстурой, если они разнятся для плавности перехода или такой же как они все, если те одинаково оттекстурены.путь будет похож на ломаную кривую[/b]
Разработка игры Вселенная: расширяя пределы. Universe: extending the frontier. (UEF)