Board.KolibriOS.org

Официальный форум KolibriOS
Текущее время: Чт мар 30, 2017 3:52 am

Часовой пояс: UTC+03:00




Начать новую тему  Ответить на тему  [ 102 сообщения ]  На страницу 1 2 3 4 57 След.
Автор Сообщение
СообщениеДобавлено: Чт дек 04, 2014 11:00 pm 
Не в сети
Аватара пользователя

Зарегистрирован: Вт ноя 25, 2014 5:08 pm
Сообщения: 109
Конкурсная версия игры готова.

Изображение

Ссылка на последний билд: Heliothryx
Также игра лежит в ISO: KolibriOS Downloads

Примечания к выпуску конкурсной версии:

  • Все ресурсы (текстуры, звуки, музыка, и даже шрифты) генерируются процедурно
  • Как результат предыдущего пункта - игра занимает менее 15 килобайт, что соответствует духу проекта KolibriOS
  • Не смотря на маленький объём бинарника, игра разворачивается в несколько мегабайт в ОЗУ и ввиду особенностей реализации графического движка требует не самого слабого процессора, что не очень соответствует духу проекта KolibriOS :), но для графической игры такого рода, сотканной меньше чем за месяц, думаю, это простительно
  • В исходниках игры предусмотрена специальная утилита, конвертирующая текст в формат, используемый в игре, а так же инструкция её использованию. Это сделано для удобства локализации на другие языки.
  • Ну и напослоедок: названием так никто и не поинтересовался, а зря, оно выбрано не случайно :) ru.wikipedia.org/wiki/Heliothryx

О том, какие знания и навыки были получены в результате моего знакомства с KolibriOS и участия в данном конкурсе, напишу отдельно, уже в январе. Всех с наступающим!

- - - - - - - - - - - -

С чего всё начиналось (для архива):

Всё управление с клавиатуры. Прошу проверить, всё ли у вас работает. Особенно интересует звук: у меня в Virtualbox он запаздывает (уже исправил: драйвер ALSA и контроллер Intel HD audio), в Qemu звук вообще не завёлся (не разбирался, почему). Напишите, на чём запускали вы.

Планируется что-то типа олдскульного скролл-шутера. Из отличительных особенностей игры:
- все ресурсы (текстуры, звуки, и даже шрифты) генерируются процедурно;
- как следствие, игра достаточно мелкая, в текущем виде запускаемый бинарник весит 22 килобайта. И это для графической игры. Итоговая версия вряд ли перешагнёт отметку в 32 кб;
- игра не требует libc, поэтому может запуститься даже на минимальном 1.44 Мб образе KolibriOS.

Вопросы по конкурсу:
1) Где-то есть тема с обсуждением конкурса, куда надо подать заявку на участие и т.п.? Я не нашёл.
2) Yogev Ezra сообщил, что для заливки исходников на SVN требуется аккаунт. Наверное, пора мне его у вас попросить :)
3) Разработку следует вести в ветке /programs/games/<название_игры>, верно?
4) Про исходники: я их конечно открою под свободной лицензией, но пока конкурс не завершён, есть вероятность, что сопернички сопрут кусок движка, форкнут его и будут со мной конкурировать моими же наработками, что меня не устраивает. Жюри подобное поведение будет отслеживать? Не хочется в последний день загружать, вдруг что пойдёт не так.
5) Для звука используется библиотека /contrib/sdk/sources/sound/, я не разобрался (если честнее - не стал разбираться), компилируется ли она куда-то и надо ли с ней линковаться, поэтому тупо скопировал исходники в папку со своей игрой и собираю всё там. Это допустимо? Или надо сделать как-то иначе? В doom, я смотрю, только header-файл sound.h лежит в папке с игрой...

Скриншотики:

Изображение
Изображение

_________________
Roman Shuvalov


Последний раз редактировалось ALPINE Ср янв 14, 2015 8:07 am, всего редактировалось 10 раз.

Вернуться к началу
СообщениеДобавлено: Чт дек 04, 2014 11:12 pm 
Не в сети
Mentor/Kernel Developer
Аватара пользователя

Зарегистрирован: Пт июн 30, 2006 9:01 am
Сообщения: 1202
Nice demo.
Works perfectly here on virtualbox.
No delay on sounds is noticed (I'm using "intel HD audio" emulated card)

_________________
"Any intelligent fool can make things bigger, more complex, and more violent. It takes a touch of genius -- and a lot of courage -- to move in the opposite direction." Albert Einstein


Вернуться к началу
СообщениеДобавлено: Чт дек 04, 2014 11:27 pm 
Не в сети
Аватара пользователя

Зарегистрирован: Вт ноя 25, 2014 5:08 pm
Сообщения: 109
Цитата:
No delay on sounds is noticed (I'm using "intel HD audio" emulated card)
Thanks for testing!

I switched virtualbox audio to "Intel HD audio", it had no effect, but then I switched audiodriver from pulse to ALSA (I'm running Linux) and now delay is gone. Great. I tried Intel HD Audio before and I tried ALSA before but I never tried both in same time :)

BTW, are you using auto-translator to understand russian language? I'm not sure if I should translate my posts to English or not.

_________________
Roman Shuvalov


Вернуться к началу
СообщениеДобавлено: Пт дек 05, 2014 12:20 am 
Не в сети
Kernel Developer

Зарегистрирован: Вс фев 10, 2013 12:37 pm
Сообщения: 2329
.

_________________
Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!


Последний раз редактировалось Mario_r4 Вс янв 04, 2015 9:48 pm, всего редактировалось 2 раза.

Вернуться к началу
СообщениеДобавлено: Пт дек 05, 2014 1:44 am 
Не в сети
Аватара пользователя

Зарегистрирован: Вт ноя 25, 2014 5:08 pm
Сообщения: 109
Цитата:
Очень много FPU.
Еще не оптимизировал. Но чую, что меньше не станет, т.к. там там смешивание текстур каждый кадр.

Цитата:
Однако игра кушает от 1,5 до 3 Мб в зависимости от множителя масштаба.
Будет жрать ещё больше, когда я нагенерирую ещё текстур, звуков и может даже музончик :) Вообще я привык на оперативке не экономить. Так что пара десятков мегабайт для этой игры, думаю, будет сожрана.

_________________
Roman Shuvalov


Вернуться к началу
СообщениеДобавлено: Пт дек 05, 2014 1:52 am 
Не в сети
Kernel Developer

Зарегистрирован: Вс фев 10, 2013 12:37 pm
Сообщения: 2329
.

_________________
Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!


Последний раз редактировалось Mario_r4 Вс янв 04, 2015 9:49 pm, всего редактировалось 1 раз.

Вернуться к началу
СообщениеДобавлено: Пт дек 05, 2014 2:08 am 
Не в сети
Аватара пользователя

Зарегистрирован: Вт ноя 25, 2014 5:08 pm
Сообщения: 109
Это те, что легендарный ККригер сделали? Мне до них далековато :) На GameDev.ru в прошлом году проводился конкурс 64к-игр, там я, собственно, впервые начал изучать эту тему и написал зачаток генератора текстур и звуков. Но своим результатом остался недоволен. Многое не удалось (в том числе не сумел) реализовать, да и игры не получилось, только технодемка.

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

_________________
Roman Shuvalov


Вернуться к началу
СообщениеДобавлено: Пт дек 05, 2014 2:27 am 
Не в сети
Аватара пользователя

Зарегистрирован: Сб июл 05, 2014 11:15 am
Сообщения: 87
ALPINE,
позволь засвидетельствовать свое почтение!
я таки не ошибся, когда решил чтить данное сообщество своим скромным присутствием, здесь ходят очень интересные люди.
будет интересно посмотреть исходники, как я понимаю, они на си,
спасибо за труд!


Вернуться к началу
 Заголовок сообщения: Помогите новичку
СообщениеДобавлено: Пн дек 08, 2014 1:03 pm 
Не в сети
Аватара пользователя

Зарегистрирован: Вт ноя 25, 2014 5:08 pm
Сообщения: 109
Три мелких вопроса по организации файлов проекта (скоро буду заливать проект на SVN, не хочу ничего сломать).

На данный момент дерево файлов моего проекта выглядят примерно так:

Спойлер: Показать
Код:
Содержимое /programs/games/helio/

./readme.utf8.txt <--------------------- ? (1)
./start.asm
./kolibri.ld
./Tupfile.lua
./use_gcc.lua  <-------------------- ? (2)

./game/
./game/rsgamemenu.h
./game/rsgamemenu.c
./game/rsgame.h
./game/rsgame.c
./game/rsmain.h
./game/rsmain.c
./game/rsgamedraw.h
./game/rsgamedraw.c
./game/rskos.h
./game/rskos.c
./game/rsgametext.h
./game/rsgametext.c
./game/rs/
./game/rs/rsplatform_kos.c
./game/rs/rsmicrolibc.c
./game/rs/rsplatform.h
./game/rs/rsmx.c
./game/rs/rsmx.h
./game/rs/rsbits.h
./game/rs/rsmicrolibc.h
./game/rs/rsdebug.h

./system/
./system/boolean.h
./system/sound.h
./system/console.c
./system/kolibri.c
./system/kolibri.h

./sound/
./sound/sndgetpos.asm   <-------------------- ? (3)
./sound/sndgetsize.asm
./sound/sndgetvol.asm
./sound/sndout.asm
./sound/wavhdr.asm
./sound/sndsetpan.asm
./sound/sndsetfmt.asm
./sound/sndsetvol.asm
./sound/sndtime.asm
./sound/init.asm
./sound/snd.inc
./sound/sndgetfmt.asm
./sound/sndgetpan.asm
./sound/sndsetmvol.asm
./sound/sndsetpos.asm
./sound/sndgetmvol.asm
./sound/stopbuf.asm
./sound/setbuf.asm
./sound/proc32.inc
./sound/sndreset.asm
Три вопроса.

1) Readme-файл в UTF-8 - ок? или предпочтительна какая-нибудь там cp866, которую я часто вижу?

