专栏/intel HD 2000/3000 强制模拟OpenGL 3.3游玩MC 1.17+(windows)

intel HD 2000/3000 强制模拟OpenGL 3.3游玩MC 1.17+(windows)

2021年05月04日 14:32--浏览 · --点赞 · --评论
粉丝:5407文章:10


前言

由于21w10a将渲染核心版本更新至OpenGL 3.2

而Intel HD 2000的最新(指2015年)windows驱动只支持OpenGL 3.1

(不然英特尔怎么让你换HD 4000)

(更糟糕的是,HD 2000/3000的驱动根本没win10/11适配,想要正常用上OpenGL还得打个国外友人反编译dll文件之后搞出的补丁)

所以正常启动1.17就会弹出下面的提示

“请确认你的驱动已更新至最新版本”

那怎么办?自己的渣机真的与1.17无缘了吗?

不,还有几条路:

  1. Mesa软件加速(本文方法)

  2. HMCL软件渲染(不支持中国版,但步骤很简单:设置——全局游戏设置——高级设置——渲染器——软渲染器)

  3. 微软的OpenGL兼容包(https://apps.microsoft.com/detail/9nqpsl29bfff?hl=zh-cn&gl=CN)

  4. ForceGL20 模组(效率高,但up一直没成功过,就不做教程了)

  5. (仅适用于Intel HD 2000/3000)使用Linux系统(有支持OpenGL 3.3的开源驱动,效率高)

本文介绍第一种方法

( 视频教程:https://www.bilibili.com/video/BV1Na411f7HD

(如果不会配置网易java版可参考@雷宇ya的视频:https://www.bilibili.com/video/BV1Ch4y1k7Ki


1.准备

  • 现在已经不需要启动脚本,也不必要创建任何文件了!

  • 确认你使用的java的文件夹路径

    (启动mc并打开任务管理器,在“详细信息”标签页找到java.exe/javaw.exe,右键进程并选择“打开文件所在的位置”即可找到文件夹路径(此方法同样适用于网易Java版))

  • 确认mc使用的是java.exe还是javaw.exe(一般为javaw.exe)

  • 下载好对应的Java版本( 版本要求可参考 https://zh.minecraft.wiki/w/Tutorial:更新Java )

  • Mesa(开源图形驱动程序)的预构建版本

    https://github.com/pal1000/mesa-dist-win/releases

    (理论上,下载最新版带release-mingw.7z后缀的就行)

    (如果最新版本的Mesa库用了会报错,建议使用老版本20.0.5)

    (如果无法正常访问上面的网址,up这里有个20.0.5版本的备份

    蓝奏云: https://guajngmiyu.lanzout.com/iJjvOz503gj  密码:ecjf

    OneDrive(国内可直连):https://crystfish-my.sharepoint.com/:u:/g/personal/share_crystfish_onmicrosoft_com/EYfnXjPYvfhLtLAGUDNLefAByD7ji4wTZmGxwz1Bf824mg?e=M46XdQ)

2.连接

解压你下好的压缩包

双击打开perappdeploy.cmd

按照指示走

此处粘贴你使用的java的文件夹路径

先粘贴java所在路径

回车,输入 java.exe(或javaw.exe,取决于mc启动时所使用的exe)

(专栏开头有提醒)

再回车,打两次“y”,后面都打“n”

(图片已过时)记得回车

最后填“n"后

脚本会自动退出

回到java所在的文件夹

打开终端/命令提示符/cmd/Powershell(反正就是在当前目录下打开命令行)

输入:

set MESA_GL_VERSION_OVERRIDE=3.3COMPAT

回车

然后就可以关闭终端了


大功告成

打开mc

然后享受“山与碰撞 Part.1”更新吧!(doge)

HD 2000成功打开21w14a

Q&A

Q:如何还原

A:删除以下文件即可:

就是被选中的三个文件

Q:为什么用了这个方法之后MC帧数好低

A:软件加速本质上是让cpu来代替gpu进行图形渲染,而cpu的图形计算效率不高,再加上cpu要同时承担cpu和gpu的活,帧数自然不高

Q:为什么Mesa脚本打不开/报错/成功运行但游戏仍然报错

A:可以尝试以下方法:

  1. 完整解压文件后再运行脚本

  2. 检查java路径等信息是否正确

  3. 尝试重启电脑后再运行

  4. 尝试使用管理员权限运行脚本

  5. 确认java文件夹所在磁盘分区的文件系统是否支持符号链接(比如FAT32文件系统就不支持,故无法创建符号链接而报错)

若问题仍然没有解决可以评论或私信具体情况

Q:为什么1.16及以下版本打不开

A:请使用 java 1.8.0_51来启动游戏

(这个问题与本篇专栏关系不大,但是还是有好多人问......)

Q:为什么官方要求的OpenGL版本为3.2而这篇教程用的是3.3

A:3.3更加通用一点,很多游戏要求3.3

(不过对于mc来说没啥区别,3.2和3.3都可以)


后记

使用javaw.exe无明显性能提升

用optifine后帧数会高一点

(1.17默认窗口大小有二三十帧左右)

如果有疑问欢迎留言讨论

(但是会有人看嘛 QAQ)


更新历史

7月4日补充:

使用此方法无法打开装了optifine的1.17

(找原因快找吐了......‍Σ_(꒪ཀ꒪」∠)_...)

optifine可以用了!

提示如上(已过时)

7月18日补充:

使用新版本Mesa库可能会报错:

Fail to load opengl32.dll

果然,不要轻易相信“理论上”

(我吐槽我自己‍ Σ(  ̄□ ̄||)< )

11月20日补充:

1.17.1能用optifine了,帧数高了不少(至少跑酷终于不是ppt了!)

1月23日补充:

加上了蓝奏云链接,方便下载

7月29日补充:

之前编辑的时候不小心删掉了一小点内容233333

8月7日更新:

简化了流程

1月6日:

简化了流程

现在已经不需要启动脚本,也不必创建任何文件了!

7月30日:

添加了新教程视频(感谢@雷宇ya)

重新添加了OneDrive链接

7月6日:

补充了其他可行的方法

增加了Q&A板块


参考

https://community.citra-emu.org/t/force-opengl3-3-on-intel-hd-graphics-3000-windows/14122

https://jump2.bdimg.com/p/6641511657

投诉或建议