Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Supported Wwise version? #123

Closed
mbbmbbmm opened this issue Oct 15, 2023 · 13 comments · Fixed by #130
Closed

Supported Wwise version? #123

mbbmbbmm opened this issue Oct 15, 2023 · 13 comments · Fixed by #130
Labels
help wanted Extra attention is needed

Comments

@mbbmbbmm
Copy link

Hi, I am trying to compile Pd-patches for Wwise, so I can use them in Godot 4.
I am on Windows 10 btw.
The current Godot-Integration for Wwise seems to require using the 2023.1.0 Beta version. This version however does not seem to like the output from hvcc. It seems to have issues with the newest SDK / build tools / platform tool set (?)
Which is the highest Wwise version supported by hvcc at the moment?
Thank you!
Jan

@dromer dromer added the help wanted Extra attention is needed label Oct 15, 2023
@dromer
Copy link
Collaborator

dromer commented Oct 15, 2023

To be honest it's pretty impossible for me to test Wwise as it has very poor Linux support.
I've been able to compile a Wwise plugin once, and that was with a fairly recent SDK version. However I had no way to confirm that it actually worked inside of an integration (like with Unity or something).

In the code the Wwise version is hardcoded on a pretty old version: https://github.com/Wasted-Audio/hvcc/blob/develop/hvcc/generators/c2wwise/c2wwise.py#L60
But you should be able to change that to whatever version you need.

Can you be a bit more specific with "does not seem to like the output"? Are there any specific errors?

@mbbmbbmm
Copy link
Author

mbbmbbmm commented Oct 15, 2023

Yes, of course. When I try to open the solution in Visual Studio I get errors like:
'The imported project "C:\Program Files (x86)\Audiokinetic\Wwise 2023.1.0.8256\SDK\source\Build\PropertySheets\Win32\Debug_vc140.props" was not found.'

There only are higher number versions present in that directory, 160 and 170

(I have already updated the template to the correct Wwise version)

@dromer
Copy link
Collaborator

dromer commented Oct 15, 2023

What do you mean with "open the solution"?

@mbbmbbmm
Copy link
Author

mbbmbbmm commented Oct 15, 2023

So, when I run hvcc in cmd terminal to compile the patch it generates several folders: linux, resources, source, vs2015, xcode plus a build.json. The way I've understood it is to open the Hv_None_WwiseSourcePlugin.sln solution file located in the vs2015 folder with Visual Studio and build the proper plugin from there.

Edit: I am mainly following this blog post:
blog post part 2 (plus part 3)

@dromer
Copy link
Collaborator

dromer commented Oct 15, 2023

Oh sorry, I'm not familiar with Visual Studio nomenclature. So this "solution" file description has no meaning to me, haha.

Maybe try building the plugin without using Visual Studio?
To be honest I cannot directly support this build system, but I'm happy to take contributions to improve it.

@mbbmbbmm
Copy link
Author

Oh yeah, sorry. It is like a glorified makefile I guess. So I could switch to Linux and run the provided makefile instead and see what happens. Will do that later/tomorrow and report back. If that works I could try to build without Visual Studio on Windows instead. Though I don't have any experience with C or C++ unfortunately.

@dromer
Copy link
Collaborator

dromer commented Oct 15, 2023

I heard people are still using this stuff for commercial products, so hopefully some of them will step in to help improve the state.
Sorry that I can't help any further, but Wwise isn't make it very easy to do so.

(to be honest I hope we can find a proper OSS solution for Godot integration)

@mbbmbbmm
Copy link
Author

mbbmbbmm commented Oct 15, 2023

That would be awesome. The only thing I am aware of that doesn't use Wwise for Godot is
https://github.com/magogware/godot-audiostreampd
But it is too slow, input is not recognized in time.

What would I have to change in the Linux Makefile to run it on Windows? I have downloaded the little w64 devkit here but running the Linux file kind of expectedly gives errors..

Ok, so I've changed the compiler from clang to gcc - and it does something! But then it terminates with:

../source/engine/Hv_None_WwisePluginEngineParams.h:36:10: fatal error: AK/SoundEngine/Common/IAkPlugin.h: No such file or directory
36 | #include <AK/SoundEngine/Common/IAkPlugin.h>
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.

I'm giving up for now :'D

@mbbmbbmm
Copy link
Author

OK, cool, I've managed to figure it out (it seems, still have to test in Godot).
First of all I upgraded to VS Community 2022 including the normal C++ workload. Then I needed to install the MFC components via the installer (Search in Individual Components)
Then when I tried to open the solution - I still got the typical errors. There are three errors, one for each generated vcxproj-file. Clicking on the error opens the corresponding file and there I made the following changes for each:

  1. change the windows target platform from 8.1 to 10
  2. change the Wwise version to the correct version (2023.1.0.8256 in my case)
  3. change the version from v140 to v143 (multiple occurences)
  4. change all the occurences ending with '_vc140.props' to them ending with '_vc160.props'

Having done all that I could build the Release version (not sure about Debug) and it shows up and is audible and controllable in Wwise.
Next I'm testing if it works in Godot.
I hope this is helpful!
Cheers

@eu-ch
Copy link
Contributor

eu-ch commented Oct 28, 2023

I've created a ticket for Wwise generator upgrade #126

@eu-ch
Copy link
Contributor

eu-ch commented Nov 5, 2023

@mbbmbbmm we have upgraded Wwise support, things should be easier now: #130

Would be great if you could help us testing it -- please let me know if you have time for this :)

@mbbmbbmm
Copy link
Author

@eu-ch I can test it next week. Thanks!

@eu-ch
Copy link
Contributor

eu-ch commented Nov 15, 2023

@mbbmbbmm Awesome, thanks for your time! Please check these temporary instructions: https://eugn.ch/hvcc_wwise_test.html -- let me know if you have any questions.

dromer pushed a commit that referenced this issue Nov 27, 2023
* c2wwise rewrite, fixes #126

* Fix edge case when no dac~ was in the patch, change includes layout, prevent Heavy from overriding "inline" keyword on Windows

* Add support for 5.1, 7.1, and 7.1.4 channel configurations

* Update Wwise docs

* Fix regression that failed on compiled output-less plugins

* Update Wwise docs

* Fix code style issue

* Wwise docs: clarify build example

* Wwise docs: remove temporary info

* Update Wwise docs

---------

Co-authored-by: ech <lol>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help wanted Extra attention is needed
Projects
Status: Done
Development

Successfully merging a pull request may close this issue.

3 participants