Support for OpenGL Core Profile on macOS to bypass version 2.1 limitation #546
ringo-1234
started this conversation in
Draft
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
Summary
Enable support for the OpenGL Core Profile on macOS within the Cleanroom environment. This aims to bypass the macOS-specific limitation where the "Legacy/Compatibility Profile" is capped at version 2.1, allowing Mac users to utilize modern rendering features and improved performance.
Goals
・Enable the creation of an OpenGL 3.2+ Core Profile context on macOS using LWJGL 3.
・Provide a foundation for modern rendering pipelines to function on macOS.
Non Goals
・Ensuring 100% compatibility for every legacy 1.12.2 mod that strictly relies on fixed-function pipeline calls under the Core Profile.
・Manually rewriting the entire vanilla Minecraft 1.12.2 rendering engine.
Motivation
On macOS, Apple has frozen the "Compatibility Profile" at OpenGL 2.1. Unlike Windows, where drivers allow mixing old and new OpenGL commands, macOS strictly separates them. This forces Minecraft 1.12.2 into an ancient 2.1 context, preventing Mac users (especially those on Apple Silicon) from utilizing the full power of their hardware and modern graphical features.
Description
Since CleanroomMC already modernizes the environment by using LWJGL 3 and Java 21+, the next logical step is to address the rendering bottleneck on macOS.
The proposal is to implement an option to force a Core Profile context. This would work in tandem with rendering-overhaul mods that replace legacy GL calls with modern ones. By doing so, we can bridge the gap between the aging 1.12.2 codebase and the strict requirements of modern macOS graphics drivers.
Dependencies
No response
References
・Apple's OpenGL Programming Guide (Details on Legacy vs. Core Profile limitations)
Guidelines
Beta Was this translation helpful? Give feedback.
All reactions