Страница 1 из 1

Unity как инструмент для визуализации очень большого графа

СообщениеДобавлено: 16 июн 2018, 13:52
SergioDr
Здравствуйте
Стоит задача визуализировать граф очень большого размера ~25M вершин (можно без отображения ребер).
Компьютер i3 3GHz/RAM 16GB/SSD/GeForce GTX 660
Специализированные пакеты типа Gephi могут работать с такими большими объектами,
но отрисовка графа занимает несколько часов, возможно из-за плохой оптимизации под GPU.
Поделитесь пожалуйста мнением насколько Unity подходит для таких целей и
если подходит, каким образом лучше все это реализовать.
Спасибо

Re: Unity как инструмент для визуализации очень большого графа

СообщениеДобавлено: 16 июн 2018, 14:37
Cr0c
Вершин в 12 раз больше, чем FHD разрешение. Там задача прям все 25М+ вершин рисовать? Или можно разбить по обобщенным группам и детализировать только видимую? Или какие-то действия производить? Вершины отображать объектами же, а не точкой экрана, верно? Сглаживания там и прочая?

Re: Unity как инструмент для визуализации очень большого графа

СообщениеДобавлено: 16 июн 2018, 18:46
SergioDr
Cr0c писал(а):Вершин в 12 раз больше, чем FHD разрешение. Там задача прям все 25М+ вершин рисовать? Или можно разбить по обобщенным группам и детализировать только видимую? Или какие-то действия производить? Вершины отображать объектами же, а не точкой экрана, верно? Сглаживания там и прочая?


Спасибо за ваш ответ

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

Re: Unity как инструмент для визуализации очень большого графа

СообщениеДобавлено: 16 июн 2018, 18:57
Cr0c
При нормальном хранении данных и использовании пула - всё решается в короткие сроки. Единственное что - это организовать сами данные (сортировать по координатам), чтобы не надо было лишнюю сортировку видимых вершин делать.

Re: Unity как инструмент для визуализации очень большого графа

СообщениеДобавлено: 16 июн 2018, 19:42
SergioDr
Большое спасибо

буду очень благодарен, если посоветуете
что почитать для максимально быстрого старта
подобного проекта
с программированием знаком, с Unity - нет

Re: Unity как инструмент для визуализации очень большого графа

СообщениеДобавлено: 16 июн 2018, 20:17
Cr0c
На сайте юнитеков есть уроки для начинающих.

Re: Unity как инструмент для визуализации очень большого графа

СообщениеДобавлено: 16 июн 2018, 20:22
SergioDr
Спасибо

Re: Unity как инструмент для визуализации очень большого графа

СообщениеДобавлено: 16 июн 2018, 20:40
seaman
Есть вопрос.
Граф (данные) заранее известны, или рантайм подтаскиваются?
Если заранее можно сделать и на Юнити. Заранее все просчитать и выводить - визуализировать.
Если рантайм подтаскивается (имхо) - Юнити не тот инструмент. Даже если использовать ДжобСистем - будет очень долго.
Gephi сделан на Джаве. Думаю делали не дураки. И так долго считает. Не думаю что на шарпе у Вас получится быстрее.

Re: Unity как инструмент для визуализации очень большого графа

СообщениеДобавлено: 16 июн 2018, 22:05
SergioDr
seaman писал(а):Есть вопрос.
Граф (данные) заранее известны, или рантайм подтаскиваются?
Если заранее можно сделать и на Юнити. Заранее все просчитать и выводить - визуализировать.
Если рантайм подтаскивается (имхо) - Юнити не тот инструмент. Даже если использовать ДжобСистем - будет очень долго.
Gephi сделан на Джаве. Думаю делали не дураки. И так долго считает. Не думаю что на шарпе у Вас получится быстрее.


Граф статический.
Gephi - хороший пакет, но в моем конкретном случае
на имеющемся железе сильно тормозит.
Я стал смотреть в сторону Unity т.к. мне кажется,
тут очень быстрая графика.

Re: Unity как инструмент для визуализации очень большого графа

СообщениеДобавлено: 16 июн 2018, 22:32
seaman
Тогда думаю можно и в Юнити. Конечно нужно поработать...

Re: Unity как инструмент для визуализации очень большого графа

СообщениеДобавлено: 16 июн 2018, 22:41
SergioDr
Спасибо за ответы