Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Софт > Игры
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 28.10.2016, 09:19
Аватар для ined
ined ined вне форума
Начинающий
 
Регистрация: 16.11.2008
Адрес: Российская Федерация!! :)
Сообщения: 165
Версия Delphi: Delphi 2010
Репутация: 1272
По умолчанию Игра - "Ревер"

Над названием я почти не думал, но думаю игра получилась довольно занятной
Это моя 1ая игра которая доведена, ну или почти доведена до ума.
Скачать с google диска
Скачать с delphisources
Описание
__________________
11011111 INED Home code
VK

Последний раз редактировалось ined, 07.11.2016 в 20:57.
Ответить с цитированием
  #2  
Старый 28.10.2016, 15:14
Аватар для M.A.D.M.A.N.
M.A.D.M.A.N. M.A.D.M.A.N. вне форума
Sir Richard Abramson
 
Регистрация: 05.04.2008
Сообщения: 5,505
Версия Delphi: XE10
Репутация: выкл
По умолчанию

Хоть бы скрины кинул и описание игры дал, а то вдруг там малварь в архиве, а ты фейк.
__________________
— Как тебя понимать?
— Понимать меня не обязательно. Обязательно меня любить и кормить вовремя.


На Delphi, увы, больше не программирую.
Рекомендуемая литература по программированию
Ответить с цитированием
  #3  
Старый 28.10.2016, 16:45
Аватар для ined
ined ined вне форума
Начинающий
 
Регистрация: 16.11.2008
Адрес: Российская Федерация!! :)
Сообщения: 165
Версия Delphi: Delphi 2010
Репутация: 1272
По умолчанию

Цитата:
Сообщение от M.A.D.M.A.N.
Хоть бы скрины кинул и описание игры дал, а то вдруг там малварь в архиве, а ты фейк.
А фейк, это типо не я? )
__________________
11011111 INED Home code
VK
Ответить с цитированием
  #4  
Старый 28.10.2016, 17:05
Аватар для ined
ined ined вне форума
Начинающий
 
Регистрация: 16.11.2008
Адрес: Российская Федерация!! :)
Сообщения: 165
Версия Delphi: Delphi 2010
Репутация: 1272
По умолчанию

Игра написана на Delphi 2010. Использовал OpenGL и WinApi. Файлы *.t3d содержат подготовленное изображение и сжаты zLIBом. Модуль zLIB урезаный, по этому EXE файл маленький.
__________________
11011111 INED Home code
VK
Ответить с цитированием
  #5  
Старый 28.10.2016, 17:12
Аватар для M.A.D.M.A.N.
M.A.D.M.A.N. M.A.D.M.A.N. вне форума
Sir Richard Abramson
 
Регистрация: 05.04.2008
Сообщения: 5,505
Версия Delphi: XE10
Репутация: выкл
По умолчанию

Ну дак накиай скринов-то, ёпть
__________________
— Как тебя понимать?
— Понимать меня не обязательно. Обязательно меня любить и кормить вовремя.


На Delphi, увы, больше не программирую.
Рекомендуемая литература по программированию
Ответить с цитированием
  #6  
Старый 28.10.2016, 17:17
Аватар для ined
ined ined вне форума
Начинающий
 
Регистрация: 16.11.2008
Адрес: Российская Федерация!! :)
Сообщения: 165
Версия Delphi: Delphi 2010
Репутация: 1272
По умолчанию

Вроде разобрался )) Добавил 1 скрин. А ссылки на pp.vk... не меняются просто я от туда картинку взял точнее ссылку на неё? )
__________________
11011111 INED Home code
VK

Последний раз редактировалось ined, 28.10.2016 в 17:20.
Ответить с цитированием
  #7  
Старый 29.10.2016, 11:58
Аватар для ined
ined ined вне форума
Начинающий
 
Регистрация: 16.11.2008
Адрес: Российская Федерация!! :)
Сообщения: 165
Версия Delphi: Delphi 2010
Репутация: 1272
По умолчанию

Странно. 62 просмотра и никто больше ничего не писал. Ладно, начну доделывать своё полимино.
Подскажите. Звуковые эффекты в чём лучше делать или куда копать.
OpenAL проста в использовании? Если да, то можно короткий примерчик от гуру. Или ссылочку.
__________________
11011111 INED Home code
VK
Ответить с цитированием
  #8  
Старый 29.10.2016, 21:06
Аватар для M.A.D.M.A.N.
M.A.D.M.A.N. M.A.D.M.A.N. вне форума
Sir Richard Abramson
 
