00001 00002 // 00003 // Copyright (c) 2006 Audiokinetic Inc. / All Rights Reserved 00004 // 00006 00007 #ifndef _AK_ALLPLUGINSREGISTRATIONHELPERS_H_ 00008 #define _AK_ALLPLUGINSREGISTRATIONHELPERS_H_ 00009 00010 #include <AK/Plugin/AllPluginsFactories.h> 00011 #if defined AK_MOTION 00012 #include <AK/MotionEngine/Common/AkMotionEngine.h> 00013 #endif 00014 00015 00016 namespace AK 00017 { 00018 namespace SoundEngine 00019 { 00020 00021 #if !defined (AK_WII_FAMILY_HW) && !defined(AK_3DS) && !defined (AK_VITA_HW) 00022 #define AK_SOFTWARE_EFFECT_PLATFORM 00023 #endif 00024 00026 #define AK_CHECK_ERROR( __FUNCCALL__ ) \ 00027 { \ 00028 AKRESULT eResult = (__FUNCCALL__); \ 00029 if ( eResult != AK_Success ) \ 00030 eFinal = eResult; \ 00031 } 00032 00035 static AKRESULT RegisterAllEffectPlugins() 00036 { 00037 AKRESULT eFinal = AK_Success; 00038 #if defined(AK_SOFTWARE_EFFECT_PLATFORM) 00039 00040 AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 00041 AkPluginTypeEffect, 00042 AKCOMPANYID_AUDIOKINETIC, 00043 AKEFFECTID_COMPRESSOR, 00044 CreateCompressorFX, 00045 CreateCompressorFXParams ) ); 00046 00047 AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 00048 AkPluginTypeEffect, 00049 AKCOMPANYID_AUDIOKINETIC, 00050 AKEFFECTID_EXPANDER, 00051 CreateExpanderFX, 00052 CreateExpanderFXParams ) ); 00053 00054 AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 00055 AkPluginTypeEffect, 00056 AKCOMPANYID_AUDIOKINETIC, 00057 AKEFFECTID_PEAKLIMITER, 00058 CreatePeakLimiterFX, 00059 CreatePeakLimiterFXParams ) ); 00060 00061 AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 00062 AkPluginTypeEffect, 00063 AKCOMPANYID_AUDIOKINETIC, 00064 AKEFFECTID_MATRIXREVERB, 00065 CreateMatrixReverbFX, 00066 CreateMatrixReverbFXParams ) ); 00067 00068 AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 00069 AkPluginTypeEffect, 00070 AKCOMPANYID_AUDIOKINETIC, 00071 AKEFFECTID_ROOMVERB, 00072 CreateRoomVerbFX, 00073 CreateRoomVerbFXParams ) ); 00074 00075 AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 00076 AkPluginTypeEffect, 00077 AKCOMPANYID_AUDIOKINETIC, 00078 AKEFFECTID_DELAY, 00079 CreateDelayFX, 00080 CreateDelayFXParams ) ); 00081 00082 AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 00083 AkPluginTypeEffect, 00084 AKCOMPANYID_AUDIOKINETIC, 00085 AKEFFECTID_FLANGER, 00086 CreateFlangerFX, 00087 CreateFlangerFXParams ) ); 00088 00089 AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 00090 AkPluginTypeEffect, 00091 AKCOMPANYID_AUDIOKINETIC, 00092 AKEFFECTID_TREMOLO, 00093 CreateTremoloFX, 00094 CreateTremoloFXParams ) ); 00095 00096 AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 00097 AkPluginTypeEffect, 00098 AKCOMPANYID_AUDIOKINETIC, 00099 AKEFFECTID_GUITARDISTORTION, 00100 CreateGuitarDistortionFX, 00101 CreateGuitarDistortionFXParams ) ); 00102 00103 AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 00104 AkPluginTypeEffect, 00105 AKCOMPANYID_AUDIOKINETIC, 00106 AKEFFECTID_PARAMETRICEQ, 00107 CreateParametricEQFX, 00108 CreateParametricEQFXParams ) ); 00109 00110 AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 00111 AkPluginTypeEffect, 00112 AKCOMPANYID_AUDIOKINETIC, 00113 AKEFFECTID_METER, 00114 CreateMeterFX, 00115 CreateMeterFXParams ) ); 00116 00117 AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 00118 AkPluginTypeEffect, 00119 AKCOMPANYID_AUDIOKINETIC, 00120 AKEFFECTID_STEREODELAY, 00121 CreateStereoDelayFX, 00122 CreateStereoDelayFXParams ) ); 00123 00124 AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 00125 AkPluginTypeEffect, 00126 AKCOMPANYID_AUDIOKINETIC, 00127 AKEFFECTID_PITCHSHIFTER, 00128 CreatePitchShifterFX, 00129 CreatePitchShifterFXParams ) ); 00130 00131 AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 00132 AkPluginTypeEffect, 00133 AKCOMPANYID_AUDIOKINETIC, 00134 AKEFFECTID_TIMESTRETCH, 00135 CreateTimeStretchFX, 00136 CreateTimeStretchFXParams ) ); 00137 00138 AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 00139 AkPluginTypeEffect, 00140 AKCOMPANYID_AUDIOKINETIC, 00141 AKEFFECTID_HARMONIZER, 00142 CreateHarmonizerFX, 00143 CreateHarmonizerFXParams ) ); 00144 00145 AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 00146 AkPluginTypeEffect, 00147 AKCOMPANYID_AUDIOKINETIC, 00148 AKEFFECTID_GAIN, 00149 CreateGainFX, 00150 CreateGainFXParams ) ); 00151 00152 #elif defined(AK_WII_FAMILY) 00153 00154 AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 00155 AkPluginTypeEffect, 00156 AKCOMPANYID_AUDIOKINETIC, 00157 AKEFFECTID_WII_STANDARD_REVERB, 00158 CreateWiiReverbStd, 00159 CreateWiiReverbStdFXParams ) ); 00160 00161 AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 00162 AkPluginTypeEffect, 00163 AKCOMPANYID_AUDIOKINETIC, 00164 AKEFFECTID_WII_HIGH_QUALITY_REVERB, 00165 CreateWiiReverbHi, 00166 CreateWiiReverbHiFXParams ) ); 00167 00168 AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 00169 AkPluginTypeEffect, 00170 AKCOMPANYID_AUDIOKINETIC, 00171 AKEFFECTID_WII_CHORUS, 00172 CreateWiiChorus, 00173 CreateWiiChorusFXParams ) ); 00174 00175 AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 00176 AkPluginTypeEffect, 00177 AKCOMPANYID_AUDIOKINETIC, 00178 AKEFFECTID_WII_DELAY, 00179 CreateWiiDelay, 00180 CreateWiiDelayFXParams ) ); 00181 00182 #elif defined(AK_3DS) 00183 00184 AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 00185 AkPluginTypeEffect, 00186 AKCOMPANYID_AUDIOKINETIC, 00187 AKEFFECTID_3DS_REVERB, 00188 Create3DSReverb, 00189 Create3DSReverbFXParams ) ); 00190 00191 AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 00192 AkPluginTypeEffect, 00193 AKCOMPANYID_AUDIOKINETIC, 00194 AKEFFECTID_3DS_DELAY, 00195 Create3DSDelay, 00196 Create3DSDelayFXParams ) ); 00197 #endif 00198 00199 #if defined(AK_VITA_HW) 00200 AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 00201 AkPluginTypeEffect, 00202 AKCOMPANYID_AUDIOKINETIC, 00203 AKEFFECTID_VITA_REVERB, 00204 CreateVitaReverbFX, 00205 CreateVitaReverbFXParams ) ); 00206 00207 AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 00208 AkPluginTypeEffect, 00209 AKCOMPANYID_AUDIOKINETIC, 00210 AKEFFECTID_VITA_COMPRESSOR, 00211 CreateVitaCompressorFX, 00212 CreateVitaCompressorFXParams ) ); 00213 00214 AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 00215 AkPluginTypeEffect, 00216 AKCOMPANYID_AUDIOKINETIC, 00217 AKEFFECTID_VITA_DELAY, 00218 CreateVitaDelayFX, 00219 CreateVitaDelayFXParams ) ); 00220 00221 AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 00222 AkPluginTypeEffect, 00223 AKCOMPANYID_AUDIOKINETIC, 00224 AKEFFECTID_VITA_DISTORTION, 00225 CreateVitaDistortionFX, 00226 CreateVitaDistortionFXParams ) ); 00227 00228 AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 00229 AkPluginTypeEffect, 00230 AKCOMPANYID_AUDIOKINETIC, 00231 AKEFFECTID_VITA_EQ, 00232 CreateVitaEQFX, 00233 CreateVitaEQFXParams ) ); 00234 #endif 00235 00236 #if defined(AK_PS4) 00237 // SCE Audio 3D 00238 AK::SoundEngine::RegisterPlugin( AkPluginTypeMixer, 00239 AKCOMPANYID_AUDIOKINETIC, 00240 AKEFFECTID_SCE_AUDIO3D, 00241 CreateSceAudio3dMixer, 00242 CreateSceAudio3dMixerParams ); 00243 00244 AK::SoundEngine::RegisterPlugin( AkPluginTypeEffect, 00245 AKCOMPANYID_AUDIOKINETIC, 00246 AKEFFECTID_SCE_AUDIO3D_ATTACHMENT, 00247 NULL, 00248 CreateSceAudio3dAttachment ); 00249 00250 AK::SoundEngine::RegisterPlugin( AkPluginTypeEffect, 00251 AKCOMPANYID_AUDIOKINETIC, 00252 AKEFFECTID_SCE_AUDIO3D_SINK_EFFECT, 00253 CreateSceAudio3dSinkEffect, 00254 CreateSceAudio3dSinkEffectParams ); 00255 00256 #endif 00257 00258 return eFinal; 00259 } 00260 00263 static AKRESULT RegisterAllSourcePlugins() 00264 { 00265 AKRESULT eFinal = AK_Success; 00266 AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 00267 AkPluginTypeSource, 00268 AKCOMPANYID_AUDIOKINETIC, 00269 AKSOURCEID_SILENCE, 00270 CreateSilenceSource, 00271 CreateSilenceSourceParams ) ); 00272 00273 AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 00274 AkPluginTypeSource, 00275 AKCOMPANYID_AUDIOKINETIC, 00276 AKSOURCEID_SINE, 00277 CreateSineSource, 00278 CreateSineSourceParams ) ); 00279 00280 AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 00281 AkPluginTypeSource, 00282 AKCOMPANYID_AUDIOKINETIC, 00283 AKSOURCEID_TONE, 00284 CreateToneSource, 00285 CreateToneSourceParams ) ); 00286 00287 #if defined( AK_WIN ) && !defined( AK_USE_METRO_API ) 00288 AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 00289 AkPluginTypeSource, 00290 AKCOMPANYID_AUDIOKINETIC, 00291 AKSOURCEID_MP3, 00292 CreateMP3Source, 00293 CreateMP3SourceParams ) ); 00294 #endif 00295 00296 #if !defined( AK_VITA ) && !defined( AK_3DS ) 00297 AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 00298 AkPluginTypeSource, 00299 AKCOMPANYID_AUDIOKINETIC, 00300 AKSOURCEID_AUDIOINPUT, 00301 CreateAudioInputSource, 00302 CreateAudioInputSourceParams ) ); 00303 #endif 00304 00305 AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 00306 AkPluginTypeSource, 00307 AKCOMPANYID_AUDIOKINETIC, 00308 AKSOURCEID_SYNTHONE, 00309 CreateSynthOne, 00310 CreateSynthOneParams ) ); 00311 00312 return eFinal; 00313 } 00314 00317 static AKRESULT RegisterConvolutionReverbPlugin() 00318 { 00319 AKRESULT eFinal = AK_Success; 00320 #ifdef AK_SOFTWARE_EFFECT_PLATFORM 00321 AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 00322 AkPluginTypeEffect, 00323 AKCOMPANYID_AUDIOKINETIC, 00324 AKEFFECTID_CONVOLUTIONREVERB, 00325 CreateConvolutionReverbFX, 00326 CreateConvolutionReverbFXParams ) ); 00327 #endif 00328 return eFinal; 00329 } 00330 00333 static AKRESULT RegisterMcDSPPlugins() 00334 { 00335 AKRESULT eFinal = AK_Success; 00336 #ifdef AK_SOFTWARE_EFFECT_PLATFORM 00337 AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 00338 AkPluginTypeEffect, 00339 AKCOMPANYID_MCDSP, 00340 AKEFFECTID_MCDSPFUTZBOX, 00341 CreateMcDSPFutzBoxFX, 00342 CreateMcDSPFutzBoxFXParams ) ); 00343 00344 AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 00345 AkPluginTypeEffect, 00346 AKCOMPANYID_MCDSP, 00347 AKEFFECTID_MCDSPML1, 00348 CreateMcDSPML1FX, 00349 CreateMcDSPML1FXParams ) ); 00350 #endif 00351 00352 return eFinal; 00353 } 00354 00357 static AKRESULT RegisteriZotopePlugins() 00358 { 00359 AKRESULT eFinal = AK_Success; 00360 #if ( defined( AK_WIN ) && (!defined( AK_USE_METRO_API ) || _MSC_VER >= 1900)) || defined( AK_XBOX360 ) || defined( AK_PS3 ) || defined( AK_XBOXONE ) || defined( AK_PS4 ) 00361 AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 00362 AkPluginTypeEffect, 00363 AKCOMPANYID_IZOTOPE, 00364 IZEFFECTID_TRASHMULTIBANDDISTORTION, 00365 CreateTrashMultibandDistortionFX, 00366 CreateTrashMultibandDistortionFXParams ) ); 00367 00368 AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 00369 AkPluginTypeEffect, 00370 AKCOMPANYID_IZOTOPE, 00371 IZEFFECTID_TRASHDISTORTION, 00372 CreateTrashDistortionFX, 00373 CreateTrashDistortionFXParams ) ); 00374 00375 AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 00376 AkPluginTypeEffect, 00377 AKCOMPANYID_IZOTOPE, 00378 IZEFFECTID_TRASHFILTERS, 00379 CreateTrashFiltersFX, 00380 CreateTrashFiltersFXParams ) ); 00381 00382 AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 00383 AkPluginTypeEffect, 00384 AKCOMPANYID_IZOTOPE, 00385 IZEFFECTID_TRASHDYNAMICS, 00386 CreateTrashDynamicsFX, 00387 CreateTrashDynamicsFXParams ) ); 00388 00389 AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 00390 AkPluginTypeEffect, 00391 AKCOMPANYID_IZOTOPE, 00392 IZEFFECTID_TRASHDELAY, 00393 CreateTrashDelayFX, 00394 CreateTrashDelayFXParams ) ); 00395 00396 AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 00397 AkPluginTypeEffect, 00398 AKCOMPANYID_IZOTOPE, 00399 IZEFFECTID_TRASHBOXMODELER, 00400 CreateTrashBoxModelerFX, 00401 CreateTrashBoxModelerFXParams ) ); 00402 #endif 00403 #if ( defined( AK_WIN ) && (!defined( AK_USE_METRO_API ) || _MSC_VER >= 1900) ) || defined( AK_XBOX360 ) || defined( AK_XBOXONE ) || defined( AK_PS4 ) 00404 00405 AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 00406 AkPluginTypeEffect, 00407 AKCOMPANYID_IZOTOPE, 00408 IZEFFECTID_HYBRIDREVERB, 00409 CreateHybridReverbFX, 00410 CreateHybridReverbFXParams ) ); 00411 #endif 00412 00413 return eFinal; 00414 } 00415 00416 static AKRESULT RegisterCrankcaseAudioPlugins() 00417 { 00418 AKRESULT eFinal = AK_Success; 00419 00420 #if ( defined( AK_WIN ) && (!defined( AK_USE_METRO_API ) || _MSC_VER >= 1900) ) || defined( AK_PS4 ) || defined( AK_XBOXONE ) || defined( AK_XBOX360 ) 00421 00422 AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 00423 AkPluginTypeSource, 00424 AKCOMPANYID_CRANKCASEAUDIO, 00425 AKSOURCEID_REV_MODEL_PLAYER, 00426 CreateREVModelPlayerSource, 00427 CreateREVModelPlayerSourceParams ) ); 00428 #endif 00429 return eFinal; 00430 } 00431 00434 static AKRESULT RegisterSoundSeedPlugins() 00435 { 00436 AKRESULT eFinal = AK_Success; 00437 #ifdef AK_SOFTWARE_EFFECT_PLATFORM 00438 AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 00439 AkPluginTypeEffect, 00440 AKCOMPANYID_AUDIOKINETIC, 00441 AKEFFECTID_SOUNDSEEDIMPACT, 00442 CreateAkSoundSeedImpactFX, 00443 CreateAkSoundSeedImpactFXParams ) ); 00444 #endif 00445 00446 #ifndef AK_3DS 00447 AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 00448 AkPluginTypeSource, 00449 AKCOMPANYID_AUDIOKINETIC, 00450 AKSOURCEID_SOUNDSEEDWIND, 00451 CreateSoundSeedWind, 00452 CreateSoundSeedWindParams ) ); 00453 00454 AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 00455 AkPluginTypeSource, 00456 AKCOMPANYID_AUDIOKINETIC, 00457 AKSOURCEID_SOUNDSEEDWOOSH, 00458 CreateSoundSeedWoosh, 00459 CreateSoundSeedWooshParams ) ); 00460 #endif 00461 00462 return eFinal; 00463 } 00464 00465 static AKRESULT RegisterIOSONOPlugins() 00466 { 00467 AKRESULT eFinal = AK_Success; 00468 00469 // IOSONO Proximity 00470 #if (defined(AK_WIN) && !defined(AK_USE_METRO_API)) || defined(AK_XBOXONE) || defined(AK_PS4) 00471 AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 00472 AkPluginTypeMixer, 00473 AKCOMPANYID_IOSONO, 00474 IOSONOEFFECTID_PROXIMITY, 00475 CreateIOSONOProximityMixer, 00476 CreateIOSONOProximityMixerParams ) ); 00477 00478 AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 00479 AkPluginTypeEffect, 00480 AKCOMPANYID_IOSONO, 00481 IOSONOEFFECTID_PROXIMITY_ATTACHMENT, 00482 NULL, 00483 CreateIOSONOProximityAttachmentParams ) ); 00484 #endif 00485 return eFinal; 00486 } 00487 00488 static AKRESULT RegisterAuroPlugins() 00489 { 00490 AKRESULT eFinal = AK_Success; 00491 00492 #if (defined(AK_WIN) && !defined(AK_USE_METRO_API)) || defined(AK_PS4) || defined(AK_XBOXONE) 00493 // Auro Headphone 00494 AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 00495 AkPluginTypeEffect, 00496 AKCOMPANYID_AUROTECHNOLOGIES, 00497 AKEFFECTID_AUROHEADPHONE, 00498 CreateAuroHeadphoneFX, 00499 CreateAuroHeadphoneFXParams ) ); 00500 00501 // Auro Panner 00502 AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 00503 AkPluginTypeMixer, 00504 AKCOMPANYID_AUROTECHNOLOGIES, 00505 AKEFFECTID_AUROPANNER, 00506 CreateAuroPannerMixer, 00507 CreateAuroPannerMixerParams ) ); 00508 AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 00509 AkPluginTypeEffect, 00510 AKCOMPANYID_AUROTECHNOLOGIES, 00511 AKEFFECTID_AUROPANNER_ATTACHMENT, 00512 NULL, 00513 CreateAuroPannerMixerAttachmentParams ) ); 00514 #endif 00515 00516 return eFinal; 00517 } 00518 00521 static AKRESULT RegisterAllCodecPlugins() 00522 { 00523 AKRESULT eFinal = AK_Success; 00524 #ifndef AK_3DS 00525 AK::SoundEngine::RegisterCodec( 00526 AKCOMPANYID_AUDIOKINETIC, 00527 AKCODECID_VORBIS, 00528 CreateVorbisFilePlugin, 00529 CreateVorbisBankPlugin ); 00530 #endif 00531 00532 #ifdef AK_XBOX360 00533 AK::SoundEngine::RegisterCodec( 00534 AKCOMPANYID_AUDIOKINETIC, 00535 AKCODECID_XWMA, 00536 CreateXWMAFilePlugin, 00537 CreateXWMABankPlugin ); 00538 #endif 00539 00540 #ifdef AK_APPLE 00541 AK::SoundEngine::RegisterCodec( 00542 AKCOMPANYID_AUDIOKINETIC, 00543 AKCODECID_AAC, 00544 CreateAACFilePlugin, 00545 CreateAACBankPlugin ); 00546 #endif 00547 00548 #ifdef AK_VITA 00549 AK::SoundEngine::RegisterCodec( 00550 AKCOMPANYID_AUDIOKINETIC, 00551 AKCODECID_ATRAC9, 00552 CreateATRAC9FilePlugin, 00553 CreateATRAC9BankPlugin ); 00554 #endif 00555 00556 return eFinal; 00557 00558 } 00559 00562 static AKRESULT RegisterAllRumblePlugins() 00563 { 00564 AKRESULT eFinal = AK_Success; 00565 #if defined AK_MOTION 00566 00567 AK_CHECK_ERROR( AK::SoundEngine::RegisterPlugin( 00568 AkPluginTypeMotionSource, 00569 AKCOMPANYID_AUDIOKINETIC, 00570 AKSOURCEID_MOTIONGENERATOR, 00571 AkCreateMotionGenerator, 00572 AkCreateMotionGeneratorParams ) ); 00573 00574 AK::MotionEngine::RegisterMotionDevice( 00575 AKCOMPANYID_AUDIOKINETIC, 00576 AKMOTIONDEVICEID_RUMBLE, 00577 AkCreateRumblePlugin ); 00578 00579 #endif 00580 00581 return eFinal; 00582 } 00583 00586 static AKRESULT RegisterAllBuiltInPlugins() 00587 { 00588 AKRESULT eFinal = AK_Success; 00589 AK_CHECK_ERROR( RegisterAllCodecPlugins() ); 00590 AK_CHECK_ERROR( RegisterAllEffectPlugins() ); 00591 AK_CHECK_ERROR( RegisterAllSourcePlugins() ); 00592 AK_CHECK_ERROR( RegisterAllRumblePlugins() ); 00593 return eFinal; 00594 } 00595 00598 static AKRESULT RegisterAllPlugins() 00599 { 00600 AKRESULT eFinal = AK_Success; 00601 // Built-in products 00602 AK_CHECK_ERROR( RegisterAllBuiltInPlugins() ); 00603 // Products which require additional license 00604 AK_CHECK_ERROR( RegisterConvolutionReverbPlugin() ); 00605 AK_CHECK_ERROR( RegisterSoundSeedPlugins() ); 00606 AK_CHECK_ERROR( RegisterMcDSPPlugins() ); 00607 AK_CHECK_ERROR( RegisteriZotopePlugins() ); 00608 AK_CHECK_ERROR( RegisterCrankcaseAudioPlugins() ); 00609 AK_CHECK_ERROR( RegisterIOSONOPlugins() ) 00610 AK_CHECK_ERROR( RegisterAuroPlugins() ) 00611 return eFinal; 00612 } 00613 00614 } // SoundEngine 00615 } // AK 00616 00617 #endif // _AK_ALLPLUGINSREGISTRATIONHELPERS_H_
프로젝트를 등록하세요. 아무런 조건이나 의무 사항 없이 빠른 시작을 도와드리겠습니다.
Wwise를 시작해 보세요