|
rss_habr
Оптимальный процесс разработки онлайн игрВторник, 08 Ноября 2022 г. 07:07 (ссылка)
Процесс разработки можно назвать тогда оптимальным, когда он приносит максимум прибыли с минимумом затрат. Как утверждают классики политэкономии, если одна компания выстраивает все процессы так, что ее продукт получается в два раза дешевле, чем у других, то при прочих равных она получает в два раза больше прибыль, чем другие. И так продолжается до тех пор, пока остальные не введут те же усовершенствования, и ситуация на рынке не выровняется. Цель понятна. Теперь, как этого можно добиться в разработке игр. Одна из самых больших статей расходов в IT-компаниях — это программисты. К тому же самая сложно управляемая и контролируемая статья. Административные меры тут работают плохо, и чтобы эффективно воздействовать на программистов, нужно самому, минимум, быть программистом. Поэтому опишем чисто программистские меры и способы по снижению затрат и увеличению производительности. Читать далееhttps://habr.com/ru/post/697502/?utm_source=habrahabr&utm_medium=rss&utm_campaign=697502
rss_habr
Оптимальный процесс разработки онлайн игрВторник, 08 Ноября 2022 г. 07:07 (ссылка)
Процесс разработки можно назвать тогда оптимальным, когда он приносит максимум прибыли с минимумом затрат. Как утверждают классики политэкономии, если одна компания выстраивает все процессы так, что ее продукт получается в два раза дешевле, чем у других, то при прочих равных она получает в два раза больше прибыль, чем другие. И так продолжается до тех пор, пока остальные не введут те же усовершенствования, и ситуация на рынке не выровняется. Цель понятна. Теперь, как этого можно добиться в разработке игр. Одна из самых больших статей расходов в IT-компаниях — это программисты. К тому же самая сложно управляемая и контролируемая статья. Административные меры тут работают плохо, и чтобы эффективно воздействовать на программистов, нужно самому, минимум, быть программистом. Поэтому опишем чисто программистские меры и способы по снижению затрат и увеличению производительности. Читать далееhttps://habr.com/ru/post/697502/?utm_source=habrahabr&utm_medium=rss&utm_campaign=697502
rss_habr
Эволюция игрового фреймворка. Клиент 3. Слои логикиСреда, 20 Июля 2022 г. 21:26 (ссылка)
Прежде мы рассмотрели отделение логики отображения от графики, а также разные вспомогательные классы и менеджеры. Все вместе они образуют каркас наших приложений и были вынесены в отдельную библиотеку — Core Framework. Осталось еще разработать методику по написанию остальной логики. В нее входит бизнес-логики и правила игры, данные и их обработка, а также взаимодействие с сервером. Вся логика будет разбита на слои. Основной смысл слоев тот, что классы одного слоя максимально независимы от классов с соседних слоев и абсолютно независимы от остальных. Все это уже относится не к основному фреймворку (Core Framework), а к фреймворкам для разных групп жанров (Base Game Frameworks) и для каждого отдельного жанра (Game Frameworks). Читать далееhttps://habr.com/ru/post/677854/?utm_source=habrahabr&utm_medium=rss&utm_campaign=677854
rss_habr
Эволюция игрового фреймворка. Клиент 3. Слои логикиСреда, 20 Июля 2022 г. 21:26 (ссылка)
Прежде мы рассмотрели отделение логики отображения от графики, а также разные вспомогательные классы и менеджеры. Все вместе они образуют каркас наших приложений и были вынесены в отдельную библиотеку — Core Framework. Осталось еще разработать методику по написанию остальной логики. В нее входит бизнес-логики и правила игры, данные и их обработка, а также взаимодействие с сервером. Вся логика будет разбита на слои. Основной смысл слоев тот, что классы одного слоя максимально независимы от классов с соседних слоев и абсолютно независимы от остальных. Все это уже относится не к основному фреймворку (Core Framework), а к фреймворкам для разных групп жанров (Base Game Frameworks) и для каждого отдельного жанра (Game Frameworks). Читать далееhttps://habr.com/ru/post/677854/?utm_source=habrahabr&utm_medium=rss&utm_campaign=677854
rss_habr
Эволюция игрового фреймворка. Клиент 2. Менеджеры и другие классыСреда, 20 Июля 2022 г. 12:05 (ссылка)
Рассмотрев компоненты в общем виде, можно приступить к построению полноценного приложения на их основе. Первым делом нам нужно реализовать смену экранов и показ диалогов. Потом мы добавим возможность конфигурировать приложение и легко подставлять измененные реализации классов с помощью инверсии управления (IoC). Используя IoC-контейнер как контекст приложения создадим возможность запускать параллельно несколько игр в одном приложении, что позволит проводить сеансы одновременной игры, как это делается, например, в шахматах или в онлайн-покере. Под конец мы добавим централизованный доступ к ресурсам, локализации и управлению звуками, а также сделаем свою реализацию для логов и сигналов как более экономичную замену событиям. Все вместе уже можно будет считать вполне оформившимся игровым фреймворком. Читать далееhttps://habr.com/ru/post/677386/?utm_source=habrahabr&utm_medium=rss&utm_campaign=677386
rss_habr
Эволюция игрового фреймворка 2. Клиент. Логика отображенияВоскресенье, 17 Июля 2022 г. 15:46 (ссылка)
Всякая игра — это прежде всего то, что пользователь видит на экране и с чем он взаимодействует посредством устройств ввода (мышь, клавиатура, джойстик). То есть игра — это в первую очередь отображение. Простая игра так может и остаться отображением навсегда. В более сложной — приходится выделять также менеджеры, модели, сервисы, контроллеры. Но об этом в потом. Тут же мы начнем с графики и ее непосредственным управлением. Метод нашей разработки прост. С одной стороны, чтобы избегать дублирования, мы будем выносить блоки кода сначала в цикл или функцию, потом в класс, а затем и в библиотеку. (И так до тех пор, пока у нас не появится фреймворк.) С другой стороны, мы будем ограничивать себя, создавая только тот код, который нужен именно сейчас, не фантазируя наперед о том, что может или не может понадобиться в будущем. Вот простая пара принципов: избегать дублирования и при этом не усложнять сверх необходимого. Все примеры реализованы на Haxe + OpenFL), но код должен быть понятен всем, кто знаком с семейством языков ECMAScript. Главное же тут не код, а те идеи, которые за ним лежат. Читать далееhttps://habr.com/ru/post/677312/?utm_source=habrahabr&utm_medium=rss&utm_campaign=677312
rss_habr
Эволюция игрового фреймворка 2. Клиент. Логика отображенияВоскресенье, 17 Июля 2022 г. 15:46 (ссылка)
Всякая игра — это прежде всего то, что пользователь видит на экране и с чем он взаимодействует посредством устройств ввода (мышь, клавиатура, джойстик). То есть игра — это в первую очередь отображение. Простая игра так может и остаться отображением навсегда. В более сложной — приходится выделять также менеджеры, модели, сервисы, контроллеры. Но об этом в потом. Тут же мы начнем с графики и ее непосредственным управлением. Метод нашей разработки прост. С одной стороны, чтобы избегать дублирования, мы будем выносить блоки кода сначала в цикл или функцию, потом в класс, а затем и в библиотеку. (И так до тех пор, пока у нас не появится фреймворк.) С другой стороны, мы будем ограничивать себя, создавая только тот код, который нужен именно сейчас, не фантазируя наперед о том, что может или не может понадобиться в будущем. Вот простая пара принципов: избегать дублирования и при этом не усложнять сверх необходимого. Все примеры реализованы на Haxe + OpenFL), но код должен быть понятен всем, кто знаком с семейством языков ECMAScript. Главное же тут не код, а те идеи, которые за ним лежат. Читать далееhttps://habr.com/ru/post/677312/?utm_source=habrahabr&utm_medium=rss&utm_campaign=677312
rss_habr
Эволюция игрового фреймворка. Клиент 4. Вложенные компонентыПятница, 08 Июля 2022 г. 12:09 (ссылка)
Так как вся логика сейчас, весь функционал находится в компонентах, то компонент является основной клеточкой нашего приложения. Эти простые клеточки можно объединять в "ткани" и составлять из них весь организм приложения. И это тоже будут компоненты. Таким образом, в Чтобы умело управлять этой иерархией нужно добавить в класс https://habr.com/ru/post/675846/?utm_source=habrahabr&utm_medium=rss&utm_campaign=675846
rss_habr
Эволюция игрового фреймворка. Клиент 4. Вложенные компонентыПятница, 08 Июля 2022 г. 12:09 (ссылка)
Так как вся логика сейчас, весь функционал находится в компонентах, то компонент является основной клеточкой нашего приложения. Эти простые клеточки можно объединять в "ткани" и составлять из них весь организм приложения. И это тоже будут компоненты. Таким образом, в Чтобы умело управлять этой иерархией нужно добавить в класс https://habr.com/ru/post/675846/?utm_source=habrahabr&utm_medium=rss&utm_campaign=675846
rss_habr
Эволюция игрового фреймворка. Клиент 3. СкинПятница, 08 Июля 2022 г. 09:43 (ссылка)
В прошлый раз мы ввели концепцию компонентов как удобный способ добавлять логику к графике. В базовом классе Component есть свойство Сама графика должна каким-то образом создаваться снаружи компонента, и сам компонент на это никак не влияет. Но так как мы твердо решили сделать всю логику приложения через компоненты, то и создание скинов должно осуществляться в них же. Этим мы в данной статье и займемся. Читать далееhttps://habr.com/ru/post/675706/?utm_source=habrahabr&utm_medium=rss&utm_campaign=675706
rss_habr
Эволюция игрового фреймворка. Клиент 3. СкинПятница, 08 Июля 2022 г. 09:43 (ссылка)
В прошлый раз мы ввели концепцию компонентов как удобный способ добавлять логику к графике. В базовом классе Component есть свойство Сама графика должна каким-то образом создаваться снаружи компонента, и сам компонент на это никак не влияет. Но так как мы твердо решили сделать всю логику приложения через компоненты, то и создание скинов должно осуществляться в них же. Этим мы в данной статье и займемся. Читать далееhttps://habr.com/ru/post/675706/?utm_source=habrahabr&utm_medium=rss&utm_campaign=675706
rss_habr
Эволюция игрового фреймворка. Клиент 2. КомпонентыЧетверг, 07 Июля 2022 г. 11:57 (ссылка)
Пока что наше приложение состоит только из одного класса Dresser (не считая чисто формального класса Main). И уже одного этого оказалось достаточно для целого игрового жанра (до какой степени все же игроки бывают неприхотливы). Однако, для приличной игры этого маловато. Как минимум нужен еще экран меню, в котором мы могли бы выбирать игру. Читать далееhttps://habr.com/ru/post/675600/?utm_source=habrahabr&utm_medium=rss&utm_campaign=675600
rss_habr
Эволюция игрового фреймворка. Клиент 2. КомпонентыЧетверг, 07 Июля 2022 г. 11:57 (ссылка)
Пока что наше приложение состоит только из одного класса Dresser (не считая чисто формального класса Main). И уже одного этого оказалось достаточно для целого игрового жанра (до какой степени все же игроки бывают неприхотливы). Однако, для приличной игры этого маловато. Как минимум нужен еще экран меню, в котором мы могли бы выбирать игру. Читать далееhttps://habr.com/ru/post/675600/?utm_source=habrahabr&utm_medium=rss&utm_campaign=675600
rss_habr
Эволюция игрового фреймворка. Клиент 1. Простейшая реализацияСреда, 06 Июля 2022 г. 18:48 (ссылка)
Всякий игровой клиент можно условно разделить на две части: собственно игра, геймплей (Game) и лобби — выбор игры (Lobby/Menu). На практике это разделение, прежде всего, выражено созданием графики для двух экранов — двух корневых мувиклипа. Назовем их AssetGameScreen и AssetLobbyScreen. В коде, соответственно, создается два основных класса: GameScreen и LobbyScreen. Что первично: геймплей или лобби? С чего логически правильно было бы начать? Обычно, когда мы открываем игру, мы видим сначала основное меню, а потом только переходим в игру. Т.е. по времени лобби идет первым. Однако, приложение без лобби можно себе представить, а без геймплея нет. Поэтому геймплей первичен, а лобби является лишь придатком к нему. Начнем исследование клиента с геймплея. Вкратце план такой. Сначала рассмотрим геймплей на примере самой простой игры, какую только можно придумать (ранее мы выяснили, что это Dress-Up). В следующих статьях мы перейдем к Lobby и UI вообще. Выделим общее между ними в ядро (Core Framework). Ядро будет общим не только для Game и Lobby, но и вообще для любых частей приложения, а также для всех последующих игр. https://habr.com/ru/post/675488/?utm_source=habrahabr&utm_medium=rss&utm_campaign=675488
rss_habr
Эволюция игрового фреймворка. Клиент 1. Простейшая реализацияСреда, 06 Июля 2022 г. 18:48 (ссылка)
Всякий игровой клиент можно условно разделить на две части: собственно игра, геймплей (Game) и лобби — выбор игры (Lobby/Menu). На практике это разделение, прежде всего, выражено созданием графики для двух экранов — двух корневых мувиклипа. Назовем их AssetGameScreen и AssetLobbyScreen. В коде, соответственно, создается два основных класса: GameScreen и LobbyScreen. Что первично: геймплей или лобби? С чего логически правильно было бы начать? Обычно, когда мы открываем игру, мы видим сначала основное меню, а потом только переходим в игру. Т.е. по времени лобби идет первым. Однако, приложение без лобби можно себе представить, а без геймплея нет. Поэтому геймплей первичен, а лобби является лишь придатком к нему. Начнем исследование клиента с геймплея. Вкратце план такой. Сначала рассмотрим геймплей на примере самой простой игры, какую только можно придумать (ранее мы выяснили, что это Dress-Up). В следующих статьях мы перейдем к Lobby и UI вообще. Выделим общее между ними в ядро (Core Framework). Ядро будет общим не только для Game и Lobby, но и вообще для любых частей приложения, а также для всех последующих игр. https://habr.com/ru/post/675488/?utm_source=habrahabr&utm_medium=rss&utm_campaign=675488
|
LiveInternet.Ru |
Ссылки: на главную|почта|знакомства|одноклассники|фото|открытки|тесты|чат О проекте: помощь|контакты|разместить рекламу|версия для pda |