本帖最后由 xtex 于 2021-10-8 14:09 编辑
话说这个算技巧还是教程
注意:
因为使用了软件渲染,对CPU的负担会加重所以游戏可能会变卡
Warning:
过老的版本(远古版)在此方法设置后将无法启动
测试:
rd-132211(目前可下载最老版本):不可启动
4k(2009/12/1,old_alpha):可启动但黑屏
b1.4(2011/3/30发布,old_beta):可启动
1.12:可启动
21w13a:可启动
是否需要
若果你坚持只玩1.17以下的版本,很高兴,你可以离开了(除非你电脑1.17以下的版本都带不动,不过GL2.0都没有的电脑,加上这个也玩不了多流畅吧如果能直接启动1.17以上的版本,不需要,如果不能,出现类似
复制代码的提示,很高兴,你需要本文
起因
在Minecraft的1.17快照开始,Minecraft要求使用OpenGL3.2以上的版本OpenGL2.0且有正版还玩了n年的我笑了(虽然这是n年前的版本但是我也没钱换电脑)经过一个周末的研究后得到了这个方法
下载
Windows
Mesa3D:https://github.com/pal1000/mesa-dist-win/releases
打开之后下载mesa3d-21.0.2-release-mingw.7z(展开最新构建的Assets就能找到了)
大陆地区需要魔法
(Tip:CPU若不支持SSE3指令集需要使用MSVC构建并配置额外的环境变量,64位需要AVX指令集支持(AVX指令集要求是不应该的,pal1000已向上游汇报此问题,在mesa#4437, mesa#3860, MINGW-packages#7530)
没有魔法?
用https://d.serctl.com/
打开后输入https://github.com/pal1000/mesa-dist-win/releases/download/21.1.6/mesa3d-21.1.6-release-mingw.7z 并提交(21.1.6版Mesa3D)(未测试,于2021/7/31发布,2021/8/5此帖更新),若无法使用可尝试发帖时测试过的版本21.0.2,对应URL为https://github.com/pal1000/mesa- ... .2-release-mingw.7z
解压后进入x64/x86文件夹取出opengl32.dll和libglapi.dll并复制到Java的执行目录下(即bin目录,和java.exe/javaw.exe同一个目录)
然后安装Vulkan:下载
点Windows的Latest Runtime/Zip然后点Download Latest Runtime(一键直达下载)
下载并运行vulkan安装器
然后按Agree按钮安装
Linux
大多数发行版内置Mesa3D,自行通过软件包管理器安装(还有Vulkan)
Mac
我不会,参见官网自行编译(还有Vulkan)
配置
修改三个环境变量(=前面是变量名,后面是变量值):
LIBGL_ALWAYS_SOFTWARE=true
MESA_GL_VERSION_OVERRIDE=4.6COMPAT
MESA_GLSL_VERSION_OVERRIDE=460
修改环境变量的方法自己百度:比如这个,还有这个,或者这个没有的可以自己创建
感谢
Mesa3d:https://mesa3d.org/
pal1000提供的Mesa3d在Windows上的预构建版本:https://github.com/pal1000/mesa-dist-win
不知名的serctl下载加速服务:https://d.serctl.com/LunarG的Vulkan运行时:https://vulkan.lunarg.com/sdk/home
关于Mesa3D:
官方描述:Open source implementations of OpenGL, OpenGL ES, Vulkan, OpenCL, and more!
(翻译:开源的OpenGL/OpenGL ES/Vulkan/OpenCL及更多的实现)
MESA3D开源协议:
本文已经扔Internet Archive了,要是被“热度值锁定”了,直接去看Archive得了
话说这个算技巧还是教程
注意:
因为使用了软件渲染,对CPU的负担会加重所以游戏可能会变卡
Warning:
过老的版本(远古版)在此方法设置后将无法启动
测试:
rd-132211(目前可下载最老版本):不可启动
4k(2009/12/1,old_alpha):可启动但黑屏
b1.4(2011/3/30发布,old_beta):可启动
1.12:可启动
21w13a:可启动
是否需要
若果你坚持只玩1.17以下的版本,很高兴,你可以离开了(除非你电脑1.17以下的版本都带不动,不过GL2.0都没有的电脑,加上这个也玩不了多流畅吧如果能直接启动1.17以上的版本,不需要,如果不能,出现类似
- GLFW error 65543: WGL: OpenGL profile requested but WGL_ ARB_ create_ context. profile is unavailable
- Please make sure you have up-to-date drivers (seeaka.ms/mcdriver for instructions).
起因
在Minecraft的1.17快照开始,Minecraft要求使用OpenGL3.2以上的版本OpenGL2.0且有正版还玩了n年的我笑了(虽然这是n年前的版本但是我也没钱换电脑)经过一个周末的研究后得到了这个方法
下载
Windows
Mesa3D:https://github.com/pal1000/mesa-dist-win/releases
打开之后下载mesa3d-21.0.2-release-mingw.7z(展开最新构建的Assets就能找到了)
大陆地区需要魔法
(Tip:CPU若不支持SSE3指令集需要使用MSVC构建并配置额外的环境变量,64位需要AVX指令集支持(AVX指令集要求是不应该的,pal1000已向上游汇报此问题,在mesa#4437, mesa#3860, MINGW-packages#7530)
没有魔法?
用https://d.serctl.com/
打开后输入https://github.com/pal1000/mesa-dist-win/releases/download/21.1.6/mesa3d-21.1.6-release-mingw.7z 并提交(21.1.6版Mesa3D)(未测试,于2021/7/31发布,2021/8/5此帖更新),若无法使用可尝试发帖时测试过的版本21.0.2,对应URL为https://github.com/pal1000/mesa- ... .2-release-mingw.7z
解压后进入x64/x86文件夹取出opengl32.dll和libglapi.dll并复制到Java的执行目录下(即bin目录,和java.exe/javaw.exe同一个目录)
然后安装Vulkan:下载
点Windows的Latest Runtime/Zip然后点Download Latest Runtime(一键直达下载)
下载并运行vulkan安装器
然后按Agree按钮安装
Linux
大多数发行版内置Mesa3D,自行通过软件包管理器安装(还有Vulkan)
Mac
我不会,参见官网自行编译(还有Vulkan)
配置
修改三个环境变量(=前面是变量名,后面是变量值):
LIBGL_ALWAYS_SOFTWARE=true
MESA_GL_VERSION_OVERRIDE=4.6COMPAT
MESA_GLSL_VERSION_OVERRIDE=460
修改环境变量的方法自己百度:比如这个,还有这个,或者这个没有的可以自己创建
感谢
Mesa3d:https://mesa3d.org/
pal1000提供的Mesa3d在Windows上的预构建版本:https://github.com/pal1000/mesa-dist-win
不知名的serctl下载加速服务:https://d.serctl.com/LunarG的Vulkan运行时:https://vulkan.lunarg.com/sdk/home
关于Mesa3D:
官方描述:Open source implementations of OpenGL, OpenGL ES, Vulkan, OpenCL, and more!
(翻译:开源的OpenGL/OpenGL ES/Vulkan/OpenCL及更多的实现)
MESA3D开源协议:
Copyright (C) 1999-2007 Brian Paul All Rights Reserved.
Permission is hereby granted, free of charge, to any person obtaining a
copy of this software and associated documentation files (the "Software"),
to deal in the Software without restriction, including without limitation
the rights to use, copy, modify, merge, publish, distribute, sublicense,
and/or sell copies of the Software, and to permit persons to whom the
Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included
in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
本文已经扔Internet Archive了,要是被“热度值锁定”了,直接去看Archive得了
这个方法实测可以在虚拟机里用,很方便

感觉很强,但是我用不到
<----沉迷1.7.X无法自拔
<----沉迷1.7.X无法自拔
本帖最后由 古镇天Gu_ZT 于 2021-4-11 12:01 编辑
我也想过这个方法,我也找到了其软件实现,但是没找着怎么部署,读了一堆英文wiki,感觉都快裂开了,谢谢楼主!
我也想过这个方法,我也找到了其软件实现,但是没找着怎么部署,读了一堆英文wiki,感觉都快裂开了,谢谢楼主!
古镇天Gu_ZT 发表于 2021-4-11 10:44
我也想过这个方法,我也找到了其软件实现,但是没找着怎么部署,读了一堆英文wiki,感觉都快裂开了,谢谢楼 ...
我也是,我试过系统部署但是我的AIDA64 Extreme打开OpenGL信息时崩溃了(直接替换opengl32),
如果ICD(Installable Client Driver)的系统部署则OpenGL软件渲染不生效,呜呜,请问怎么做到的
@xtex 大佬大佬,请问我按照你说的把文件扔到bin然后安装runtime之后手动添加了三个环境变量之后还是不能打开,显示
GLFW error 65543:WGL:A forward compatible OpenGL context requested but WGL_ARB_create_comtext is unavailable
是什么意思啊
GLFW error 65543:WGL:A forward compatible OpenGL context requested but WGL_ARB_create_comtext is unavailable
是什么意思啊
666666666666666666加油哦!
很高兴来到MCBBS论坛
playymcmc007 发表于 2021-5-5 21:49
@xtex 大佬大佬,请问我按照你说的把文件扔到bin然后安装runtime之后手动添加了三个环境变量之后还是不能打 ...
设置没有生效,可能是环境变量或者glapi覆盖的问题,可以重启一下启动器试试,请确保bin目录是启动MC使用的JRE
作者你好,怎么看自己的openGLl版本?我感觉在官方启动器下的rc2也能正常玩
难道这更能体会mc的原汁原味吗(狗头)
playymcmc007 发表于 2021-5-5 21:49
@xtex 大佬大佬,请问我按照你说的把文件扔到bin然后安装runtime之后手动添加了三个环境变量之后还是不能打 ...
同样的,错误现在得到解决了吗
trzenos 发表于 2021-6-8 05:08
作者你好,怎么看自己的openGLl版本?我感觉在官方启动器下的rc2也能正常玩
那就是你的电脑支持OpenGL3.2+,可以用一些工具查看,比如AIDA64或者GPU-Z,也可以直接上网查显卡参数
Miler 发表于 2021-6-8 07:47
难道这更能体会mc的原汁原味吗(狗头)
至少能玩23333333333,没有OpenGL3.2开不了MC1.17
虽然我看不懂,但是大佬nb就对了
虽然我看不懂,但是大佬nb就对了
电脑是学到了,但楼主有没有可以让手机PojavLaunchar或者boat启动器玩到1.17的方法?
地狱灰long 发表于 2021-6-28 09:26
电脑是学到了,但楼主有没有可以让手机PojavLaunchar或者boat启动器玩到1.17的方法? ...
暂时没有直接运行的方法,尽管PJ可以手动安装OpenJDK升级到16,但是绝大多数安卓设备只硬件支持OpenGLES,而PojavLauncher等也是通过将Mine craft的OpenGL调用转换为GLES调用进行硬件加速渲染的,这个模块是不可关闭的,也就是说,即使硬件原生支持OpenGL3.2或通过root安装了MESA3d等软件渲染器,只要PJ的这一层API转换层还在,那么PJ中运行的MC还是不能调用GL3.2,在PJ的Github仓库的Issue中,有许多关于1.17,OpenGL3.2等的BUG反馈但是都被关闭了,在PJ使用的GL转GLES库gl4es(https://github.com/p**eb/gl4es)中,描述文档明确说明最高支持到OpenGL2,有人发出Issue(https://github.com/p**eb/gl4es/issues/317)请求gl4es支持GL3.2,没有回复。
可以尝试使用虚拟机,例如QEMU,Limbo,Bochs等都在Android上有无root版本,可以运行Windows或Linux虚拟机再这样操作,也可以使用(推荐)Termux或LinuxDeploy也是无root的,可以直接用更好的方式运行虚拟机(类似于Linux容器),然后安装MC并使用VNC等方式连接GUI
xtex 发表于 2021-6-28 15:19
暂时没有直接运行的方法,尽管PJ可以手动安装OpenJDK升级到16,但是绝大多数安卓设备只硬件支持OpenGLES ...
感谢楼主解答,马上去下载虚拟机
服务器有用吗?
小军人 发表于 2021-6-29 14:32
**** 作者被禁止或删除 内容自动屏蔽 ****
只要客户端安装就可以了,服务器不需要渲染(只有客户端有图形输出,服务器只是逻辑,就比如光影也只要客户端)
然后出现了这么个提示

本帖最后由 wine毛毛 于 2021-7-3 22:43 编辑
虚拟机本身就支持啊
比如目前最新的vm16,支持OpenGL4.1,3.2就更支持了
。—。 发表于 2021-4-9 18:20
这个方法实测可以在虚拟机里用,很方便
虚拟机本身就支持啊
比如目前最新的vm16,支持OpenGL4.1,3.2就更支持了
wine毛毛 发表于 2021-7-3 22:42
虚拟机本身就支持啊
比如目前最新的vm16,支持OpenGL4.1,3.2就更支持了
目前vbox6.1用的是14年vm的3d加速,调ogl会崩端,自己装没事
第一次知道
playymcmc007 发表于 2021-5-5 21:49
@xtex 大佬大佬,请问我按照你说的把文件扔到bin然后安装runtime之后手动添加了三个环境变量之后还是不能打 ...
解决了吗?我也出现了相同问题如果解决了可以分享下是怎么解决的吗
鸽子ovo 发表于 2021-7-4 14:17
解决了吗?我也出现了相同问题如果解决了可以分享下是怎么解决的吗
我解决不了,因为我用的虚拟机版本太低了……
lin_1526615 发表于 2021-7-3 21:14
然后出现了这么个提示
az,你有复制文件成功吗,你复制到哪里了
鱼宝放心飞 发表于 2021-7-8 12:06
如何判断自己的计算机是否可以通过该方法运行 1.17?
?????这还要判断啊
1. 如果能不配置直接运行1.17出门左转不谢
2. arm的设备我也不知道行不行
3. 如果是64位设备,需要AVX指令集支持
4. 所有设备需要SSSE3指令集支持
5. 可以用一些查看CPU参数的工具(AIDA64或CPU-Z)查看指令集支持情况
dalao,怎么修改环境变量呢
我电脑也是好几年前的电脑了(7-8年),现在打开快速渲染就会显示一些奇奇怪怪的东西,所以是只能关了嘛,比如能透过方块看到箱子和矿车之类的(这个是问题)
dalaoNB我遇到的问题是GLFW error 65543;
前面的步骤都跟着做完,到环境变量不会改就没动
完美解决我老旧电脑没显卡还能玩1.17.1的问题
前面的步骤都跟着做完,到环境变量不会改就没动
完美解决我老旧电脑没显卡还能玩1.17.1的问题

playymcmc007 发表于 2021-5-5 21:49
@xtex 大佬大佬,请问我按照你说的把文件扔到bin然后安装runtime之后手动添加了三个环境变量之后还是不能打 ...
我也是这样,请大佬解答一下
感觉很强,但是我用不到
<----沉迷1.7.X无法自拔
来蹭蹭,感谢楼主分享
虽然我看不懂,但是大佬nb就对了
大佬,没找到那些环境变量怎么办
怎么联机谁教教我
218997 发表于 2021-7-24 09:03
大佬,没找到那些环境变量怎么办
新建啊(超大声
MCBBS有你更精彩~
218997 发表于 2021-7-28 23:31
大佬,怎么变量值与变量名怎么建啊,我是这方面小白
新建按钮LIBGL_ALWAYS_SOFTWARE这种是变量名true这种是值,我习惯=前面是名后面是值(也没人会倒过来吧
新建:
1.名:LIBGL_ALWAYS_SOFTWARE,值:true
2.名:MESA_GL_VERSION_OVERRIDE,值:4.6COMPAT
3.名:MESA_GLSL_VERSION_OVERRIDE,值:460
还能这样,学到了学到了
真不错,真不错,没有你不行
老电脑又活了!!
感谢楼主分享
谢谢大佬,学到了
!!谢谢楼主,但所有方法都试过还是提示unavailable,jdk8和jdk16装在不同文件夹(一个在官方启动器文件夹一个在系统盘),mesa本来能用后来不行,intel hd 2000,请问这个有办法吗
NB,但是我虚拟机带不起了