Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / C++ [игнор отключен] [закрыт для гостей] / Придумайте мне занятие на долгие зимние вечера. / 15 сообщений из 15, страница 1 из 1
27.05.2014, 16:37
    #38653587
боевые
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Придумайте мне занятие на долгие зимние вечера.
Люблю строить серверные приложения на много клиентов, начиная с низкого уровня (kqueue, epoll) и заканчивая всякими алгоритмами и управлением памятью. Недавно делал такую игрушку: http://fintank.ru/game/rules.html - свой C++ сервер с websockets, клиент примитивный на JS/canvas. Грубо говоря, нравится делать "трансмиссию" - те части, куда всё стекается, которая самая нагруженная, критичная по времени и памяти и при поломке которой умирает сразу всё.

Хочется в свободное время сделать что-нибудь серверное и полезное людям. Какой-нибудь интересный SaaS. На самом деле, главная цель не в том, чтобы спасти человеков, а чтобы мне было интересно. Вы предлагайте - если заматчится моим внутренним неформализуемым регэкспом интересов, будет круто. Игровые сервера и мониторилки каких-то быстроменяющихся данных, типа финансовых - это интересно, (т.к. там много движухи), но нужны конкретные мысли. Зачем вы должны мне что-то предлагать - низачем, бесплатно. Спасибо.
...
Рейтинг: 0 / 0
27.05.2014, 17:40
    #38653714
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Придумайте мне занятие на долгие зимние вечера.
А как ты мир хранишь на таком большом поле 4294967296 * 4294967296 ?

Какая структура данных используется?
...
Рейтинг: 0 / 0
27.05.2014, 17:42
    #38653718
боевые
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Придумайте мне занятие на долгие зимние вечера.
maytonА как ты мир хранишь на таком большом поле 4294967296 * 4294967296 ?

Какая структура данных используется?
R+Tree
...
Рейтинг: 0 / 0
27.05.2014, 17:44
    #38653725
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Придумайте мне занятие на долгие зимние вечера.
Это в памяти? А сколько сервер выделяет когда игрушка работает несколько дней?
...
Рейтинг: 0 / 0
27.05.2014, 18:02
    #38653747
боевые
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Придумайте мне занятие на долгие зимние вечера.
maytonЭто в памяти? А сколько сервер выделяет когда игрушка работает несколько дней?
"Несколько дней" ни на что не влияет, если утечек памяти я не делаю. Сейчас ~140 MB. Количество объектов там в основном уменьшается: изначально было ~1 млн кубиков, но их в основном отстреливают, а свои не строят, объём данных только уменьшается.
...
Рейтинг: 0 / 0
27.05.2014, 18:03
    #38653749
боевые
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Придумайте мне занятие на долгие зимние вечера.
maytonЭто в памяти? А сколько сервер выделяет когда игрушка работает несколько дней?
В памяти, диск только для дампов мира.
...
Рейтинг: 0 / 0
27.05.2014, 18:34
    #38653773
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Придумайте мне занятие на долгие зимние вечера.
Насколько я понимаю, изначально у тебя мир может быть размером бесконечность на бесконечность.
и лимиты определяются только типом данных. Но дерево R+Tree должно пухнуть по мере того как
танчики стреляют по стенкам и в дереве появляются всё новые и новые листики.

А что у тебя в листиках? Только кубики? Или прямоугольники? Или полигоны с перпендикулярными
стенками?
...
Рейтинг: 0 / 0
27.05.2014, 18:45
    #38653781
боевые
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Придумайте мне занятие на долгие зимние вечера.
maytonНасколько я понимаю, изначально у тебя мир может быть размером бесконечность на бесконечность.
и лимиты определяются только типом данных. Но дерево R+Tree должно пухнуть по мере того как
танчики стреляют по стенкам и в дереве появляются всё новые и новые листики.

А что у тебя в листиках? Только кубики? Или прямоугольники? Или полигоны с перпендикулярными
стенками?
Использую uint32_t как тип для координаты, отсюда такие пределы. В листьях прямоугольники с 4 координатами. Если юзер положил новый кирпич, дерево может потратить новую память, а может и не потратить, если в ноде есть свободное место. А может начаться рекурсивное деление до корня и появится несколько новых нодов, но это редкость. Высота дерева сейчас при ~900К кубиков - где-то 13.
...
Рейтинг: 0 / 0
27.05.2014, 19:09
    #38653799
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Придумайте мне занятие на долгие зимние вечера.
Не пробовал Quadtree? Можно было-бы отказаться от хранения координат. Они в кваде - вычислимы исходя
из топологии.
...
Рейтинг: 0 / 0
27.05.2014, 19:28
    #38653816
боевые
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Придумайте мне занятие на долгие зимние вечера.
maytonНе пробовал Quadtree? Можно было-бы отказаться от хранения координат. Они в кваде - вычислимы исходя
из топологии.
Можно сократить объём занимаемой памяти другими алгоритмами, особенно если учесть, что кубики - одинаковые и фактически это точки, но очень хотелось запилить свой R+Tree.
...
Рейтинг: 0 / 0
27.05.2014, 21:22
    #38653879
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Придумайте мне занятие на долгие зимние вечера.
А в гите что-нибудь выложил?
...
Рейтинг: 0 / 0
28.05.2014, 11:40
    #38654253
боевые
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Придумайте мне занятие на долгие зимние вечера.
maytonА в гите что-нибудь выложил?
Нет.
...
Рейтинг: 0 / 0
29.05.2014, 11:51
    #38655535
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Придумайте мне занятие на долгие зимние вечера.
Пяток лет назад я хотел запилить танковую сетевую 3-d игрушку с "разрушаемой" местностью. Неосилил...
...
Рейтинг: 0 / 0
02.06.2014, 11:55
    #38658437
S.G.
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Придумайте мне занятие на долгие зимние вечера.
maytonНасколько я понимаю, изначально у тебя мир может быть размером бесконечность на бесконечность.
бесконечность (в некотором смысле) можно устроить, сделав поверхность сферой или тором ;)
...
Рейтинг: 0 / 0
02.06.2014, 13:03
    #38658580
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Придумайте мне занятие на долгие зимние вечера.
Хм... Закольцевать координаты в бублик. Это мысль.
Только придётся пушку танка ограничить по расстоянию поражения.
Иначе можно "за угол" шмальнуть. Как в анекдоте...
...
Рейтинг: 0 / 0
Форумы / C++ [игнор отключен] [закрыт для гостей] / Придумайте мне занятие на долгие зимние вечера. / 15 сообщений из 15, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]