2019年01月03日

LinuxVulkan奮闘記

Windows10で作成したVulkanフレームワークをLinux版の自作エンジンで使ってみたのですが動かすの苦労しました。

---------------------------------------------------------------------
OS:LinuxMint18.3 Sylvia Mate64-bit
API:VulkanSDK 1.1.85.0 (Vulkan_hpp)
IDE:QtCreator(4.7.2/non-Qt/CMake)/ NetBeans(8.2)
PC:Corei3/GT1030/RAM8GB
VGA:nvidia-384(現在は415)
---------------------------------------------------------------------


問題:SDL2がSDL_SysWMinfo.info.x11のフィールドを寄越さない
原因:SDL_Config.hが未設定
解決:設定済みSDL_Cofig.hがCMakeの出力ディレクトリにあるのでそれに置き換える



問題:GCCだと起動できるのにClangだとSIGILL
原因:returnを書いてなかった
解決:無駄にメソッドチェーンなんてするもんじゃねぇ



問題:ウインドウをリサイズするとOSを巻き込んだフリーズが発生。
原因:不明.ドライバを384→415に更新したら再現条件と挙動が変わったのでドライバも怪しい
解決:不能



リサイズの問題、ドライバ更新前は縮小リサイズと拡大リサイズでバグの出方が違っていて、縮小リサイズはビューポートの変更がウインドウに反映されない、拡大リサイズは一瞬でOSが固まるという症状でした。
ドライバ更新後は、縮小リサイズ時にビューポートの変更が反映されるようになりましたが、OSがフリーズするようにもなりました。拡大リサイズは相変わらず即時フリーズです。
数分かかりますがフリーズ状態から復帰することが可能なことから、単に処理がビジー状態なだけの気もしますが、ドライバ更新前は縮小方向リサイズではフリーズしなかったことから、そうとも言い切れない部分もあってまぁ結局のところさっぱり分かりません。しねしね。





//番外編

問題:GCCで自作エンジンのシステム+OpenGLが動かない
原因:GCC
解決:Clang

posted by gency at 05:37| Comment(0) | 3DProgramming