Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > разработка игр, графический дизайн и моделирование > Gamedev - cоздание игр: Unity, OpenGL, DirectX
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 22.06.2009, 08:49   #321
Манжосов Денис :)
Участник клуба
 
Регистрация: 29.01.2008
Сообщений: 1,039
По умолчанию

Я этого не знаю, но делаю по другому. Через mediaplayer играет фоновая музыка, а через PlaySound уже отдельные звуки.
Манжосов Денис :) вне форума Ответить с цитированием
Старый 22.06.2009, 10:28   #322
Лубышев
Участник клуба
 
Аватар для Лубышев
 
Регистрация: 23.07.2007
Сообщений: 1,054
По умолчанию

Я тоже так же хотел сделать... Но если целый ряд звуков надо воспроизводить то не целый же ряд MP делать...
(Играет музыка, раздаются выстрелы, если попал то враг стонет, кричит и тому подобное..., раздаются прочие технические звуки)
Писано по д'Эльфийски
Лубышев вне форума Ответить с цитированием
Старый 22.06.2009, 19:06   #323
Arigato
Высокая репутация
СуперМодератор
 
Аватар для Arigato
 
Регистрация: 27.07.2008
Сообщений: 15,674
По умолчанию

В DelphiX есть компонент, SoundList, кажется. Так вот с его помощью можно проигрывать несколько звуков сразу.
Arigato вне форума Ответить с цитированием
Старый 22.06.2009, 19:55   #324
Beermonza
Инженер ИС
Старожил
 
Аватар для Beermonza
 
Регистрация: 13.12.2006
Сообщений: 2,671
По умолчанию

Да, в DelphiX есть два компонента, обертка для DirectX. Движок - DXSound, и архив DXWaveList. Можно использовать формат .dxw, ...что это я к сожалению не в курсе, а вот вавчики работают как надо.
Руководитель проекта MMO 2D RPG: Настоящее имя Денис Стрижак (10.05.1981-6.02.2019) Мир духу его
Beermonza вне форума Ответить с цитированием
Старый 22.06.2009, 21:06   #325
Вадим Буренков
Участник клуба
 
Аватар для Вадим Буренков
 
Регистрация: 06.03.2009
Сообщений: 1,346
По умолчанию

Я предлагаю свой простой вариант проигрывания звуков одновременно и без тормозов:
(пост №20)
Вадим Буренков вне форума Ответить с цитированием
Старый 22.06.2009, 21:18   #326
Alex2009
Proger Man
Форумчанин
 
Аватар для Alex2009
 
Регистрация: 07.03.2009
Сообщений: 584
По умолчанию

С мгоей точки зрения лутше использовать GL scene
ShowMessage('Добро пожаловать!');
Alex2009 вне форума Ответить с цитированием
Старый 24.06.2009, 11:05   #327
Манжосов Денис :)
Участник клуба
 
Регистрация: 29.01.2008
Сообщений: 1,039
По умолчанию

Проиграть два звука одновременно
Код:
uses 

MMSystem; 

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 
   {get message for returned value} 
   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:\xyz\BackgroundMusic.wav"'); 
SendMCICommand('play "C:\xyz\AnotherMusic.wav"'); 
SendMCICommand('close waveaudio'); 

end;
Использован материал Delphi Russian Knowledge Base from Vit
Манжосов Денис :) вне форума Ответить с цитированием
Старый 27.06.2009, 19:39   #328
sasha1993
Пользователь
 
Регистрация: 26.06.2009
Сообщений: 43
Вопрос

спасибо за уроки!

Последний раз редактировалось sasha1993; 27.06.2009 в 21:21.
sasha1993 вне форума Ответить с цитированием
Старый 27.06.2009, 22:59   #329
sasha1993
Пользователь
 
Регистрация: 26.06.2009
Сообщений: 43
По умолчанию

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



если у когото есть время покажите пожалуйста как этот буфер с невидемостью сделать.
sasha1993 вне форума Ответить с цитированием
Старый 28.06.2009, 08:20   #330
Shadow_1329
Форумчанин
 
Аватар для Shadow_1329
 
Регистрация: 23.02.2009
Сообщений: 237
По умолчанию

Tank.Transparent:=true - где танк это твой игровой объект. Это делает вокруг танка фон прозрачным. У имиджа точно также, только вместо Tank - Image1. Буффер делаешь так:


Код:
Buffer:Tbitmap;//создаешь переменную

//в созданий формы пишешь
Buffer:=Tbitmap.Create;
//зАтем в Таймере пишешь
Buffer.Canvas.Draw(0,0,Fone)// где фон- это игровой фон.Это нужно писать сначала, если не хочешь чтобы фон рисовался на персонаже.
Buffer.Canvas.Draw(x,y,Tank)//где танк твой игровой обьект. Персонаж рисуется на фоне.
Form1.Canvas.Draw(0,0,Buffer);//Выводим буфер на форму и все!

Вот возникла проблема. У меня есть здание которое не умещается в одну клетку карты(100 на 100). Когда я прохожу перед ним то у меня персонаж рисуется на переднем плане а здание на втором. Но мне нужнно пройти за ним, и для этого нужно чтобы здание было на переднем плане а перс за ним рисовался и его скрывало зданием. Как это реализовать?

Последний раз редактировалось Shadow_1329; 28.06.2009 в 08:28.
Shadow_1329 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Хорошие уроки Render Общие вопросы Delphi 9 15.09.2012 07:13
Акцесс вопросы новичков Yaga Помощь студентам 4 02.06.2008 00:16
Учебники для новичков в програмировании Рар Общие вопросы Delphi 6 08.01.2007 08:07