RunServer
ПродуктыНовостиПроектыФайлыГалереяКонтакты
  • English (United Kingdom)
  • Russian (CIS)
RunServer Products RunServer Middleware
middleware for huge online server development
RunServer.Math
server geometry subsystem
RunServer.Database
universal RDBMS module with in-memory OODB
RunServer.MMO
MMOG server elements including AI, update and map systems
Our partners Unigine 3D Engine
Unigine 3D Engine
WNet: World of Warcraft Syndicate of Arkon DotA WoW
Hosted By WNet Valid XHTML 1.0 Transitional
RunServer
RunServer 2.4 07 Января 2011
 

Платформа RunServer обновлена до версии 2.4. Эта версия содержит различные улучшения и правки, а также внутренние изменения для миграции на архитектуру версии 3.0. Подробную информацию о планах разработки можно получить в соответствующем разделе.

Изменения и нововведения в версии RunServer 2.4.1 и RunServer Math 1.0.5: 

  • возможность выбора режима очередности исходящих пакетов (упорядоченный и произвольный режимы);
  • оптимизация вызова внешних скриптов за счет отказа от использования Reflection в пользу динамически генерируемых методов;
  • отказ от использования ByteSegment и некоторых других классов в пользу стандартных средств CLR;
  • различные низкоуровневые системы (CustomThreadPool, JobQueue, LinkedByteQueue и другие) перенесены из библиотеки Common и объявлены как internal;
  • различные доработки пулов данных и буферов;
  • возможность выбора эвристического алгоритма для поиска пути (точный А* поиск или ускоренный Greed метод);
  • поддержка односторонних и двусторонних поверхностей в серверной геометрии;
  • исправлена работа методов определения коллизий для полигонов, параллельных координатным плоскостям;
  • оптимизировано использование памяти для 3D геометрии;
  • модифицирован формат NavMesh для большей точности вычислений;
  • различные правки и оптимизации;

 

Автор: Nomad   
 
RunServer 2.3 28 Сентября 2010
 

С сегодняшнего дня подписчикам доступна версия RunServer 2.3. Также после года отладки и массового тестирования выпущена стабильная версия RunServer.Math 1.0.

Библиотека RunServer.Math содержит инструменты для обработки 3D геометрии в масштабах серверных задач - нахождения пути, проверки коллизий, видимости и других. Ключевые особенности этого продукта:

  • управление иерархией сцены с помощью octree;
  • эффективный алгоритм трассировки лучей с использованием 3DDDA с производительностью более 100000 лучей в секунду1;
  • новаторская адаптация A* для поиска пути с автогенерацией NavMesh на основе проверок LOS с производительностью более 1000 путей в секунду1;
  • методы определения коллизий с использованием Bounding Box и Bounding Cylinder;
  • математические операции с матрицами, кватернионами, векторами;
  • поддержка half-precision float (IEEE754);
  • поддержка 32-битного целочисленного представления нормалей и единичных векторов;
  • компактное представление 3D геометрии в памяти с использованием Instancing;

1 Производительность измерялась в реальном времени на тестовой станции Xeon 5130 в игровом мире с сложным ландшафтом, и около 10000 моделей суммарной сложностью около 7000000 треугольников. Поиск путей и линий видимости осуществлялся в различных местах и условиях, полученные значения усреднялись.

 

Изменения и нововведения в версии RunServer 2.3:

  • возможность полного шифрования трафика с помощью RC4 и других крипто систем;
  • коллекции SortedLinkedList<> с сортировкой данных в момент добавления;
  • lock-free коллекции PessimisticStack<> и PessimisticQueue<>;
  • оптимизации пулинга с использованием пессимистической логики;
  • вспомогательный класс MonoHelper для выполнения специфических для Mono операций и их аналогов в .Net;
  • поддержка generic методов Read<T> в классах потокового чтения;
  • класс PerformanceHelper для профайлинга производительности;
  • исправлен баг с LinkedArrayList<>, при записи элементов по индексу;
  • коллекции EnumArray<> и EnumCheckList<> для enum элементов;
  • различные оптимизации и многопоточные блокировки;
  • другие правки и багфиксы;

 

Автор: Nomad   
 
RunServer 2.2 31 Марта 2010
 

Подписчикам доступна версия RunServer 2.2. Начиная с этой версии доступны Pure .Net библиотеки, не использующие нативные Win32 вызовы, что позволяет работать под Mono на любых Unix платформах. Также реализован альтернативный сетевой модуль с использованием .Net Async Sockets с меньшей латентностью, но несколько большей нагрузкой на память и CPU.

Перечень изменений:

  • пул заданий CustomThreadPool использует IOCP на Win32 и собственную реализацию в Pure .Net режиме;
  • взаимозаменяемость низкоуровневых сетевых модулей, в данный момент это ClrTcp, NativeTcp и Distibuted;
  • реализована поддержка собственного шифрования и дешифрования трафика;
  • различные переделки в рандомизаторе и AttackTable;
  • добавлена возможность псевдослучайной выборки результатов для AttackTable на основе статистических значений;
  • реализован класс ArrayIList<> : IList<>, позволяющий частичный обход массива без копирования в отдельную коллекцию;
  • реализована поддержка модуля БД C# SQLite и собственный ADO-совместимый интерфейс к нему;
  • добавлены многопоточные синхронизации для БД SQLite;
  • улучшена работа RunServer.ConversionApi;
  • исправлены ложные срабатывания таймеров после окончания их работы;
  • другие оптимизации и правки;
Автор: Nomad   
 
RunServer 2.1.0 13 Ноября 2009
 

В версии 2.1.0 анонсируется новый продукт RunServer.Math, который позволяет обрабатывать геометрию мира на стороне сервера - проверять наличие Line of Sight, просчет путей между двумя точками, коллизий и пр.

RunServer.Math будет доступен существующим клиентам по сниженой цене, а для новых покупателей - в виде отдельного продукта и в составе полной версии платформы RunServer. Подробнее читайте на странице продукта: http://runserver.net/runserver-math.

Перечень изменений:

  • добавлена возможность контроля ширины полосы исходящего трафика для каждого соединения;
  • без контроля трафика передача данных в модуль IOCP происходит моментально, при включении контроля - через очередь в отдельном потоке;
  • переделана обработка и отсылка множественных пакетов, изменен синтаксис метода ClientBase.Send(..);
  • библиотека RunServer.Server переименована в RunServer.MMO, идет подготовка к выпуску в виде отдельного продукта;
  • класс Vector дополнен различными операциями над векторами - умножение, сложение, деление и пр.;
  • оптимизированы математические элементы класса Vector;
  • контейнер LinkedArrayList<> при переборе содержимого не будет возвращать пустые записи;
  • добавлена возможность создавать временную сборку DB Proxy с собственным именем - дополнен метод ObjectDatabase.GenerateProxies(..);
  • оптимизированы методы класса DBConvert;
  • оптимизировано приведение типов в генерируемых DB Proxy классах;
  • класс LogConsole позволяет задать собственный формат даты в логах;
  • добавлен класс ScopeLock для гарантированного освобождения классов, реализующих ILock;
  • переделан и оптимизирован класс CheckList<>;
  • коллекция LinkedArray<> больше не имеет аттрибут [Serializable];
  • полностью переделан рандомиратор - теперь генерируется не одно случайное число, а запрашивается у системы блок в 4096 случайных байт;
  • другие оптимизации и правки;
Автор: Nomad   
 


© RunServer, 2009