Регистрация: 05.04.2008
Сообщения: 5,505
Версия Delphi: XE10
Репутация: выкл
По умолчанию

Цитата:
Сообщение от ined
Странно. 62 просмотра и никто больше ничего не писал. Ладно, начну доделывать своё полимино.
Подскажите. Звуковые эффекты в чём лучше делать или куда копать.
OpenAL проста в использовании? Если да, то можно короткий примерчик от гуру. Или ссылочку.
думаю тупого snd_play_sound() вполне хватит.
https://msdn.microsoft.com/ru-ru/lib...(v=vs.85).aspx
__________________
— Как тебя понимать?
— Понимать меня не обязательно. Обязательно меня любить и кормить вовремя.


На Delphi, увы, больше не программирую.
Рекомендуемая литература по программированию
Ответить с цитированием
Этот пользователь сказал Спасибо M.A.D.M.A.N. за это полезное сообщение:
ined (30.10.2016)
  #9  
Старый 30.10.2016, 20:09
Аватар для ined
ined ined вне форума
Начинающий
 
Регистрация: 16.11.2008
Адрес: Российская Федерация!! :)
Сообщения: 165
Версия Delphi: Delphi 2010
Репутация: 1272
По умолчанию

Цитата:
Сообщение от M.A.D.M.A.N.
думаю тупого snd_play_sound() вполне хватит.
https://msdn.microsoft.com/ru-ru/lib...(v=vs.85).aspx
snd_play_sound, я как понял из прочитанных статей, форумов микшировать не может. А я скорей всего столкнусь с этой проблемой. А реализовывать миксер, я не уверен что пойму как.

Может есть ещё варианты?
__________________
11011111 INED Home code
VK
Ответить с цитированием
  #10  
Старый 31.10.2016, 19:40
Аватар для M.A.D.M.A.N.
M.A.D.M.A.N. M.A.D.M.A.N. вне форума
Sir Richard Abramson
 
Регистрация: 05.04.2008
Сообщения: 5,505
Версия Delphi: XE10
Репутация: выкл
По умолчанию

А в чем проблема микширования? Звук — это массив байт, со значениями от -1 до 1. Микшировать можно просто суммируя массивы.
__________________
— Как тебя понимать?
— Понимать меня не обязательно. Обязательно меня любить и кормить вовремя.


На Delphi, увы, больше не программирую.
Рекомендуемая литература по программированию
Ответить с цитированием
  #11  
Старый 01.11.2016, 01:32
Аватар для ined
ined ined вне форума
Начинающий
 
Регистрация: 16.11.2008
Адрес: Российская Федерация!! :)
Сообщения: 165
Версия Delphi: Delphi 2010
Репутация: 1272
По умолчанию

Цитата:
Сообщение от M.A.D.M.A.N.
А в чем проблема микширования? Звук — это массив байт, со значениями от -1 до 1. Микшировать можно просто суммируя массивы.
Разве суммируя. Может усреднение или от максимального значения. Просто если суммировать то (250byte+20byte=14byte) Эм.... Или я что-то не понимаю) Если честно я думал над этим, но как это работает до конца не понимаю.
Если использовать такой пример:
Цитата:
sndPlaySound(Pointer(tada), SND_MEMORY Or SND_NODEFAULT Or SND_ASYNC Or SND_LOOP);
Он будет повторяться постоянно. то в процессе его работы я могу изменять массив данных и будет изменяться звук по мере чтения массива? Если да то мне нужно понять как лучше настроить заголовок и какой выбрать кусок исполнения(буфер). И как мне понять в каком положении находится чтение если мне нужно что-то микшировать.
__________________
11011111 INED Home code
VK
Ответить с цитированием
  #12  
Старый 01.11.2016, 09:23
Аватар для M.A.D.M.A.N.
M.A.D.M.A.N. M.A.D.M.A.N. вне форума
Sir Richard Abramson
 
Регистрация: 05.04.2008
Сообщения: 5,505
Версия Delphi: XE10
Репутация: выкл
По умолчанию

