Синхронизация состояний в многопользовательских играх

Автор: admin от 18-05-2017, 23:00, посмотрело: 63

Синхронизация состояний в многопользовательских играх

Проблема многопользовательских игр


Одна из самых сложных задач многопользовательских игр заключается в синхронизации состояний всех игроков с состоянием сервера. В Интернете есть хорошие статьи по этой теме. Однако в них не достаёт кое-каких подробностей, что может сбивать с толку новичков в программировании игр. Надеюсь, что у меня получится объяснить всё в этой статье.

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

Обычно программа игры должна симулировать следующее:

изменения в окружении с учётом времени и вводимых игроками данных.

Игра — это программа, хранящая состояние, поэтому она зависит от времени (реального или логического). Например, PACMAN симулирует окружение, в котором постоянно перемещаются призраки.

Многопользовательская игра не является исключением, однако из-за взаимодействия игроков её сложность намного выше.

Категория: Программирование » Веб-разработка

 

Kotlin для Android: Теперь официально

Автор: admin от 18-05-2017, 22:50, посмотрело: 84

Вчера на конференции Google I/O 2017 команда Android объявила об официальной поддержке языка Kotlin для разработки Android-приложений. Это огромный шаг вперед для Kotlin, и отличная новость для всего сообщества Android-разработчиков.

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

Плагин для поддержки Kotlin теперь входит в поставку Android Studio 3.0, так что разработчикам не нужно ставить дополнительные плагины или беспокоиться о совместимости. JetBrains и Google также берут на себя обязательство поддерживать разработку на Kotlin и в будущем, по мере развития Android-платформы.

При этом другие платформы, которые поддерживают Kotlin (Kotlin/JVM для разработки серверных и десктопных приложений, Kotlin/JS для браузера и Kotlin/Nativе для нативной разработки) остаются не менее важными для JetBrains. Наше видение заключается в том, чтобы создать единый инструмент, позволяющий разрабатывать все компоненты современного приложения на одном и том же языке, независимо от того, на какой платформе эти компоненты запускаются. Это включает в себя и full-stack веб-приложения, и мобильные клиенты под Android и iOS, и встраиваемые платформы IoT, и другое.

Категория: Веб-разработка, Google, Android

 

Все образовательные проекты Mail.Ru Group

Автор: admin от 18-05-2017, 19:05, посмотрело: 73

Все образовательные проекты Mail.Ru Group

Мы много рассказываем о своих образовательных проектах, но вдруг поняли, что у нас нет ни одной статьи, где была бы собрана информация обо всех наших образовательных возможностях. Мы решили исправить это досадное упущение. Теперь желающим получить знания не придётся искать по всему Хабру и интернету.

Категория: Программирование

 

Inter-AS routing. Можно ли сэкономить на BGP маршрутизаторе?

Автор: admin от 18-05-2017, 19:00, посмотрело: 102

В качестве предисловия: вчера представил приведенные ниже идеи на локальной сходке администраторов. После презентации ко мне подошел представитель компании, занимающейся производством сетевого оборудования и спросил: «Ты публиковал это где-то? Поделись презентацией, я отправлю коллегам посмотреть.» Собственно, а почему бы и не опубликовать? Как говорят у нас в Украине «i ми, Химко, люди». Если уж кто-то из вендоров, хотя бы отдаленно, но заинтересовался, то и в коммьюнити найдется человек, которому идеи тоже покажутся интересными. Кроме этого, я и сам планирую использовать это решение. Сразу скажу, что 100% готового результата не будет, но будет некий промежуточный, которого достаточно для эрзац-роутинга и немного информации для продолжения работ в данном направлении. Поехали!

Категория: Админитстрирование » Сетевые технологии

 

Программа HolyJS 2017 Piter: Владение силой, танцы с Джексоном и красота в глазах коммитящего

Автор: admin от 18-05-2017, 17:35, посмотрело: 65

Учите язык, а не фреймворки. Если в 2012 году речь шла о пяти основных фреймворках, в 2016 говорили о десятке, то в этом году речь идет уже о пятнадцати (и это только для фронтэнда). Что это?! Хайп по фреймворкам… Всё это может привести к тому, что чистый JS джуны вообще знать не будут, а критерием зрелости будет знание метапрограммирования, моделей объектов и Vanilla javascript.

Программа HolyJS 2017 Piter: Владение силой, танцы с Джексоном и красота в глазах коммитящего

