<!DOCTYPE html> <html> <meta charset="utf-8"> <head> <style> #header { background: #2BA6E3; padding: 0.7em; text-align: left; } #header a { color: white; text-decoration: none; padding: 0.5em 1em 0.5em 1em; } .news_item { background: #FFFFFF; width: 720px; padding: 1em; margin-top: 2em; margin-bottom: 2em; border: 1px solid #E0E0E0; text-align: left; } .news_item_contents { color: #444; line-height: 1.5em; } .news_item_date { margin-bottom: 2em; color: #aaa; } body { background: #FAFAFA; } code, pre { font-family: monospace, serif; font-size: 1em; color: #7f0a0c; } figure { margin: 0px; padding: 0px; } img { width: 720px; } html { font-family: sans-serif; } a { color: #3A91CB; text-decoration: none; } #lang { float: right; } figcaption { color: #aaa; } table { border-collapse: collapse; } table, th, td { border: 1px solid #aaa; padding: 0.5em; margin-top: 0.5em; margin-bottom: 0.5em; } </style> </head> <body> <center> <div id="header"> <a href="../../ru/news/index.html">Новости</a> <a href="../../ru/page/games.html">Игры</a> <a href="../../ru/page/about.html">О нас</a> <div id="lang"> <a href="../../en/news/mahjong-demo2.html">EN</a> <a href="mahjong-demo2.html">RU</a> </div> </div> <h1>В новостях</h1> <div class="news_item"> <h2 class="news_item_title"> <a href="mahjong-demo2.html">OGS Mahjong 2: Demo 2</a> </h2> <p class="news_item_date"> 2018-10-02 00:00 </p> <div class="news_item_contents"> <figure> <img src="../../images/2018-10-02-mahjong-demo2.png" alt="Начало партии Маджонг" /><figcaption>Начало партии Маджонг</figcaption> </figure> <p>Мы рады сообщить о выпуске второй демонстрации OGS Mahjong 2. Её целью были улучшение техники разработки и создание надёжной основы кроссплатформенной разработки.</p> <p><strong>Выпуск</strong></p> <p>Запустите последний выпуск OGS Mahjong 2 в вашем браузере: <a href="http://ogstudio.github.io/ogs-mahjong">http://ogstudio.github.io/ogs-mahjong</a></p> <p>Рекомендуем запускать игру с параметром <code>seed</code> следующим образом: <a href="http://ogstudio.github.io/ogs-mahjong?seed=0">http://ogstudio.github.io/ogs-mahjong?seed=0</a></p> <p>Это позволяет вам играть в ту же самую раскладку после перезапуска.</p> <p>Каждое значение зерна (seed) однозначно задаёт расположение фишек, так что разные значения зерна дают разнообразие партий.</p> <p><strong>Техника разработки и основа</strong></p> <p>Во время разработки второй демонстрации мы перешли с обычной разработки на <a href="example-driven-development.html">разработку через создание примеров</a>. Это привело к появлению трёх различных хранилищ для обеспечения разработки OGS Mahjong 2:</p> <ul> <li>Хранилище <a href="https://github.com/OGStudio/openscenegraph-cross-platform-examples">кроссплатформенных примеров OpenSceneGraph</a> содержит основу вроде работы с ресурсами, создание графического окна и т.д.</li> <li>Хранилище <a href="https://github.com/OGStudio/ogs-mahjong-components">компонент OGS Mahjong</a> содержит специфичную для Маджонга функциональность вроде разбора раскладки, сопоставления фишек и т.д.</li> <li>Хранилище <a href="https://bitbucket.org/ogstudio-games/ogs-mahjong">OGS Mahjong</a> содержит снимок набора функциональностей <code>компонент OGS Mahjong</code>, которые определяют версию игры. Например, версия <code>Demo 2</code> почти полностью повторяет пример <a href="https://github.com/OGStudio/ogs-mahjong-components/tree/master/05.ColorfulStatus">05.ColorfulStatus</a> из <code>компонент OGS Mahjong</code>.</li> </ul> <p><strong>За пределами пасьянса Маджонг</strong></p> <p>В дополнение к параметру <code>seed</code> вы можете указать игре использовать удалённую раскладку, расположенную на GitHub: <a href="http://ogstudio.github.io/ogs-mahjong?seed=0&layout=github://OGStudio/ogs-mahjong-components/data/cat.layout">http://ogstudio.github.io/ogs-mahjong?seed=0&layout=github://OGStudio/ogs-mahjong-components/data/cat.layout</a></p> <p>Использование удалённых ресурсов открывает огромные возможности, т.к. позволяет любому желающему создать раскладку на свой вкус и моментально её проверить.</p> <p>Наш следующий шаг - это выделение игровой логики в виде ресурса.</p> </div> </div> </center> </body> </html>