There are no reviews yet. Be the first to send feedback to the community and the maintainers!
============================= The vkd3d 3D Graphics Library ============================= Vkd3d is a 3D graphics library built on top of Vulkan. It has an API very similar, but not identical, to Direct3D 12. ============== Building vkd3d ============== Vkd3d depends on SPIRV-Headers and Vulkan-Headers (>= 1.2.139). Vkd3d generates some of its headers from IDL files. If you are using the release tarballs, then these headers are pre-generated and are included. If you are building from git, then they will be generated at build-time using widl. By default, vkd3d will use the widl found in `PATH'. If widl is not available or is not recent (>= 3.20), then you can build Wine with `make tools/widl' to avoid building all of Wine. You can then point vkd3d's configure at that widl binary with `WIDL="/path/to/widl"'. For release builds, you may want to define NDEBUG. If you do not need debug log messages, you may also consider VKD3D_NO_TRACE_MESSAGES and VKD3D_NO_DEBUG_MESSAGES. For example, you can pass `CPPFLAGS="-DNDEBUG -DVKD3D_NO_TRACE_MESSAGES"' to configure. =========== Using vkd3d =========== Vkd3d can be used by projects that target Direct3D 12 as a drop-in replacement at build-time with some modest source modifications. If vkd3d is available when building Wine, then Wine will use it to support Direct3D 12 applications. ===================== Environment variables ===================== Most of the environment variables used by vkd3d are for debugging purposes. The environment variables are not considered a part of API and might be changed or removed in the future versions of vkd3d. Some of debug variables are lists of elements. Elements must be separated by commas or semicolons. * NO_COLOR - this is an alias of NO_COLOUR. * NO_COLOUR - when set, vkd3d-compiler will default to monochrome output, even when the output supports colour. * VKD3D_CONFIG - a list of options that change the behavior of libvkd3d. * virtual_heaps - Create descriptors for each D3D12 root signature descriptor range instead of entire descriptor heaps. Useful when push constant or bound descriptor limits are exceeded. * vk_debug - enables Vulkan debug extensions. * VKD3D_DEBUG - controls the debug level for log messages produced by libvkd3d. Accepts the following values: none, err, fixme, warn, trace. * VKD3D_VULKAN_DEVICE - a zero-based device index. Use to force the selected Vulkan device. * VKD3D_DISABLE_EXTENSIONS - a list of Vulkan extensions that libvkd3d should not use even if available. * VKD3D_SHADER_DEBUG - controls the debug level for log messages produced by libvkd3d-shader. See VKD3D_DEBUG for accepted values. * VKD3D_SHADER_DUMP_PATH - path where shader bytecode is dumped. * VKD3D_TEST_DEBUG - enables additional debug messages in tests. Set to 0, 1 or 2. * VKD3D_TEST_FILTER - a filter string. Only the tests whose names matches the filter string will be run, e.g. VKD3D_TEST_FILTER=clear_render_target. Useful for debugging or developing new tests. * VKD3D_TEST_PLATFORM - can be set to "wine", "windows" or "other". The test platform controls the behavior of todo(), todo_if(), bug_if() and broken() conditions in tests. * VKD3D_TEST_BUG - set to 0 to disable bug_if() conditions in tests.
Proton
Compatibility tool for Steam Play based on Wine and additional componentsGameNetworkingSockets
Reliable & unreliable messages over UDP. Robust message fragmentation & reassembly. P2P networking / NAT traversal. Encryption.openvr
OpenVR SDKsteam-for-linux
Issue tracking for the Steam for Linux beta clientsource-sdk-2013
The 2013 edition of the Source SDKhalflife
Half-Life 1 engine based gamessteam-audio
Steam AudioToGL
Direct3D to OpenGL abstraction layerSteamOS
SteamOS community trackerDota2-Gameplay
Public Bug Tracker for Dota2vogl
OpenGL capture / playback debugger.wine
Wine with a bit of extra spicesteam-runtime
A runtime environment for Steam applicationssteamvr_unity_plugin
SteamVR Unity Plugin - Documentation at: https://valvesoftware.github.io/steamvr_unity_plugin/SteamVR-for-Linux
Issue tracker for the Linux port of SteamVRcsgo-osx-linux
Counter-Strike: Global OffensiveSource-1-Games
Source 1 based games such as TF2 and Counter-Strike: SourceFossilize
A serialization format for various persistent Vulkan object types.counter-strike
CS:GOIndexHardware
csgo-demoinfo
CS:GO demo parsing toolsteamlink-sdk
Dota-2
Tracker for issues specific to Linux and Mac in the Reborn client. If you have a general issue or non-system-specific feature request please go to dev.dota2.comsteamos_kernel
SteamOS kernel branchesdxvk
dxvk tree containing branches used by Protonunity-xr-plugin
OpenVR plugin for Unity's XR APIArtifactDeckCode
Reference code and documentation for Artifact deck codesthe_lab_renderer
Valve’s VR renderer used in The Lab (Valve’s VR launch title for the HTC Vive).voglperf
Benchmarking tool for Linux OpenGL games. Spews frame information, logs frametimes.steamvr_unreal_plugin
SteamVR Input Unreal Plugin - Documentation at: https://github.com/ValveSoftware/steamvr_unreal_plugin/wiki Sample project (UE4.15-4.23): https://github.com/ValveSoftware/steamvr_unreal_plugin/wiki/sample/SteamVRInputPlugin.zip Sample Project (UE.424+): https://github.com/ValveSoftware/steamvr_unreal_plugin/wiki/sample/SteamVRInputPlugin_UEIntegrated.7zMoondust
steamos_mesa
Patched branches of Mesa used in SteamOSportal2
Issues for the Linux port of Portal 2steamworks-vr-api
Source for the Steamworks VR APIsteam-devices
List of devices Steam and SteamVR will want read/write permissions on, to help downstream distributions create udev rules/etcsteamos-compositor
SteamOS session compositing window managerdriver_hydra
OpenVR Driver for Razer Hydra using Sixense SDKDota-2-Vulkan
Tracker for issues specific to the Vulkan version of Dota 2 on Windows, Linux, and macOSvirtual_display
An example OpenVR driver for demonstrating the IVRVirtualDisplay interface.openxr_engine_plugins
Contains Valve-provided plugins for using OpenXR extensions with various game engineslinux
SteamOS fork of the Debian kernel packaging repository at https://anonscm.debian.org/git/kernel/linux.git/eigen
Fork of Eigen release version 3.4. Adds ability to use alternate threading systems from Open MP.Dota-Underlords
Tracker for issues specific to the Linux and macOS client of Dota UnderlordsOpenXR-Canonical-Pose-Tool
A tool to help OpenXR runtime developers match their poses to other runtimes' poses.VR-Community-Bugs
Repository for VR Bugs reported through tickets and community outreachLove Open Source and this site? Check out how you can help us