From 80da9b0e2eed26458abb4b8aea3790e871171287 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=9C=D0=B8=D1=85=D0=B0=D0=B8=D0=BB=20=D0=9A=D0=B0=D0=BF?= =?UTF-8?q?=D0=B5=D0=BB=D1=8C=D0=BA=D0=BE?= Date: Thu, 4 Jul 2024 23:00:49 +0300 Subject: [PATCH] =?UTF-8?q?=D0=98=D1=8E=D0=BB=D1=8C=D1=81=D0=BA=D0=B0?= =?UTF-8?q?=D1=8F=20=D1=81=D1=82=D0=B0=D1=82=D1=8C=D1=8F=20|=20July=20arti?= =?UTF-8?q?cle?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- en/news/2024-07_memory-gui.md | 31 ++++++++++++ en/news/index.html | 40 ++++++++------- en/news/index2.html | 36 +++++++------- en/news/index3.html | 34 +++++++------ en/news/index4.html | 38 ++++++-------- en/news/index5.html | 40 ++++++++------- en/news/index6.html | 33 +++++++------ en/news/index7.html | 31 ++++++------ en/news/index8.html | 16 ++++++ en/news/memory-gui.html | 74 ++++++++++++++++++++++++++++ images/2024_memory-gui_notebook.jpg | Bin 0 -> 86146 bytes ru/news/2024-07_memory-gui.md | 31 ++++++++++++ ru/news/index.html | 40 ++++++++------- ru/news/index2.html | 36 +++++++------- ru/news/index3.html | 34 +++++++------ ru/news/index4.html | 37 ++++++-------- ru/news/index5.html | 39 ++++++++------- ru/news/index6.html | 33 +++++++------ ru/news/index7.html | 31 ++++++------ ru/news/index8.html | 16 ++++++ ru/news/memory-gui.html | 74 ++++++++++++++++++++++++++++ 21 files changed, 499 insertions(+), 245 deletions(-) create mode 100644 en/news/2024-07_memory-gui.md create mode 100644 en/news/memory-gui.html create mode 100644 images/2024_memory-gui_notebook.jpg create mode 100644 ru/news/2024-07_memory-gui.md create mode 100644 ru/news/memory-gui.html diff --git a/en/news/2024-07_memory-gui.md b/en/news/2024-07_memory-gui.md new file mode 100644 index 0000000..961ac25 --- /dev/null +++ b/en/news/2024-07_memory-gui.md @@ -0,0 +1,31 @@ +Title: "Memory" GUI +Date: 2024-07-04 00:00 +Category: News +Slug: memory-gui +Lang: en + +# "Memory" GUI + +In June I implemented GUI for "Memory" game in Python with the help of +[Python Arcade][arcade]. + +While searching for the most convenient tool to create resources (assets), I found +notebooks lined with graph paper to work the best: + +![Texture of a notebook][ntex] + +To see the portable code architecture in real life, I participated in the 3-day long +gamejam of ["Start the game"][jam]. "Memory" game was used with a customized look to satisfy jam requirements. + +Here's how the customized version looks like ([Windows64 build][w64]): + + + +# July plans + +I'll make the instrument support Python to JavaScript code translation. + +[arcade]: https://arcade.academy +[w64]: https://ims.cr5.space/app/p/4FvJS4fk/Вредные-продукты/about +[ntex]: ../../images/2024_memory-gui_notebook.jpg +[jam]: https://dtf.ru/games/2783053-nachni-igru-ocenka-videorolikov diff --git a/en/news/index.html b/en/news/index.html index cc1d9d6..f303587 100644 --- a/en/news/index.html +++ b/en/news/index.html @@ -30,6 +30,28 @@

News

+
+

+ "Memory" GUI +

+

+ 2024-07-04 00:00 +

+
+

"Memory" GUI

+

In June I implemented GUI for "Memory" game in Python with the help of +Python Arcade.

+

While searching for the most convenient tool to create resources (assets), I found +notebooks lined with graph paper to work the best:

+

Texture of a notebook

+

To see the portable code architecture in real life, I participated in the 3-day long +gamejam of "Start the game". "Memory" game was used with a customized look to satisfy jam requirements.

+

Here's how the customized version looks like (Windows64 build):. . .

+
+ +

"Memory" text UI @@ -214,24 +236,6 @@ not the hardware one. Today I can confidently say I found the necessary. . .

Continue reading

-
-

- Teaching folks to program 2019, a.k.a. in the search of an ideal program: Sequence -

