X64 Define required for Interop

Some external libraries need to change calling conventions for Interop on x86 and x86_64. This requires a define for compilation.

Could you give an example of those different calling conventions?

Sure.

For Steamworks.NET (GitHub - rlabrecque/Steamworks.NET: Steamworks wrapper for Unity / C#) Unity 5 currently doesn’t work with the x64 version without changing to CallingConvention.ThisCall. CallingConvention.ThisCall crashes the x86 version, and requires StdCall to work. Couldn’t tell you why, Mono just falls over.

I didn’t write this library, but it has this to say on the matter:

1 Like