Случайны выбор дневника Раскрыть/свернуть полный список возможностей


Найдено 120 сообщений
Cообщения с меткой

haxe - Самое интересное в блогах

Следующие 30  »
rss_habr

Оптимальный процесс разработки онлайн игр

Вторник, 08 Ноября 2022 г. 07:07 (ссылка)

Процесс разработки можно назвать тогда оптимальным, когда он приносит максимум прибыли с минимумом затрат. Как утверждают классики политэкономии, если одна компания выстраивает все процессы так, что ее продукт получается в два раза дешевле, чем у других, то при прочих равных она получает в два раза больше прибыль, чем другие. И так продолжается до тех пор, пока остальные не введут те же усовершенствования, и ситуация на рынке не выровняется. Цель понятна. Теперь, как этого можно добиться в разработке игр.

Одна из самых больших статей расходов в IT-компаниях — это программисты. К тому же самая сложно управляемая и контролируемая статья. Административные меры тут работают плохо, и чтобы эффективно воздействовать на программистов, нужно самому, минимум, быть программистом. Поэтому опишем чисто программистские меры и способы по снижению затрат и увеличению производительности.

Читать далее

https://habr.com/ru/post/697502/?utm_source=habrahabr&utm_medium=rss&utm_campaign=697502

Комментарии (0)КомментироватьВ цитатник или сообщество
rss_habr

Оптимальный процесс разработки онлайн игр

Вторник, 08 Ноября 2022 г. 07:07 (ссылка)

Процесс разработки можно назвать тогда оптимальным, когда он приносит максимум прибыли с минимумом затрат. Как утверждают классики политэкономии, если одна компания выстраивает все процессы так, что ее продукт получается в два раза дешевле, чем у других, то при прочих равных она получает в два раза больше прибыль, чем другие. И так продолжается до тех пор, пока остальные не введут те же усовершенствования, и ситуация на рынке не выровняется. Цель понятна. Теперь, как этого можно добиться в разработке игр.

Одна из самых больших статей расходов в IT-компаниях — это программисты. К тому же самая сложно управляемая и контролируемая статья. Административные меры тут работают плохо, и чтобы эффективно воздействовать на программистов, нужно самому, минимум, быть программистом. Поэтому опишем чисто программистские меры и способы по снижению затрат и увеличению производительности.

Читать далее

https://habr.com/ru/post/697502/?utm_source=habrahabr&utm_medium=rss&utm_campaign=697502

Комментарии (0)КомментироватьВ цитатник или сообщество
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

Метки:   Комментарии (0)КомментироватьВ цитатник или сообщество
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

Метки:   Комментарии (0)КомментироватьВ цитатник или сообщество
rss_habr

Эволюция игрового фреймворка. Клиент 2. Менеджеры и другие классы

Среда, 20 Июля 2022 г. 12:05 (ссылка)

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

Все вместе уже можно будет считать вполне оформившимся игровым фреймворком.

Читать далее

https://habr.com/ru/post/677386/?utm_source=habrahabr&utm_medium=rss&utm_campaign=677386

Комментарии (0)КомментироватьВ цитатник или сообщество
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

Комментарии (0)КомментироватьВ цитатник или сообщество
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

Комментарии (0)КомментироватьВ цитатник или сообщество
rss_habr

Эволюция игрового фреймворка. Клиент 4. Вложенные компоненты

Пятница, 08 Июля 2022 г. 12:09 (ссылка)

Так как вся логика сейчас, весь функционал находится в компонентах, то компонент является основной клеточкой нашего приложения. Эти простые клеточки можно объединять в "ткани" и составлять из них весь организм приложения. И это тоже будут компоненты. Таким образом, в Main мы создаем всего один корневой компонент для приложения, а он уже строит всю разветвленную иерархию вложенных компонентов.

Чтобы умело управлять этой иерархией нужно добавить в класс Component несколько новых свойств и методов...

Читать далее

https://habr.com/ru/post/675846/?utm_source=habrahabr&utm_medium=rss&utm_campaign=675846

Комментарии (0)КомментироватьВ цитатник или сообщество
rss_habr

Эволюция игрового фреймворка. Клиент 4. Вложенные компоненты

Пятница, 08 Июля 2022 г. 12:09 (ссылка)

Так как вся логика сейчас, весь функционал находится в компонентах, то компонент является основной клеточкой нашего приложения. Эти простые клеточки можно объединять в "ткани" и составлять из них весь организм приложения. И это тоже будут компоненты. Таким образом, в Main мы создаем всего один корневой компонент для приложения, а он уже строит всю разветвленную иерархию вложенных компонентов.

Чтобы умело управлять этой иерархией нужно добавить в класс Component несколько новых свойств и методов...

Читать далее

https://habr.com/ru/post/675846/?utm_source=habrahabr&utm_medium=rss&utm_campaign=675846

Комментарии (0)КомментироватьВ цитатник или сообщество
rss_habr

Эволюция игрового фреймворка. Клиент 3. Скин

Пятница, 08 Июля 2022 г. 09:43 (ссылка)

В прошлый раз мы ввели концепцию компонентов как удобный способ добавлять логику к графике. В базовом классе Component есть свойство skin, в сеттере которого парсится новая графика при установке значения и удаляются все ссылки на нее — при удалении. Благодаря этому свойству в приложении можно менять графику GUI на лету, без перезагрузки, как в каком-нибудь Winamp'е.

Сама графика должна каким-то образом создаваться снаружи компонента, и сам компонент на это никак не влияет. Но так как мы твердо решили сделать всю логику приложения через компоненты, то и создание скинов должно осуществляться в них же. Этим мы в данной статье и займемся.

Читать далее

https://habr.com/ru/post/675706/?utm_source=habrahabr&utm_medium=rss&utm_campaign=675706

Метки:   Комментарии (0)КомментироватьВ цитатник или сообщество
rss_habr

Эволюция игрового фреймворка. Клиент 3. Скин

Пятница, 08 Июля 2022 г. 09:43 (ссылка)

В прошлый раз мы ввели концепцию компонентов как удобный способ добавлять логику к графике. В базовом классе Component есть свойство skin, в сеттере которого парсится новая графика при установке значения и удаляются все ссылки на нее — при удалении. Благодаря этому свойству в приложении можно менять графику GUI на лету, без перезагрузки, как в каком-нибудь Winamp'е.

Сама графика должна каким-то образом создаваться снаружи компонента, и сам компонент на это никак не влияет. Но так как мы твердо решили сделать всю логику приложения через компоненты, то и создание скинов должно осуществляться в них же. Этим мы в данной статье и займемся.

Читать далее

https://habr.com/ru/post/675706/?utm_source=habrahabr&utm_medium=rss&utm_campaign=675706

Метки:   Комментарии (0)КомментироватьВ цитатник или сообщество
rss_habr

Эволюция игрового фреймворка. Клиент 2. Компоненты

Четверг, 07 Июля 2022 г. 11:57 (ссылка)

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

Читать далее

https://habr.com/ru/post/675600/?utm_source=habrahabr&utm_medium=rss&utm_campaign=675600

Комментарии (0)КомментироватьВ цитатник или сообщество
rss_habr

Эволюция игрового фреймворка. Клиент 2. Компоненты

Четверг, 07 Июля 2022 г. 11:57 (ссылка)

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

Читать далее

https://habr.com/ru/post/675600/?utm_source=habrahabr&utm_medium=rss&utm_campaign=675600

Комментарии (0)КомментироватьВ цитатник или сообщество
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

Комментарии (0)КомментироватьВ цитатник или сообщество
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

Комментарии (0)КомментироватьВ цитатник или сообщество

Следующие 30  »

<haxe - Самое интересное в блогах

Страницы: [1] 2 3 ..
.. 10

LiveInternet.Ru Ссылки: на главную|почта|знакомства|одноклассники|фото|открытки|тесты|чат
О проекте: помощь|контакты|разместить рекламу|версия для pda