-

- 2020-02-12 00:00 -

-
-

MUROM

-

In this article Michael shares his thoughts on teaching folks to program in 2019.

-

Preface

-

Autumn 2019 was the third time I participated as one of the teachers in the course to teach 10-15-year-old folks to program. The course took place from mid. September to mid. December. Each Saturday, we were studying from 10 AM to 12 PM. More details about the structure of each class and the game itself can be found in the 2018 article.

-

I have the following goals for conducting such courses:. . .

-
- -

Page 1 of 8

diff --git a/en/news/index2.html b/en/news/index2.html index 498b557..8cb9168 100644 --- a/en/news/index2.html +++ b/en/news/index2.html @@ -30,6 +30,24 @@

News

+
+

+ Teaching folks to program 2019, a.k.a. in the search of an ideal program: Sequence +

+

+ 2020-02-12 00:00 +

+
+

MUROM

+

In this article Michael shares his thoughts on teaching folks to program in 2019.

+

Preface

+

Autumn 2019 was the third time I participated as one of the teachers in the course to teach 10-15-year-old folks to program. The course took place from mid. September to mid. December. Each Saturday, we were studying from 10 AM to 12 PM. More details about the structure of each class and the game itself can be found in the 2018 article.

+

I have the following goals for conducting such courses:. . .

+
+ +

The pros and cons of restarting from scratch @@ -186,24 +204,6 @@ It seems that right now we have less completed features than before the release Continue reading

-
-

- Example-driven development -

-

- 2018-06-27 00:00 -

-
-

Debug broker

-

This article explains how the third OpenSceneGraph cross-platform example opened our eyes to example-driven development.

-

2018-08 EDIT: the third example has been renamed to the fourth one due to the reasons described in the next article.

-

The third OpenSceneGraph cross-platform example

-

The third OpenSceneGraph cross-platform example explains how to implement remote debugging across platforms. This example is less about OpenSceneGraph and more about different platforms.. . .

-
- -

Page 2 of 8

diff --git a/en/news/index3.html b/en/news/index3.html index 93fb5ec..9fc4f37 100644 --- a/en/news/index3.html +++ b/en/news/index3.html @@ -30,6 +30,24 @@

News

+
+

+ Example-driven development +

+

+ 2018-06-27 00:00 +

+
+

Debug broker

+

This article explains how the third OpenSceneGraph cross-platform example opened our eyes to example-driven development.

+

2018-08 EDIT: the third example has been renamed to the fourth one due to the reasons described in the next article.

+

The third OpenSceneGraph cross-platform example

+

The third OpenSceneGraph cross-platform example explains how to implement remote debugging across platforms. This example is less about OpenSceneGraph and more about different platforms.. . .

+
+ +
-
-

- OpenSceneGraph cross-platform guide -

-

- 2017-07-17 00:00 -

-
-

OpenSceneGraph sample application in desktop and mobile

-

This article summarizes the work we did to produce OpenSceneGraph cross-platform guide.

-

June marked the finish of OpenSceneGraph cross-platform guide with the publishing of the last (initially planned) tutorial. The tutorial describes how to build and run sample OpenSceneGraph application in Web using Emscripten.. . .

-
- -

Page 3 of 8

diff --git a/en/news/index4.html b/en/news/index4.html index e676803..cb14d22 100644 --- a/en/news/index4.html +++ b/en/news/index4.html @@ -30,6 +30,22 @@

News

+
+

+ OpenSceneGraph cross-platform guide +

+

+ 2017-07-17 00:00 +

+
+

OpenSceneGraph sample application in desktop and mobile

+

This article summarizes the work we did to produce OpenSceneGraph cross-platform guide.

+

June marked the finish of OpenSceneGraph cross-platform guide with the publishing of the last (initially planned) tutorial. The tutorial describes how to build and run sample OpenSceneGraph application in Web using Emscripten.. . .

+
+ +

iOS tutorial @@ -170,28 +186,6 @@ Continue reading

-
-

- Technology showcases -

-

- 2016-10-31 00:00 -

-
-

Feature file in the background

-

In this article, we take another look at 2015-2016 live sessions' format and introduce a new showcase format for 2017.

-

2015 and 2016: live sessions.

-

As you know, we use live sessions to show the state of our technology and create a small functional game from scratch. We have conducted four live sessions in the past year, which gave birth to the following small games: - - - - - . . .

- - -

Page 4 of 8

