Page 3 of 3

Re: игра "приземление"

Posted: Mon Sep 30, 2013 11:24 am
by SoUrcerer
mp3 - камешек в мой огород :) У меня лежит coff-либа для mp3, но она немного недопилена. Но пока свободного времени нет :(

Re: игра "приземление"

Posted: Mon Sep 30, 2013 11:52 am
by segr
SoUrcerer wrote:mp3 - камешек в мой огород :) У меня лежит coff-либа для mp3, но она немного недопилена. Но пока свободного времени нет :(
Да никто и не торопится :) Это не к спеху

Re: игра "приземление"

Posted: Mon Sep 30, 2013 1:23 pm
by Serge
segr
Кстати, почему работа со звуком сделана только через драйвер? И микшер каждый раз писать приходится заново? Может имеет смысл выделить функции работы со звуком в отдельную библиотеку в системе, и просто обращаться из приложения, что-то вроде: "создать микшер (столько то каналов)", "проиграть сэмпл (микшер, указатель на сэмпл)" и т.д.
Пока не было особой необходимости в этом.
На счёт либы общего микшера для разных программ есть большие сомнения. Такой нужен в первую очередь играм, обычным достаточно статических буферов и waveout(). А в играх слишком много вариантов обработки звука. В думе учитывается расстояние до источников звука, в бомбере можно сделать позиционирование, в других играх что-то ещё. Универсальное решение "для всех" получится громоздким и скорее всего неудобным.
И кодеки сделать системные. Или сделано уже?
Пока нет, всё в основном на С написано и переводить кодеки в асм желающих мало. Я готовлю набор pe dll, но в этом случае потребуется установка дистрибутива на /KolibriOs
Spoiler:функция загружает обычные и сжатые kpack'ом файлы

Code: Select all

======================================================================
========== Function 68, subfunction 27 - load file ===================
======================================================================
Parameters:
  * eax = 68 - function number
  * ebx = 27 - subfunction number
  * ecx = pointer to ASCIIZ-string with the filename
Returned value:
  * eax = pointer to the loaded file, or zero
  * edx = size of the loaded file, or zero
Remarks:
  * function loads file and unpacks, if necessary

Re: игра "приземление"

Posted: Mon Sep 30, 2013 1:49 pm
by segr
хм.. по микшеру понятно.
По кодекам тоже.
А что за набор dll, что включает в себя?
За функцию чтения файлов спасибо, но для звуков буду использовать mp3.

Re: игра "приземление"

Posted: Mon Sep 30, 2013 2:56 pm
by Serge
segr
newlibc ffmpeg-1.1.3 freetype-2.5 zlib libpng-1.6 pixman-1 gallium3d, на подходе cairo и mpg123
Я сейчас готовлю sdk с исходниками, библиотеками и примерами.

Re: игра "приземление"

Posted: Mon Sep 30, 2013 7:06 pm
by hidnplayr
There is offcourse also the possibility to use a 'tracker' to create some sound effects. (and/or background music)
The decoder is available and has documentation (http://ufmod.sourceforge.net/)

Re: игра "приземление"

Posted: Tue Oct 01, 2013 12:52 am
by Leency
Во время игры нельзя менять звук, что несколько неудобно, т.к. не всегда можно до начала игры угадать какая громкость нужна.

Re: игра "приземление"

Posted: Tue Oct 01, 2013 6:50 am
by segr
Serge
Набор внушительный. Один ffmpeg чего стоит.

hidnplayr
Tracker music is a good idea. Thank you. It is possible to use for the background. But for small sound samples will not yield great benefits, compared with, for example, mp3 or ogg, IMHO (not tested). Also, creating tracker sounds is not a simple task. Besides, I want to keep the use of samples and mixer as an example.

Leency
Согласен, интерфейс нужно допиливать.

Re: игра "приземление"

Posted: Tue Oct 01, 2013 10:16 am
by Leency
Если будет возможность менять звук во время игры, то нужно учесть, что пользователь, начав игру и не особо вчитавшись в правила может сам начать нажимать клавиши влево/вправо пытаясь "поуправлять" движением самолёта. Самолёт не будет никак менять траекторию, а вот громкость изменится. Выход: нужно или отображать изменение звука в процессе игры или же повесить изменение звука на менеее используемые клавиши (скажем, PgUp/PgDown).

Re: игра "приземление"

Posted: Tue Oct 01, 2013 11:20 am
by segr
Сейчас в планах убрать баги, недочеты, заняться интерфейсом, добавить уровней. Постараюсь учесть все пожелания. Короче привести к законченному играбельному виду. Правда пока на работу отвлекся, сделаю попозже.
А дальше думаю заняться сжатием звуков.

Re: игра "приземление"

Posted: Mon Dec 29, 2014 12:13 am
by Mario_r4
SVN r.5282 Добавил "батники" для сборки русской и английской версии и немного пришлось в код внести изменений для поддержки lang.inc