2) Проект собираю командой tup в папке с проектом. Поэтому use_gcc.lua лежит здесь. Это, наверное, непорядок? Но tup не может тащить его из родительской "../.." папки, как же тогда мне отлаживать проект, или я что-то делаю не так?

3) Файлы звуковой библиотеки тупо скопированы из SDK. Это нормально или нет? Они ведь (точно такие же) лежат в папке /contrib/sdk/sources/sound/src и наверное тоже компилируются при общей сборке, но подцепить я их не могу по той же причине - tup из папки с проектом не может цеплять содержимое родительских папок.

_________________
Roman Shuvalov


Вернуться к началу
СообщениеДобавлено: Пн дек 08, 2014 2:34 pm 
Не в сети
Public Relations
Аватара пользователя

Зарегистрирован: Пн июн 07, 2010 12:01 pm
Сообщения: 1879
Прошу прощения за задержку с ответом.
ALPINE писал(а):
1) Где-то есть тема с обсуждением конкурса, куда надо подать заявку на участие и т.п.? Я не нашёл.
На форуме темы (пока что) нет. Есть правила конкурса на Хабре: http://habrahabr.ru/company/kolibrios/blog/243081/
Но, если участники хотят, то я могу создать тему и на форуме (скопировать правила с Хабра).

Для официального участия в конкурсе, готовую игру нужно загрузить на SVN. Аккаунт можно попросить у XVilka, CleverMouse или у меня. На форуме по желанию (необязательно) можно выкладывать тестовые версии, для тестирования пользователями и багрепортов. Для этого каждый участник создаёт свою собственную тему со своей игрой в разделе "Игры", что ты и сделал уже.
ALPINE писал(а):
2) Yogev Ezra сообщил, что для заливки исходников на SVN требуется аккаунт. Наверное, пора мне его у вас попросить :)
Верно. Если ты ещё ни у кого не попросил, можешь послать мне в личку username/password, которые ты хочешь, и я тебе создам аккаунт.
ALPINE писал(а):
3) Разработку следует вести в ветке /programs/games/<название_игры>, верно?
Да, верно.
ALPINE писал(а):
4) Про исходники: я их конечно открою под свободной лицензией, но пока конкурс не завершён, есть вероятность, что сопернички сопрут кусок движка, форкнут его и будут со мной конкурировать моими же наработками, что меня не устраивает. Жюри подобное поведение будет отслеживать? Не хочется в последний день загружать, вдруг что пойдёт не так.
Mario_r4 писал(а):
Серьезно? Да, ладно?
Вложение:
Вложение helio-techdemo.txt больше недоступно

Уже своровал и использую, аж с 20.11.2014. :wink:
Как видно, шутка Mario_r4 с дизассемблированием бинарника оказалась удачной - уже целых 25 скачиваний :-) А по существу - это очень маловероятно, что кто-то украдёт твой код до окончания конкурса. Разбираться в чужом коде порой труднее, чем написать свой собственный. Две основные причины, по которым мы просим исходники:
  • Проект KolibriOS является open-source, и мы хотим, чтобы он оставался таким и дальше
  • Чтобы была возможность пофиксить твой код, если из-за какого-то изменения в ядре или драйверах он перестанет работать (ну или просто, если кто-то баг найдёт)
Другие разработчики смогут использовать твой код для изучения и самообучения, но никак не для плагиата. Именно поэтому в правилах я явно запретил портирование чужой игры - только написание новой или портирование своей собственной существующей. Таким образом, возможность плагиата сильно снижается. Но в любом случае, для твоего успокоения, я обещаю тебе, что лично проверю исходники всех участников на явный плагиат.
ALPINE писал(а):
5) Для звука используется библиотека /contrib/sdk/sources/sound/, я не разобрался (если честнее - не стал разбираться), компилируется ли она куда-то и надо ли с ней линковаться, поэтому тупо скопировал исходники в папку со своей игрой и собираю всё там. Это допустимо? Или надо сделать как-то иначе? В doom, я смотрю, только header-файл sound.h лежит в папке с игрой...
Просьба сделать так же, как в DOOM, чтобы не создавать копии одного и того же кода в разных местах. Тогда, если кто-то что-то исправит в звуковой библиотеке, ему не придётся исправлять отдельно и в твоей игре. За помощью, как это сделать, можно обратиться к CleverMouse.

ALPINE писал(а):
Скриншотики:
Скриншотики зачётные, но мне почему-то больше понравился шрифт на скриншоте, который ты выложил на вашем форуме :-)


Вложения:
hello_kolibri_os.png
hello_kolibri_os.png [ 30.23 КБ | 1643 просмотра ]
Вернуться к началу
СообщениеДобавлено: Пн дек 08, 2014 3:33 pm 
Не в сети
Аватара пользователя

Зарегистрирован: Вт ноя 25, 2014 5:08 pm
Сообщения: 109
Ой, мои три вопроса переместили в эту тему что ли? Или это я их сам сюда разместил?

Цитата:
Если ты ещё ни у кого не попросил, можешь послать мне в личку username/password, которые ты хочешь, и я тебе создам аккаунт.
Я уже написал в личку CleverMouse, думаю, дождусь её ответа. уже получил реквизиты аккаунта.

Цитата:
Две основные причины, по которым мы просим исходники
Мне не жалко показать исходники, я даже хочу их выложить под лицензией zlib, чтобы любой желающий мог их использовать даже в закрытых проектах, если найдёт в коде что-то полезное. Вопрос был исключительно про конкурс и про соперничество. Ок, тогда не беспокоюсь.

Цитата:
Просьба сделать так же, как в DOOM
Ок, но возникает проблема с компиляцией, если вызывать команду tup прямо из папки с проектом.
Цитата:
За помощью, как это сделать, можно обратиться к CleverMouse.
Прям в личку что ли? Я думаю, решение данного вопроса будет интересно не только мне одному, может, лучше обсуждение на форуме сделать?

Цитата:
но мне почему-то больше понравился шрифт на скриншоте, который ты выложил на вашем форуме
Да, что-то в нём есть, но изначально всё было настроено не под такой стиль, поэтому многие буквы выглядят слишком покоцанными. Но я попробую и такой вариант шрифта куда-нибудь ввернуть.

Спасибо за ответы.

_________________
Roman Shuvalov


Вернуться к началу
 Заголовок сообщения: Re: Помогите новичку
СообщениеДобавлено: Пн дек 08, 2014 3:53 pm 
Не в сети
Kernel Developer
Аватара пользователя

Зарегистрирован: Чт сен 03, 2009 1:52 pm
Сообщения: 1591
ALPINE писал(а):
Три вопроса.

1) Readme-файл в UTF-8 - ок? или предпочтительна какая-нибудь там cp866, которую я часто вижу?

