Here will be current lists of needed fixes for Linux port of engine using dxvk.
Current source code of dxvk port is here: https://github.com/storm-devs/storm-engine/tree/dxvk
Started status: there is 113 #ifdef marked with FIX_LINUX which should be replaces with proper implementations, but engine already build fine with CLANG 11 and partially show main menu background

Current status:

113 marked FIX_LINUX tasks (from most important to less):
Here will be current lists of needed fixes for Linux port of engine using dxvk.
Current source code of dxvk port is here: https://github.com/storm-devs/storm-engine/tree/dxvk
Started status: there is 113

#ifdefmarked with FIX_LINUX which should be replaces with proper implementations, but engine already build fine with CLANG 11 and partially show main menu backgroundCurrent status:

113 marked
FIX_LINUXtasks (from most important to less):FIX_LINUX ID3DXEffect. Pushed workaround: CTechnique: + precompiled shaders. CheckFIX_LINUX EffectsFIX_LINUX D3DXCreateTextureFromFileA: is it used at least somehow?FIX_LINUX D3DXCreateTextureFromFileInMemoryEx: unused, created PR: Remove unused code #347FIX_LINUX HBITMAP: unused, created PR: Remove unused code #347FIX_LINUX Screenshot: I hope that SDL has some useful funcs for taking screenshotsFIX_LINUX ReleaseDC: not sure, but may be importantFIX_LINUX VirtualKey: There is dilemma: we can keep VirtualKeys for c-files in PROGRAM folder to maintain old mods or replace all VirtualKeys, because less code == less errors. Current decision - keep VirtualKeys: Replace GetKeyState and GetAsyncKeyState with core functions #328FIX_LINUX HINSTANCE: for correct handling window and other: Linux related changes part 1 #366FIX_LINUX Cursor: port all Cursor stuff to SDLFIX_LINUX GetTickCount: I hope that we will find old branch/changes where is this changes already madeFIX_LINUX sentry_options: few Windows only direct calls to crashpad_handler.exeFIX_LINUX WideCharToMultiByte: some old conversationFIX_LINUX MultiByteToWideChar: some old conversationFIX_LINUX DirectXMath: one DirectXMath call in AVX/SSE2 ifdef. I created quick workaround (this increased 08 forFIX_LINUX DirectXMathfrom 2 to 8), but I'll need to replace it with this lib: https://github.com/nfrechette/rtmFIX_LINUX DxErr.h: few error handling, may be already in DXVK?FIX_LINUX _flushall: not sureFIX_LINUX RDTSC_*: need to test SDL_GetPerformanceCounter and use it (if it passes tests)FIX_LINUX __debugbreak: need to create one place with debugbreak for all platforms/archsFIX_LINUX GetWindowRect: I used SDL functions for Linux part, but it did not work well in Windows (why?)FIX_LINUX ddraw.h and amstream.h: It need only for play avi into and other videos. Will require to use ffmpeg or something like thatFIX_LINUX ExitProcess: I used "exit(0)" for Linux port, but it is part of SailorsEditor, which should be moved from engine IMHO.FIX_LINUX SHGetKnownFolderPath: I used SDL_GetPrefPath for Linux port. Should I keep SHGetKnownFolderPath for compatibility?FIX_LINUX 7za.exe: one direct call to 7za.exeFIX_LINUX CreateEventA: not sure if I need to prevent multiple instances of gameFIX_LINUX Beep: I'm fine if my pc speaker will not beep when I'm playng game)FIX_LINUX s_debug.h: part for debugging user mods in compiler.cpp and s_dbg_*