diff --git a/en/news/index5.html b/en/news/index5.html index 99d6686..56bd334 100644 --- a/en/news/index5.html +++ b/en/news/index5.html @@ -30,6 +30,28 @@

News

+
+

+ Technology showcases +

+

+ 2016-10-31 00:00 +

+
+

Feature file in the background

+

In this article, we take another look at 2015-2016 live sessions' format and introduce a new showcase format for 2017.

+

2015 and 2016: live sessions.

+

As you know, we use live sessions to show the state of our technology and create a small functional game from scratch. We have conducted four live sessions in the past year, which gave birth to the following small games: +

Created gameLive session date
+ + + + . . .

+ + +

September 2016 recap @@ -178,24 +200,6 @@ It's time to create simple Mahjong solitaire game.

Continue reading

-
-

- May 2016 live session materials -

-

- 2016-05-29 00:00 -

-
- -

This time we have shown how to create a simple Domino based game. Below you can find all materials related to the game creation.

-
    -
  1. Editor 0.9 for Linux (Debian based), OS X (10.9+), Windows is available at SourceForge. Simply unpack it and launch the run script.. . .
  2. -
-
- -

Page 5 of 8

diff --git a/en/news/index6.html b/en/news/index6.html index 9dd53fe..0a8bff7 100644 --- a/en/news/index6.html +++ b/en/news/index6.html @@ -30,6 +30,24 @@

News

+
+

+ May 2016 live session materials +

+

+ 2016-05-29 00:00 +

+
+ +

This time we have shown how to create a simple Domino based game. Below you can find all materials related to the game creation.

+
    +
  1. Editor 0.9 for Linux (Debian based), OS X (10.9+), Windows is available at SourceForge. Simply unpack it and launch the run script.. . .
  2. +
+
+ +
-
-

- Creating a simple game live: 15 November 2015 -

-

- 2015-11-09 00:00 -

-
-

We're glad to annouce that the LiveCoding session will take place on 15 November 2015 at 12:00 CET. Join us!

-

. . .

-
- -

Page 6 of 8

diff --git a/en/news/index7.html b/en/news/index7.html index 78a22d1..ad3479e 100644 --- a/en/news/index7.html +++ b/en/news/index7.html @@ -30,6 +30,21 @@

News

+
+

+ Creating a simple game live: 15 November 2015 +

+

+ 2015-11-09 00:00 +

+
+

We're glad to annouce that the LiveCoding session will take place on 15 November 2015 at 12:00 CET. Join us!

+

. . .

+
+ +
-
-

- User survey ends today -

-

- 2014-12-31 11:00 -

-
-

About a year ago, we started the user survey, in order to find out what do you think of the Open Source in general and about our project in particular. Today we're closing this survey. It took time, but we've got plenty of answers. Thank you for that.

-

We'll share our thought about the results of the survey in one of the future articles.

-

After the survey, every one of you has got the code. With this code, you'll be able to access the alpha test of the OGS Mahjong 2, as soon as we'll be ready to start it (i can't promise anything, but we're planning to do it in 2015). Also, you'll be able to choose between the deluxe version of OGS Mahjong 2 and the deluxe version of Shuan, as soon as we'll be ready to release these games.. . .

-
- -

Page 7 of 8

diff --git a/en/news/index8.html b/en/news/index8.html index a49d09a..c578cbe 100644 --- a/en/news/index8.html +++ b/en/news/index8.html @@ -30,6 +30,22 @@

News

+
+

+ User survey ends today +

+

+ 2014-12-31 11:00 +

+
+

About a year ago, we started the user survey, in order to find out what do you think of the Open Source in general and about our project in particular. Today we're closing this survey. It took time, but we've got plenty of answers. Thank you for that.

+

We'll share our thought about the results of the survey in one of the future articles.

+

After the survey, every one of you has got the code. With this code, you'll be able to access the alpha test of the OGS Mahjong 2, as soon as we'll be ready to start it (i can't promise anything, but we're planning to do it in 2015). Also, you'll be able to choose between the deluxe version of OGS Mahjong 2 and the deluxe version of Shuan, as soon as we'll be ready to release these games.. . .

+
+ +

And another year has passed diff --git a/en/news/memory-gui.html b/en/news/memory-gui.html new file mode 100644 index 0000000..c8d588d --- /dev/null +++ b/en/news/memory-gui.html @@ -0,0 +1,74 @@ + + + + + + + + + +

In the news...

+
+
+

+ "Memory" GUI +

+

+ 2024-07-04 00:00 +

+
+

"Memory" GUI

+

In June I implemented GUI for "Memory" game in Python with the help of +Python Arcade.

+

While searching for the most convenient tool to create resources (assets), I found +notebooks lined with graph paper to work the best:

+

Texture of a notebook

+

To see the portable code architecture in real life, I participated in the 3-day long +gamejam of "Start the game". "Memory" game was used with a customized look to satisfy jam requirements.

+

Here's how the customized version looks like (Windows64 build):

+ +

July plans

+

I'll make the instrument support Python to JavaScript code translation.

+
+
+
+ + + +
+ + diff --git a/images/2024_memory-gui_notebook.jpg b/images/2024_memory-gui_notebook.jpg new file mode 100644 index 0000000000000000000000000000000000000000..7335ca23ed8fe2680b055f603745a66f8c4a0cd3 GIT binary patch literal 86146 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ΠWYEi-&=uaz6 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 + +# Планы на июль + +Добавлю в инструмент трансляцию кода из Python в JavaScript. + +[arcade]: https://arcade.academy +[w64]: https://ims.cr5.space/app/p/4FvJS4fk/Вредные-продукты/about +[ntex]: ../../images/2024_memory-gui_notebook.jpg +[jam]: https://dtf.ru/games/2783053-nachni-igru-ocenka-videorolikov diff --git a/ru/news/index.html b/ru/news/index.html index 73efba7..a580d48 100644 --- a/ru/news/index.html +++ b/ru/news/index.html @@ -30,6 +30,28 @@

Новости

+
+

+ Графический интерфейс «Памяти» +

+

+ 2024-07-04 00:00 +

+
+

Графический интерфейс «Памяти»

+

В июне реализовал графический интерфейс игры «Память» на Python с помощью Python Arcade.

+

В ходе поиска наиболее удобного инструмента создания ресурсов (ассетов) остановился на +обычной тетрадке в клетку:

+

Текстура в тетрадке

+

Для дополнительной проверки качества архитектуры портируемого кода участвовал в +трёхдневном геймджеме от «Начни игру» с игрой «Память», оформленной под +требования конкурса.

+

Выглядит итоговая игра следующим образом (сборка Windows64):. . .

+
+ +

Текстовый интерфейс «Памяти» @@ -213,24 +235,6 @@ Ubuntu Edge. Особенностью продукта должна была Читать далее

-
-

- Обучение программированию 2019, или в поисках идеальной программы: Последовательность -

-

- 2020-02-12 00:00 -

-
-

МУРОМ

-

В этой статье Михаил расскажет об обучении ребят программированию в 2019-м году.

-

Предисловие

-

Осенью 2019-го я в третий раз участвовал в курсе обучения ребят 10-15 лет программированию в качестве одного из преподавателей. Наши курсы проходили с середины сентября по середину декабря. Каждое занятие было в субботу с 10:00 до 12:00. Подробнее о структуре каждого урока и деталях создаваемой на курсе игры можно узнать из статьи за 2018-й год.

-

Лично для себя я выделил две основные цели, к которым иду с помощью курсов:. . .

-
- -

Страница 1 из 8

diff --git a/ru/news/index2.html b/ru/news/index2.html index 97f7c50..d771096 100644 --- a/ru/news/index2.html +++ b/ru/news/index2.html @@ -30,6 +30,24 @@

Новости

+
+

+ Обучение программированию 2019, или в поисках идеальной программы: Последовательность +

+

+ 2020-02-12 00:00 +

+
+

МУРОМ

+

В этой статье Михаил расскажет об обучении ребят программированию в 2019-м году.

+

Предисловие

+

Осенью 2019-го я в третий раз участвовал в курсе обучения ребят 10-15 лет программированию в качестве одного из преподавателей. Наши курсы проходили с середины сентября по середину декабря. Каждое занятие было в субботу с 10:00 до 12:00. Подробнее о структуре каждого урока и деталях создаваемой на курсе игры можно узнать из статьи за 2018-й год.

+

Лично для себя я выделил две основные цели, к которым иду с помощью курсов:. . .

+
+ +
-
-

- Разработка через создание примеров -

-

- 2018-06-27 00:00 -

-
-

Брокер отладки

-

Эта статья описывает то, как создание третьего кросс-платформенного примера OpenSceneGraph привело нас к разработке через создание примеров.

-

ИЗМЕНЕНИЯ ОТ 2018-08: третий пример был переименован в четвёртый в связи с причинами, изложенными в следующей статье.