2) Проект собираю командой tup в папке с проектом. Поэтому use_gcc.lua лежит здесь. Это, наверное, непорядок? Но tup не может тащить его из родительской "../.." папки, как же тогда мне отлаживать проект, или я что-то делаю не так?

3) Файлы звуковой библиотеки тупо скопированы из SDK. Это нормально или нет? Они ведь (точно такие же) лежат в папке /contrib/sdk/sources/sound/src и наверное тоже компилируются при общей сборке, но подцепить я их не могу по той же причине - tup из папки с проектом не может цеплять содержимое родительских папок.

1) Нормально.
2)3) Пункт A2 в http://websvn.kolibrios.org/filedetails.php?repname=Kolibri+OS&path=%2Fbuild.txt. В локальной копии файлы use_gcc.lua и use_sound.lua действительно придётся скопировать, но заливать в репозиторий эту копию не нужно. Чтобы всё это работало как надо, в tup.config локальной копии, который тоже в репозиторий заливать не нужно, надо указать CONFIG_HELPERDIR=., а в Tupfile.lua делать примерно так:
Код:
if tup.getconfig("NO_GCC") ~= "" then return end
if tup.getconfig("HELPERDIR") == ""
then
  if tup.getconfig("NO_FASM") ~= "" then return end -- required for sound compilation
  HELPERDIR = "../.." -- или где там папка с Tupfile.lua, должно указывать на programs
end
tup.include(HELPERDIR .. "/use_gcc.lua")
tup.include(HELPERDIR .. "/use_sound.lua")

В use_sound.lua нужно скорректировать первую строчку, чтобы она указывала куда-нибудь, где есть include/* и src/sound.lib. Последнюю можно собрать отдельно или скачать из http://builds.kolibrios.org/eng/data/pr ... sound/src/.

_________________
Сделаем мир лучше!


Вернуться к началу
СообщениеДобавлено: Пн дек 08, 2014 4:21 pm 
Не в сети
Аватара пользователя

Зарегистрирован: Вт ноя 25, 2014 5:08 pm
Сообщения: 109
Шикарненько, всё ясно, спасибо. Сейчас займусь этими исправлениями, как только сделаю - залью на SVN. Аккаунт получил.

:)

_________________
Roman Shuvalov


Вернуться к началу
СообщениеДобавлено: Пн дек 08, 2014 9:46 pm 
Не в сети
Аватара пользователя

Зарегистрирован: Вт ноя 25, 2014 5:08 pm
Сообщения: 109
Залил. Я смотрю, оно уже мгновенно скомпилилось:
http://builds.kolibrios.org/eng/data/pr ... eliothryx/
Загрузил бинарник, вроде работает. Он размером кстати не 20, а всего 10 кб! Какое-то сжатие применяется? (а, погодите, это наверное из-за библиотеки звука?)

А образы собираются когда? Хочется скачать ночную сборку, чтобы убедиться, что всё уж точно сработало как надо :)

Ещё вопрос про меню: я смотрю, там игры упорядочены не по алфавиту, мне куда впихиваться, в конец или куда попало? Пока не добавляю свой пункт меню, т.к. игра на стадии технодемки, но скоро будет уже играбельная альфа-версия, поэтому спрашиваю уже сейчас.

_________________
Roman Shuvalov


Вернуться к началу
СообщениеДобавлено: Пн дек 08, 2014 10:06 pm 
Не в сети
Kernel Developer
Аватара пользователя

Зарегистрирован: Чт сен 03, 2009 1:52 pm
Сообщения: 1591
В автосборке включено сжатие kpack. В build.txt описано, где взять упаковщик и как настроить упаковку в локальной сборке, tup.config. По умолчанию - без дополнительной настройки - вызов kpack отключён, потому что "взять kpack" - плюс одно действие, без которого при разработке вполне можно обойтись.

Образы собираются, когда есть, что собирать. Список того, что входит в образ, находится в data/Tupfile.lua, и это отнюдь не всё, что есть на svn и что собирается автосборкой.

_________________
Сделаем мир лучше!


Вернуться к началу
Показать сообщения за:  Поле сортировки  
Начать новую тему  Ответить на тему  [ 102 сообщения ]  На страницу 1 2 3 4 57 След.

Часовой пояс: UTC+03:00


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Создано на основе phpBB® Forum Software © phpBB Limited
Русская поддержка phpBB