Четверг, 25 Апреля 2024, 18:38

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Форум игроделов » Программирование » Программирование .NET » Пример включения звукового движка irrKlang (Прикрутить движок на C++ и C#)
Пример включения звукового движка irrKlang
TLTДата: Пятница, 20 Ноября 2009, 15:26 | Сообщение # 1
Сейчас нет на сайте
Вот примеры включения звукового движка irrKlang на C++ и C#.
Сам движок доступен для скачивания и использования в некоммерческих (бесплатно!) и коммерческих (за небольшую плату) играх.

Пример воспроизведения MP3-звука на C++

Code
#include <iostream>
#include <irrKlang.h>
     
using namespace irrklang;

int main(int argc, const char** argv)
{
   // Стартуем irrKlang с параметрами по умолчанию
   ISoundEngine* engine = createIrrKlangDevice();

   if (!engine)
     return 0; // ошибка для запуска движка
   
   // воспроизведение звукового файла, по кругу
   engine->play2D("somefile.mp3", true);

   char i = 0;
   std::cin >> i; // ждёт нажатие ключа

   engine->drop(); // delete engine

   return 0;
}

Пример воспроизведения MP3-звука на C#

Code
using IrrKlang;  

namespace HelloWorld
{
   class Example
   {
    [STAThread]
    static void Main(string[] args)
    {
      // запуск irrKlang
      ISoundEngine engine = new ISoundEngine();

      // играть файл
      engine.play2D("somefile.mp3");

      // ждать нажатия кнопки для завершения
      System.Windows.Forms.MessageBox.Show(
   "Playing, press ok to end.");

    } // end main()

   } // end class

} // end namespace


Дао, выраженное словами, не есть истинное Дао.
GnomovДата: Пятница, 20 Ноября 2009, 17:30 | Сообщение # 2
Пустота – основа всего...
Сейчас нет на сайте
Интересный движок, нужно будет попробовать.

[FreSh]Дата: Среда, 05 Мая 2010, 14:36 | Сообщение # 3
участник
Сейчас нет на сайте
А как установить его???
BetMoraДата: Среда, 05 Мая 2010, 14:51 | Сообщение # 4
постоянный участник
Сейчас нет на сайте
там вроде в доке есть...
причем и на Си++ и на Сишарп


Перекуём баги на фичи!
[FreSh]Дата: Среда, 05 Мая 2010, 14:58 | Сообщение # 5
участник
Сейчас нет на сайте
Quote (BetMora)
там вроде в доке есть...
причем и на Си++ и на Сишарп

А можете меня носом ткнуть? biggrin
BetMoraДата: Среда, 05 Мая 2010, 15:03 | Сообщение # 6
постоянный участник
Сейчас нет на сайте
Си++

Сишарп


Перекуём баги на фичи!

Сообщение отредактировал BetMora - Среда, 05 Мая 2010, 15:07
[FreSh]Дата: Среда, 05 Мая 2010, 15:11 | Сообщение # 7
участник
Сейчас нет на сайте
Quote (BetMora)
Си++
Starting up the Engine
irrKlang is designed so that it is very easy to achieve everything, its interface should be very simple to use. The Quick Start Example shows how to play and mp3 file, and there is another example, Quick Start Example 2, showing some few more details.
To start up the sound engine, you simply need to call createIrrKlangDevice(). To shut it down, call IRefCounted::drop():

#include <irrKlang.h>

// ...

// start up the engine
irrklang::ISoundEngine* engine = irrklang::createIrrKlangDevice();

// ...

// after finished,
// close the engine again, similar as calling 'delete'
engine->drop();

The createIrrKlangDevice() function also accepts several parameters, so that you can specify which sound driver should be used, if plugins should be used, if irrKlang should run in multithreaded mode, and similar.

Playing Sounds
Once you have irrKlang running (like in Starting up the Engine), you can start playing sounds:

engine->play2D("someSoundFile.wav");

This works with all supported file types. You can replace "someSoundFile.wav" with "someSoundFile.mp3", or "someSoundFile.ogg", for example.
To play a sound looped, set the second parameter to 'true':

engine->play2D("myMusic.mp3", true);

To stop this looping sound again, use engine->stopAllSounds() to stop all sounds, or irrklang::ISound::stop() if you only want to stop that single sound. Influencing Sounds during Playback shows how to get to that ISound interface.

Сишарп
How to use irrKlang.NET
Take a look in the /examples.net folder of the SDK, there you'll find some examples for C# and VisualBasic.NET which are using irrKlang.NET. Copy irrKlang.DLL and all plugin .DLLs (ikp*.DLL) into the folder where your application is. The following simple example shows how to use irrKlang to play back a music file:

[C#]
using System;
using IrrKlang;

namespace HelloWorld
{
class Example
{
[STAThread]
static void Main(string[] args)
{
// start up the engine
ISoundEngine engine = new ISoundEngine();

// play a sound file
engine.play2D("../../media/ophelia.mp3");

// wait until user presses ok to end application

System.Windows.Forms.MessageBox.Show("Playing, press ok.");

} // end main()

} // end class

} // end namespace


Спасибо!
BetMoraДата: Пятница, 28 Мая 2010, 09:03 | Сообщение # 8
постоянный участник
Сейчас нет на сайте
мм ты наверное подумал что я тебе отвечал насчет есть в доке... ну да ладно
вот как установить:
Сервис->Параметры(или настройки не помню :))->Директории VC++->В выпадающем списке справа выбери включаемые файлы->Добавь строчку с папкой include в директории с irrKlang->Потом выбери Файлы библиотек->Добавь строчку с папкой lib(win32studio)


Перекуём баги на фичи!

Сообщение отредактировал BetMora - Пятница, 28 Мая 2010, 09:18
[FreSh]Дата: Среда, 02 Марта 2011, 19:14 | Сообщение # 9
участник
Сейчас нет на сайте
Для работы данных примеров нужно кинуть ikpMP3.dll в папку с программой, иначе звука MP3 файла не будет.
Форум игроделов » Программирование » Программирование .NET » Пример включения звукового движка irrKlang (Прикрутить движок на C++ и C#)
  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг