forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Алгоритмика (http://forum.boolean.name/forumdisplay.php?f=21)
-   -   minecraft (http://forum.boolean.name/showthread.php?t=14851)

SBJoker 13.06.2011 23:41

Ответ: minecraft
 
Бить меш на куски всё же необходимо иначе нарываемся на ограничение вершинного буфера. Кроме того единый меш нужно постоянно достраивать что несколько не быстро по сравнению с дискретным достраиванием мира.
Хотя соглашусь что в майнкрафте тот ещё говнокод. Особенно убог сервер. Это надо было додуматься пересылать целые чанки! Изменилась одна клеточка а мы весь чанк шлём! Из-за этого игра требует от сервера высокой пропускной способности ибо трафик генерится не хриновый.

pax 14.06.2011 00:12

Ответ: minecraft
 
Чанки удобны для хранения/загрузки данных на диск/с диска. Зная координаты чанка и его размер можно легко сделать фоновую подгрзку/выгрузку мира.

Igor 14.06.2011 00:29

Ответ: minecraft
 
Можно рисовать чанками и не придётся ничего сортировать.
можно проверять видимость/невидимость для всего чанка, и в противном случае не рисовать. (угол обзора меньше 90, т.е. рисовать в 4 раза меньше как минимум и не надо проверять для каждого кубика)
правда, меня очень удивляет их высота - интуитивно хочется чтобы было 16*16*16, с высотой в 128 приходится ещё рисовать подземелья((

ffinder 14.06.2011 15:20

Ответ: minecraft
 
все ваши аргументы "ЗА" исходят из предположения, что мир статичен. а он на самом деле меняется: вода и лава текут, деревья растут, освещение меняется. а еще погода, а если еще и времена года сделать - тает снег целыми равнинами, вырастают поля цветов...

и еще вот о чем подумайте: вы мешаете в кучу модель данных и их представление, а ведь их группировка никак между собой не связана.

Taugeshtu 14.06.2011 18:06

Ответ: minecraft
 
Цитата:

все ваши аргументы "ЗА" исходят из предположения, что мир статичен. а он на самом деле меняется: вода и лава текут, деревья растут, освещение меняется. а еще погода, а если еще и времена года сделать - тает снег целыми равнинами, вырастают поля цветов...

и еще вот о чем подумайте: вы мешаете в кучу модель данных и их представление, а ведь их группировка никак между собой не связана.
И снова ни слова о той самой загадочной "улучшенной" модели данных, которая была анонсирована... И как он так умеет?!
Опять же - в формате чанков весьма и весьма умещаются динамические изменения. Конечно, если уйти от "кубичности" в сторону распределения плотности пород/газов/жидкостей, приправить всё это "шумовыми" генерациями и выразить через Marching cubes - будет в 100500 раз красивее, но опять же - у чанков есть весомый плюс, и имя ему - работа с диском. Стримминг, генерация и сохранение только по необходимости - плюшечки вкусные. Есть что предложить взамен/в дополнение?

Далее. Грубо говоря, чанк 16х16х16 - это уже сам по себе объём для Occlusion Culling-а - "привязываем" динамику (мобов, например) к чанкам, или к 1/8 чанка - получаем профиты.

Satan'scry 28.06.2011 11:05

Ответ: minecraft
 
Майн лагает на слабых компьютерах, плюс написан на Java

Hurrit 28.06.2011 13:30

Ответ: minecraft
 
K.O. strikes again!

Лit}{Ъ 09.07.2011 21:38

Ответ: minecraft
 
Цитата:

Сообщение от Taugeshtu (Сообщение 191506)
Грубо говоря, чанк 16х16х16 - это уже сам по себе объём для Occlusion Culling-а - "привязываем" динамику (мобов, например) к чанкам, или к 1/8 чанка - получаем профиты.

Можно пожалуйста этот абзац изложить чуть более человеческим (или хотябы научным (тогда хоть термины по гуглить можно(люблю я скобки :) ))) языком. Инетересно стало...

Цитата:

Сообщение от Lestar (Сообщение 191433)
Хотелось бы все же поднять тему и поговорить о возможных вариантах реализации.

Поддерживаю. Тема интересна и познавательна

Taugeshtu 09.07.2011 23:17

Ответ: minecraft
 
Цитата:

Грубо говоря, чанк 16х16х16 - это уже сам по себе объём для Occlusion Culling-а - "привязываем" динамику (мобов, например) к чанкам, или к 1/8 чанка - получаем профиты.
Перевод:

Цитата:

Грубо говоря, кусок уровня в 16х16х16 кубиков - это уже сам по себе объём для оптимизации производительности через отрезание отрисовки загороженной геометрии. При связывании динамической геометрии с объёмами, в которые она попадает, можно получить распространение этого приёма ещё и на динамическую геометрию (Подвижные объекты будут "вырезаться" из отрисовки геометрией уровня). Можно соотносить динамику не с целым объёмом 16х16х16, а с 1/8 его - с блоком 8х8х8 кубиков.

Lestar 10.07.2011 06:33

Ответ: minecraft
 
К слову о алгоритмах генерации ресурсов.Попробовал с разной солью генерировать разные миры.Частота,количество однотипных ресурсов,встречающихся единовременно отличаются.Глубина залегания осталась примерно та же.Так же меняется конфигурация пещер(Были миры,в который практически все пещеры не более -8-ти блоков в высоту.Ну и по мелочи бросались некоторые вещи в глаза).
Все это ИМХО.

Taugeshtu 13.07.2011 00:43

Ответ: minecraft
 
Цитата:

Частота,количество однотипных ресурсов,встречающихся единовременно отличаются.
мне кажется, что в целом по карте (области генерации без переполнений и прочих прелестей "дальних земель") эти показатели схожи, а вот рядом с точкой спавна могут сильно различаться.

P.S.
Попробуй зерно "Solar system". Меня покорило количество и размеры пещер, а также разнообразие ландшафтов вокруг зоны спавна.

ffinder!
Нам, я так полагаю, не ждать загадошную альтернативу чанкам за твоим авторством?

ffinder 13.07.2011 16:50

Ответ: minecraft
 
ололо! а их кто-то еще и ждал???

Randomize 13.07.2011 16:58

Ответ: minecraft
 
Выкладывай, а мы послухаем

ffinder 13.07.2011 18:15

Ответ: minecraft
 
не, пацаны.
голословно не хочется. а технодему делать довольно муторно.
так что считайте, что я слил. ну или зажал идеи. кому как лучше - тот пусть так и считает.

NitE 13.07.2011 18:51

Ответ: minecraft
 
Чё за детские отговорки и оправдания ? Мужик сказал мужик сделал!


Часовой пояс GMT +4, время: 06:47.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot