コミュニティQ&A

Audiokineticのコミュニティ主導のQ&Aフォーラムへようこそ。ここはWwiseとStrataのユーザのみなさまがお互いに協力し合う場です。弊社チームによる直接のサポートをご希望の場合はサポートチケットページをご利用ください。バグを報告するには、Audiokinetic LauncherのBug Reportオプションをご利用ください。(Q&AフォーラムではBug Reportを受け付けておりませんのでご注意ください。専用のBug Reportシステムをご利用いただくことで、バグの報告が適切な担当部門に届き、修正される可能性が高まります。)

最適な回答を迅速に得られるよう、ご質問を投稿される際は以下のヒントをご参考ください。

  • 具体的に示す:何を達成したいのか、またはどんな問題に直面しているのかを具体的に示してください。
  • 重要な詳細情報を含める:Wwiseとゲームエンジンのバージョンやご利用のOSなど詳細情報を記載してください。
  • 試したことを説明する:すでに試してみたトラブルシューティングの手順を教えてください。
  • 事実に焦点を当てる:問題の技術的な事実を記載してください。問題に焦点を当てることで、ほかのユーザのみなさまが解決策を迅速に見つけやすくなります。

+2 支持

Hello! I am wondering if anyone has a definitive guide for including in WWISE plug-ins (AkDelayFX, AkFlangerFX, etc. ), into an Unreal Engine 4 project in packaged builds? Or save that, just some advice for me. Here is what I know so far: 

  • I have basic WWISE integration into my project. All builds work on a base level.
  • Trying to use some of the Ak Plug-ins, I see that they are all able to work by default in Editor and Standalone Non-packaged builds. Great! 
  • In packaged builds only, I get the "missing plug-ins" spew, and discover that you need to include plug ins explicitly only for packaged builds. Makes sense! Happy to do so!

From here, I have tried a few things, I would give feedback that all the instructions point out to do two things (1. Include the AkPlugin in your project, or in AkAudioDevice.cpp and 2. Link the .lib in via an added call to AddWiseLib() in the Ak.build.cs file), but doing those two things alone have brought me pain, and it does not appear to be as straightforward as it is implied (also, the WWISE official sample project for UE does not appear to include any of these plugins.. which would also be a great thing to have! ).

Here are the various things I have tried:

  • Including the "#include <AK/Plugin/AkDelayFXFactory.h>" in game code:
    • Comes up with well documented Windows TEXT() Redefinition compile errors. Attempted to fix these with a "Header Sandwich" of the pre/post windows include header files, but I was unable to get it working. Seems like an issue with WWISE UE Plugin that needs to be fixed? But I couldn't say for certain.
  • Instead fell back to this FAQ, and KIND OF got things working: https://www.audiokinetic.com/library/2016.2.6_6153/?source=UE4&id=using__faq.html ( Note: alot of this seems out of date? )
    • I put "#include <AK/Plugin/AkDelayFXFactory.h>" directly in AkAudioDevice.cpp. 
    • I then went to GetAdditionalWwiseLibs() in AkAudio_Windows.Build.cs and added the "AkDelayFX" lib to the list. 
    • This actually works!!! :D yay! I do get my plugins in the packaged build! BUT...
    • It breaks normal non-packaged builds!! It seems like it might conflict with whatever mechanism is used to always load all plugins in non-Packaged builds?
So I can get it all working in Packaged Builds, or non-Packaged Builds, but not both at the same time! :D Was looking for a UE preprocessor define for Packaged builds ( to maybe just not include the factories outside of prepackaged builds ), but cannot find one. 

When I have my fix for the packaged build, the linker error I get for non-packaged build looks like this: 

AkAudioDevice.cpp.obj : error LNK2001: unresolved external symbol "class AK::PluginRegistration AkDelayFXRegistration" (?AkDelayFXRegistration@@3VPluginRegistration@AK@@A)

Things that would help me:
  • Any link to a definitive guide on how this is done? The latest docs seems to just not work (does anyone test these before publishing?) re: the Windows TEXT() re-definitions. And the closest things I have gotten to work seems terribly outdated. 
  • UE Preprocessor to conditionally compile on packaged builds or not
  • WWISE / AK Preprocessor to conditionally compile on when they decide to include all FXFactories or not.
  • Link to any similar code that works!
 
One would think that this would be a straightforward process, given how prolific UE and WWISE pairings seem to be. Any ideas would be greatly appreciated! 

Cheers,
Tim Rawcliffe
Timothy R. (140 ポイント) General Discussion

Please sign-in or register to answer this question.

...