Цитата:
Сообщение от ined
Разве суммируя. Может усреднение или от максимального значения. Просто если суммировать то (250byte+20byte=14byte) Эм.... Или я что-то не понимаю) Если честно я думал над этим, но как это работает до конца не понимаю.
Если использовать такой пример:
Он будет повторяться постоянно. то в процессе его работы я могу изменять массив данных и будет изменяться звук по мере чтения массива? Если да то мне нужно понять как лучше настроить заголовок и какой выбрать кусок исполнения(буфер). И как мне понять в каком положении находится чтение если мне нужно что-то микшировать.
За пределы - и -1 не вы1дет.
Код:
procedure Mix(Buffer,First,Second : PChar; Count : LongInt); assembler;
{       процедура смешивает два массива данных First и Second и помещает}
{       результат в Buffer. Элементы массивов имеют размер WORD         }
{       Count -- Число элеменов в ОДНОМ массиве, т.е. Buffer имеет длину}
{       2*Count элементов}

{       EAX - Buffer       }
{       EDX - First        }
{       ECX - Second       }
{       Count -- в стеке   }
asm
        PUSH    EBX
        PUSH    ESI
        PUSH    EDI
        MOV     EDI,EAX     // Buffer помещен в EDI -- индексный регистр приемника
        MOV     ESI,ECX     // Second помещен в ESI -- индексный регистр источника
        MOV     ECX,Count   // Count помещен в ECX
        XCHG    ESI,EDX     // смена источника -- теперь First
@@Loop:
        MOVSW              // пересылка слова из First/Second в Buffer и инкремент индексов
        XCHG    ESI,EDX    // смена источника
        LOOP    @@Loop     // декремент ECX и проверка условия выхода ECX = 0

        POP     EDI
        POP     ESI
        POP     EBX
end;
__________________
— Как тебя понимать?
— Понимать меня не обязательно. Обязательно меня любить и кормить вовремя.


На Delphi, увы, больше не программирую.
Рекомендуемая литература по программированию
Ответить с цитированием
Этот пользователь сказал Спасибо M.A.D.M.A.N. за это полезное сообщение:
ined (01.11.2016)
  #13  
Старый 01.11.2016, 19:50
Аватар для ined
ined ined вне форума
Начинающий
 
Регистрация: 16.11.2008
Адрес: Российская Федерация!! :)
Сообщения: 165
Версия Delphi: Delphi 2010
Репутация: 1272
По умолчанию

А что если использовать Waveform Audio, очень хорошо описано тут
Скорей всего мне придётся подгонять звуки под 1 формат. Ну это не беда. )
__________________
11011111 INED Home code
VK
Ответить с цитированием
  #14  
Старый 02.11.2016, 08:13
Аватар для M.A.D.M.A.N.
M.A.D.M.A.N. M.A.D.M.A.N. вне форума
Sir Richard Abramson
 
Регистрация: 05.04.2008
Сообщения: 5,505
Версия Delphi: XE10
Репутация: выкл
По умолчанию

Можешь тут глянуть: http://www.delphisources.ru/pages/so...generator.html
Тоже вывод в директ аудио. А вообще, могу еще посоветовать bass.dll
__________________
— Как тебя понимать?
— Понимать меня не обязательно. Обязательно меня любить и кормить вовремя.


На Delphi, увы, больше не программирую.
Рекомендуемая литература по программированию
Ответить с цитированием
Этот пользователь сказал Спасибо M.A.D.M.A.N. за это полезное сообщение:
ined (02.11.2016)
  #15  
Старый 02.11.2016, 14:14
Аватар для Alegun
Alegun Alegun вне форума
LMD-DML
 
Регистрация: 12.07.2009
Адрес: Богородское
Сообщения: 3,025
Версия Delphi: D7E
Репутация: 1834
По умолчанию

Извнс, увж. кол., но всёже bass это искуситель, таскать с собой чужой байткод - это зло, а чем обычный MAPI MCI провинился, какова задача, может можно простыми оськиными прибамбасасми обойтись, типа
Код:
procedure SendMCICommand(Cmd: string); 
var 
RetVal: Integer; 
ErrMsg: array[0..254] of char; 
begin 
RetVal := mciSendString(PChar(Cmd), nil, 0, 0); 
if RetVal <> 0 then 
begin 
   mciGetErrorString(RetVal, ErrMsg, 255); 
   MessageDlg(StrPas(ErrMsg), mtError, [mbOK], 0); 
end; 
end; 

procedure TForm1.Button1Click(Sender: TObject); 

begin 
SendMCICommand('open waveaudio shareable'); 
SendMCICommand('play "C:\1.wav"'); 
SendMCICommand('play "C:\2.wav"'); 
SendMCICommand('close waveaudio'); 
end;
крутятся два звука одновременно
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

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

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 22:25.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter