Graphics and Gaming
Modern graphics and compute APIs
- Vulkan: Khronos Group, to unify OpenGL and OpenGL ES (Embedded Systems), and OpenCL will be merged into Vulken too. Written in C. Based on AMD's Mantle API. AMD donated Mantle API to Khronos. Development of Mantle API is discontinued. Can be used in Android.
- Metal: Apple's API, replacing OpenCL and OpenGL. Written in C++14 and can be invoked in Swift and Object-C.
- DirectX: Microsoft. Direct3D is a subset of DirectX. DirectX 11 and 12 implementations are now based on Vulkan.
Shading language: https://en.wikipedia.org/wiki/Shading_language
Such language forms usually consist of special data types, like "vector", "matrix", "color".
The most popular:
- Unreal Engine: by Epic Games.
- Unity: written in C++, developers use C#
- Frostbite Engine: EA's in-house engine. Games: FIFA, Need for speed, etc. Mass Effect used it for Andromeda but went back to Unreal Engine after that.
- REDengine: CDPR's in house engine, used for Witcher 2, Cyberpunk 2077. But CDPR is transitioning to the Unreal Engine for the next Witcher games.
- Steam (Valve)
- Epic Games
- Ubisoft Connect
- Origin (EA)
- GOG Galaxy
- Nvidia GeForce Now (free with limits and $9.99/mo)
- Xbox Game Pass Ultimate ($15/mo)
- PlayStation Now ($9.99/mo)
- Amazon Luna ($6.99/mo)
Gaming on Linux
Proton can port Windows games to Linux. Developed by Valve, a fork of wine.
Source code: https://github.com/ValveSoftware/Proton
Check if your Steam game can work on Linux: protondb.com
SteamOS is actually based on Linux.
Stadia was built on Debian Linux servers and Vulkan is their graphics API.
Open Sourced Games