docs: clarify hardware compatibility goals of the project #992
Labels
No labels
CI
all
basisu
blog
bug
build
contributor-friendly
core
correctness
deferred
dev
direct3d-headers
docs
driver-os-issue
duplicate
dxcompiler
editor
examples
experiment
feature-idea
feedback
flac
freetype
gamemode
gkurve
glfw
gpu
gpu-dawn
harfbuzz
help welcome
in-progress
infrastructure
invalid
libmach
linux-audio-headers
long-term
mach
mach.gfx
mach.math
mach.physics
mach.testing
model3d
needs-triage
object
opengl-headers
opus
os/linux
os/macos
os/wasm
os/windows
package-manager
priority
proposal
proposal-accepted
question
roadmap
slipped
stability
sysaudio
sysgpu
sysjs
validating-fix
vulkan-zig-generated
wayland-headers
website
wontfix
wrench
www
x11-headers
xcode-frameworks
zig-update
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
hexops/mach#992
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Hey! I've noticed on an older issue (https://github.com/hexops/mach/issues/195) that Mach's support for OpenGL seems to extend up to 4.5, which is a bit high for some devices (specially mobile ones where they can't get there)
Are there plans to have a backend that supports (as a fallback, or an alternative) at least OpenGL 3.3 for maximum compatibility? Or is better that the engine sticks with what it has now? Just curious.
Cheers!
MetalMaxMX.
Most Windows and macOS hardware released in the last 5 years has DirectX 12 support (or an equivalent version of Metal), while Linux is a more complex topic-primarily because many users there actually do not have fully functioning graphics drivers (many think they do, but in reality find they are actually broken in subtle ways.)
My aim is for Mach to also be usable for developing the next generation of desktop/mobile apps too, not just games. So we will aim to support best-effort OpenGL fallbacks specifically for Linux users who may be suffering in the next few years. But the world is moving on quickly, and in a few years time I expect only embedded devices to be the outlier in terms of not having modern graphics APIs. We won't be supporting embedded devices, and will probably move on from supporting OpenGL fallbacks at all in say 3-5 years.
OpenGL 3.3 is over 12 years old, and is lacking very important modern functionality - even if you exclude things like compute shaders which dramatically change what you can do with the GPU - we won't ever be supporting OpenGL versions earlier than 4.5 or what Dawn supports. By the time someone releases an actually valuable application/game with Mach (say 2-3 years from now), OpenGL 3.3 will be ~15 years old.
Similarly, the Thinkpad X220 mentioned in https://github.com/hexops/mach/issues/195 was released over 12 years ago, so we can't support it.
Hope that answers your questions! I'll leave this issue open as a reminder for myself to document this on the website.