エラー内容
SDL_image.IMG_Initで、Failed loading libpng16-16.dll: 指定されたモジュールが見つかりません。
といったエラーが出る。
解決策
SDL_image.IMG_Initを実行する前にSetDllDirectroryでdllの検索場所をプログラムのあるパスにすれはよい
以下コード。
using System.Runtime.InteropServices;
using SDL2;
[DllImport("kernel32.dll", CharSet = CharSet.Auto, SetLastError = true)]
public static extern bool SetDllDirectory(string lpPathName);
void Init()
{
// 初期化する前にSetDllDirectoryでdllの検索場所をプログラムのあるパスに設定する
SetDllDirectory(AppContext.BaseDirectory);
if (SDL_image.IMG_Init(SDL_image.IMG_InitFlags.IMG_INIT_PNG) == 0)
Console.WriteLine(SDL_image.IMG_GetError());
...
}