This repository was archived by the owner on Apr 29, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 133
This repository was archived by the owner on Apr 29, 2024. It is now read-only.
Tracking issue: Linux port using dxvk / gallium nine #348
Copy link
Copy link
Open
Labels
enhancementNew feature or requestNew feature or request
Description
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
113 marked FIX_LINUX
tasks (from most important to less):
- 19 for
FIX_LINUX ID3DXEffect
. Pushed workaround: CTechnique: + precompiled shaders. CheckFIX_LINUX Effects
- 01 for
FIX_LINUX D3DXCreateTextureFromFileA
: is it used at least somehow? - 01 for
FIX_LINUX D3DXCreateTextureFromFileInMemoryEx
: unused, created PR: Remove unused code #347 - 04 for
FIX_LINUX HBITMAP
: unused, created PR: Remove unused code #347 - 04 for
FIX_LINUX Screenshot
: I hope that SDL has some useful funcs for taking screenshots - 02 for
FIX_LINUX ReleaseDC
: not sure, but may be important - 04 for
FIX_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 #328 - 04 for
FIX_LINUX HINSTANCE
: for correct handling window and other: Linux related changes part 1 #366 - 04 for
FIX_LINUX Cursor
: port all Cursor stuff to SDL - 10 for
FIX_LINUX GetTickCount
: I hope that we will find old branch/changes where is this changes already made - 03 for
FIX_LINUX sentry_options
: few Windows only direct calls to crashpad_handler.exe - 01 for
FIX_LINUX WideCharToMultiByte
: some old conversation - 01 for
FIX_LINUX MultiByteToWideChar
: some old conversation - 08 for
FIX_LINUX DirectXMath
: one DirectXMath call in AVX/SSE2 ifdef. I created quick workaround (this increased 08 forFIX_LINUX DirectXMath
from 2 to 8), but I'll need to replace it with this lib: https://github.com/nfrechette/rtm - 04 for
FIX_LINUX DxErr.h
: few error handling, may be already in DXVK? - 02 for
FIX_LINUX _flushall
: not sure - 01 for
FIX_LINUX RDTSC_*
: need to test SDL_GetPerformanceCounter and use it (if it passes tests) - 10 for
FIX_LINUX __debugbreak
: need to create one place with debugbreak for all platforms/archs - 02 for
FIX_LINUX GetWindowRect
: I used SDL functions for Linux part, but it did not work well in Windows (why?) - 08 for
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 that - 01 for
FIX_LINUX ExitProcess
: I used "exit(0)" for Linux port, but it is part of SailorsEditor, which should be moved from engine IMHO. - 02 for
FIX_LINUX SHGetKnownFolderPath
: I used SDL_GetPrefPath for Linux port. Should I keep SHGetKnownFolderPath for compatibility? - 02 for
FIX_LINUX 7za.exe
: one direct call to 7za.exe - 01 for
FIX_LINUX CreateEventA
: not sure if I need to prevent multiple instances of game - 03 for
FIX_LINUX Beep
: I'm fine if my pc speaker will not beep when I'm playng game) - 17 for
FIX_LINUX s_debug.h
: part for debugging user mods in compiler.cpp and s_dbg_*
espkk, d10sfan, drlamb and ugeen4
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or request