-

Третий кросс-платформенный пример OpenSceneGraph

-

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

-
- -

Страница 2 из 8

diff --git a/ru/news/index3.html b/ru/news/index3.html index 024b55c..1da95c4 100644 --- a/ru/news/index3.html +++ b/ru/news/index3.html @@ -30,6 +30,24 @@

Новости

+
+

+ Разработка через создание примеров +

+

+ 2018-06-27 00:00 +

+
+

Брокер отладки

+

Эта статья описывает то, как создание третьего кросс-платформенного примера OpenSceneGraph привело нас к разработке через создание примеров.

+

ИЗМЕНЕНИЯ ОТ 2018-08: третий пример был переименован в четвёртый в связи с причинами, изложенными в следующей статье.

+

Третий кросс-платформенный пример OpenSceneGraph

+

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

+
+ +
-
-

- OpenSceneGraph cross-platform guide -

-

- 2017-07-17 00:00 -

-
-

Приложение OpenSceneGraph на десктопе и мобилке

-

Эта статья резюмирует создание кросс-платформенного руководства OpenSceneGraph.

-

Июнь ознаменовал собой окончание работы над кросс-платформенным руководством OpenSceneGraph. Мы опубликовали последний самоучитель (из изначально запланированных). Этот самоучитель описывает сборку и запуск примера приложения OpenSceneGraph в вебе с помощью Emscripten.. . .

-
- -

Страница 3 из 8

diff --git a/ru/news/index4.html b/ru/news/index4.html index e57b162..e4c552a 100644 --- a/ru/news/index4.html +++ b/ru/news/index4.html @@ -30,6 +30,22 @@

Новости

+
+

+ OpenSceneGraph cross-platform guide +

+

+ 2017-07-17 00:00 +

+
+

Приложение OpenSceneGraph на десктопе и мобилке

+

Эта статья резюмирует создание кросс-платформенного руководства OpenSceneGraph.

+

Июнь ознаменовал собой окончание работы над кросс-платформенным руководством OpenSceneGraph. Мы опубликовали последний самоучитель (из изначально запланированных). Этот самоучитель описывает сборку и запуск примера приложения OpenSceneGraph в вебе с помощью Emscripten.. . .

+
+ +
-
-

- Демонстрации технологий -

-

- 2016-10-31 00:00 -

-
-

Файл с функциональностью на фоне

-

Сегодня мы ещё раз взглянем на формат демонстраций в 2015-2016 годах, а также сообщим о новом формате 2017-го.

-

2015 и 2016: демонстрации в прямом эфире.

-

Как вы знаете, в ходе демонстраций мы в прямом эфире показываем состояние наших технологий и собираем небольшую работающую игру с нуля. За прошедший год мы провели 4 демонстрации в прямом эфире, в ходе которых создали следующие небольшие игры: -

Created gameLive session date
- - - . . .

- - -

Страница 4 из 8

diff --git a/ru/news/index5.html b/ru/news/index5.html index c552c64..347c6f7 100644 --- a/ru/news/index5.html +++ b/ru/news/index5.html @@ -30,6 +30,27 @@

Новости

+
+

+ Демонстрации технологий +

+

+ 2016-10-31 00:00 +

+
+

Файл с функциональностью на фоне

+

Сегодня мы ещё раз взглянем на формат демонстраций в 2015-2016 годах, а также сообщим о новом формате 2017-го.

+

2015 и 2016: демонстрации в прямом эфире.

+

Как вы знаете, в ходе демонстраций мы в прямом эфире показываем состояние наших технологий и собираем небольшую работающую игру с нуля. За прошедший год мы провели 4 демонстрации в прямом эфире, в ходе которых создали следующие небольшие игры: +

Созданная игра
+ + + . . .

+ + + -
-

- Материалы прямого эфира за май 2016 -

-

- 2016-05-29 00:00 -

-
- -

В этот раз мы показали, как создать простую игру на основе Домино. Ниже приведены все материалы, связанные с созданием игры.

-
    -
  1. Редактор 0.9 для Linux (на основе Debian), OS X (10.9+), Windows доступен на SourceForge. Просто распакуйте и запустите скрипт run.. . .
  2. -
-
- -

Страница 5 из 8

diff --git a/ru/news/index6.html b/ru/news/index6.html index e1a9aca..36d949e 100644 --- a/ru/news/index6.html +++ b/ru/news/index6.html @@ -30,6 +30,24 @@