Итак, программа HolyJS 2017 Piter практически завершена, будет много интересного. Давайте посмотрим в какие области JS вселенной можно попасть без «use strict»:

  • ECMAScript 6 (ES6) и ES7 — практические особенности;

  • Дофреймовые истоки и незаслуженно забытые функции;

  • Серверный JS;

  • Мордовый JS;

  • Другое...


В названии одного из докладов упоминается «Алиса в Стране Чудес», и кэрроловские перемены восприятия вообще станут на конференции трендом: сразу несколько спикеров призывают посмотреть на привычные вещи по-новому. Даже само расписание конференции нестандартное — первый день будет разделен на два потока, второй же будет идти в три. Неочевидный профит первого варианта — меньше пропущенных материалов, больше общения со спикерами, есть время изредка выдохнуть от обилия поступающей информации, хотя последнего мы не обещаем. И да, мы изучаем обратную связь и работаем над собой и организацией конференции, а поэтому «вы просили, мы сделали».
Смотреть подробности

Категория: Программирование

 

Подчищаем хвосты за Microsoft Exchange Server 2016 используя Powershell

Автор: admin от 18-05-2017, 17:20, посмотрело: 100

Подчищаем хвосты за Microsoft Exchange Server 2016 используя Powershell

Работая в течении полугода с Microsoft Exchange Server 2016 в компании, где более 500 сотрудников использует корпоративную почту, я столкнулся с проблемой полноценного удаления информации о пользователях, отключенных в Active Directory.

Категория: Админитстрирование » Системное администрирование

 

Нестандартный способ обучения новому языку программирования (перевод статьи Sahil Dua)

Автор: admin от 18-05-2017, 17:20, посмотрело: 72

Нестандартный способ обучения новому языку программирования (перевод статьи Sahil Dua)


На данный момент существует более 500 различных языков программирования. Следовательно, вполне нормально взять и начать учить новый язык прямо сейчас. Например, вы знаете C++ и Java, но на работе требуется Python, или наоборот. А может быть, вы просто хотите выучить какой-нибудь модный язык, чтобы повысить свою конкурентоспособность?..

Категория: Программирование, Game Development

 

Gorilla: быстрая, масштабируемая in-memory time-series база данных

Автор: admin от 18-05-2017, 17:15, посмотрело: 67

Это перевод обзора статьи «Gorilla: A fast, scalable, in-memory time series database» Pelkonen et al. VLDB 2015


Чуваки из фейсбука сделали высокопроизводительный движок для мониторинговых данных. Мне понравился обзор этой статьи в блоге "The morning paper" — особенно про алгоритмы сжатия, и вот перевод.


Стиль — авторский.


Количество ошибок на одном из серверов Facebook зашкаливало.

Категория: Программирование

 

Android и архитектура

Автор: admin от 18-05-2017, 17:15, посмотрело: 140

Операционная система Android предоставляет мощный фундамент для разработки приложений, которые отлично работают на множестве разнообразных устройств и форм-факторов. Теперь, как говорится, мы услышали жалобы разработчиков: трудно создавать "безглючные" приложения в условиях сложных циклов жизни объектов и отсутствия рекомендованной архитектуры приложения.


Нам, создателям Android, надо сделать простым и веселым написание устойчивых приложений, чтобы перевести усилия разработчиков в те области, в которых можно создавать инновации. Сегодня мы аннонсируем путеводитель по архитектуре Android-приложений и превью библиотек Architecture Components. Вместо того чтобы изобретать колесо, мы признаем работу, сделанную авторами популярных сторонних Android-библиотек (прим. пер.: WAT?).

Категория: Веб-разработка, Google, Android

 

Meine Uberwachung, или сказ о красивом мониторинге — начало

Автор: admin от 18-05-2017, 17:15, посмотрело: 84

Сейчас о мониторинге не пишет только мёртвый тот, у кого его нет. У нас в Тензоре мониторинг есть – это наша собственная система сбора метрик (хотя это далеко не единственное её назначение), тесно интегрированная с Zabbix.

Если вам интересно, как устроен мониторинг 5K серверов в нашей компании, с какими проблемами нам приходилось сталкиваться на пути к 1.5M метрик, 65K значений в секунду и текущему решению и как мы вообще докатились до жизни такой, добро пожаловать под кат.

Meine Uberwachung, или сказ о красивом мониторинге — начало

Категория: Админитстрирование » Системное администрирование

 
Назад Вперед