Новости

+
+

+ Материалы прямого эфира за май 2016 +

+

+ 2016-05-29 00:00 +

+
+ +

В этот раз мы показали, как создать простую игру на основе Домино. Ниже приведены все материалы, связанные с созданием игры.

+
    +
  1. Редактор 0.9 для Linux (на основе Debian), OS X (10.9+), Windows доступен на SourceForge. Просто распакуйте и запустите скрипт run.. . .
  2. +
+
+ +
-
-

- Создание простой игры в прямом эфире: 15 ноября 2015 -

-

- 2015-11-09 00:00 -

-
-

Мы рады сообщить, что трансляция LiveCoding состоится 15 ноября 2015 в 14:00 MSK. Присоединяйтесь!

-

. . .

-
- -

Страница 6 из 8

diff --git a/ru/news/index7.html b/ru/news/index7.html index df4286d..8c011c5 100644 --- a/ru/news/index7.html +++ b/ru/news/index7.html @@ -30,6 +30,21 @@

Новости

+
+

+ Создание простой игры в прямом эфире: 15 ноября 2015 +

+

+ 2015-11-09 00:00 +

+
+

Мы рады сообщить, что трансляция LiveCoding состоится 15 ноября 2015 в 14:00 MSK. Присоединяйтесь!

+

. . .

+
+ +
-
-

- Окончание опроса -

-

- 2014-12-31 11:00 -

-
-

Около года назад мы начинали опрос, с помощью которого планировали узнать ваше отношение к Open Source вообще и нашему проекту в частности. Сегодня мы его завершаем. Ответы набирались довольно медленно, но в целом мы собрали довольно приличное ответов, за что вам очень благодарны.

-

Сделанными выводами мы обязательно поделимся в одной из ближайших статей.

-

После завершения опроса для каждого из его участников был сгенерирован код. С помощью этого кода вы сможете получить доступ к альфа-тестированию OGS Mahjong 2, как только оно начнется (не могу обещать конкретных дат, но мы планируем запустить его в 2015 году), а также, на выбор, deluxe-версию OGS Mahjong 2 либо deluxe-версию Shuan, когда разработка этих игр будет закончена.. . .

-
- -

Страница 7 из 8

diff --git a/ru/news/index8.html b/ru/news/index8.html index 816874c..4e5b6b4 100644 --- a/ru/news/index8.html +++ b/ru/news/index8.html @@ -30,6 +30,22 @@

Новости

+
+

+ Окончание опроса +

+

+ 2014-12-31 11:00 +

+
+

Около года назад мы начинали опрос, с помощью которого планировали узнать ваше отношение к Open Source вообще и нашему проекту в частности. Сегодня мы его завершаем. Ответы набирались довольно медленно, но в целом мы собрали довольно приличное ответов, за что вам очень благодарны.

+

Сделанными выводами мы обязательно поделимся в одной из ближайших статей.

+

После завершения опроса для каждого из его участников был сгенерирован код. С помощью этого кода вы сможете получить доступ к альфа-тестированию OGS Mahjong 2, как только оно начнется (не могу обещать конкретных дат, но мы планируем запустить его в 2015 году), а также, на выбор, deluxe-версию OGS Mahjong 2 либо deluxe-версию Shuan, когда разработка этих игр будет закончена.. . .

+
+ +

И вот прошел еще один год diff --git a/ru/news/memory-gui.html b/ru/news/memory-gui.html new file mode 100644 index 0000000..a746333 --- /dev/null +++ b/ru/news/memory-gui.html @@ -0,0 +1,74 @@ + + + + + + + + + +

В новостях...

+
+
+

+ Графический интерфейс «Памяти» +

+

+ 2024-07-04 00:00 +

+
+

Графический интерфейс «Памяти»

+

В июне реализовал графический интерфейс игры «Память» на Python с помощью Python Arcade.

+

В ходе поиска наиболее удобного инструмента создания ресурсов (ассетов) остановился на +обычной тетрадке в клетку:

+

Текстура в тетрадке

+

Для дополнительной проверки качества архитектуры портируемого кода участвовал в +трёхдневном геймджеме от «Начни игру» с игрой «Память», оформленной под +требования конкурса.

+

Выглядит итоговая игра следующим образом (сборка Windows64):

+ +

Планы на июль

+

Добавлю в инструмент трансляцию кода из Python в JavaScript.

+
+
+
+ + + +
+ +
Созданная игра