重燃经典:D2GL——Diablo 2 LoD的现代重生
项目介绍
D2GL(Diablo 2 LoD Glide/DDraw to OpenGL Wrapper)是一款专为Diablo 2 Lord of Destruction(LoD)设计的OpenGL包装器。它通过将旧版的Glide/DDraw调用转换为现代的OpenGL调用,使得这款经典游戏能够在现代硬件和操作系统上运行得更加流畅。D2GL不仅解决了全屏和窗口模式切换的问题,还修复了与窗口和光标相关的诸多问题。此外,它还集成了多种libretro着色器,支持高分辨率放大,并提供了诸如高清文本显示、D2DX的运动预测等高质量生活(QOL)功能。
项目技术分析
D2GL的核心技术在于其强大的OpenGL转换能力。通过使用OpenGL 3.3及以上版本,D2GL能够充分利用现代GPU的性能,提供更高的帧率和更流畅的游戏体验。项目中还集成了多种图形后处理效果,如Lut、锐化、FXAA等,进一步提升了游戏的视觉质量。此外,D2GL还支持RetroArch的slang着色器,允许玩家在游戏中实现高分辨率放大,同时保持画面的清晰度和细节。
项目及技术应用场景
D2GL适用于所有希望在现代硬件上重温Diablo 2 LoD的玩家。无论是Windows 7/8/10/11,还是通过Wine运行的Linux和MacOS系统,D2GL都能提供一致且优化的游戏体验。对于那些热衷于Modding的玩家,D2GL的兼容性也使其成为理想的选择。无论是单独使用,还是与其他Mod(如PlugY、BaseMod等)结合,D2GL都能确保游戏的稳定运行。
项目特点
- 实时设置调整:通过
Ctrl+O
快捷键,玩家可以在游戏中实时调整设置,无需退出游戏。 - 高分辨率放大:利用RetroArch的slang着色器,D2GL支持将游戏画面放大至更高分辨率,同时保持画质。
- 高清文本和光标:游戏中的所有文本和光标都支持高清显示,提升整体视觉体验。
- 解锁帧率:在菜单界面限制为45fps,而在游戏内则完全解锁,提供更流畅的游戏体验。
- 运动预测:集成了D2DX的运动预测功能,特别是在开启垂直同步时效果更佳。
- 图形后处理:支持多种图形后处理效果,如Lut、锐化、FXAA等,进一步提升画面质量。
- 快速切换模式:通过
Alt+Enter
快捷键,玩家可以快速在窗口模式和全屏模式之间切换。
D2GL不仅是一款技术上的创新,更是对经典游戏的一次深情致敬。无论你是Diablo 2的老玩家,还是新入坑的玩家,D2GL都能为你带来前所未有的游戏体验。立即下载,重燃你的冒险之旅吧!
安装与配置
兼容性
D2GL兼容多种Diablo 2 LoD版本和操作系统,详细兼容性信息请参阅兼容性指南。
致谢
D2GL的开发离不开Diablo II Modding社区的支持,以及所有贡献源代码的开发者。特别感谢以下项目和开发者:
- SGD2FreeRes D2 Custom Resolution (Mir Drualga)
- D2DX's Unit/Weather Motion Predictor (Bolrog)
- Libretro's slang shaders (RetroArch)
- The OpenGL Extension Wrangler Library (Brian Paul)
- OpenGL Mathematics (GLM) (G-Truc Creation)
- FXAA implementation by Timothy Lottes (NVIDIA)
- Dear ImGui (Omar Cornut)
- stb_image, stb_image_write (Sean Barrett)
- MurmurHash3 (Austin Appleby)
- MSDF Atlas Generator (Chlumsky)
- Shader Minifier (laurentlb)
- SPIRV-Cross, glslang (KhronosGroup)
- Detours (Microsoft)
截图展示
D2GL,让你的Diablo 2 LoD体验焕然一新!
- CangjieCommunity为仓颉编程语言开发者打造活跃、开放、高质量的社区环境Markdown00
- redis-sdk仓颉语言实现的Redis客户端SDK。已适配仓颉0.53.4 Beta版本。接口设计兼容jedis接口语义,支持RESP2和RESP3协议,支持发布订阅模式,支持哨兵模式和集群模式。Cangjie032
- 每日精选项目🔥🔥 推荐每日行业内最新、增长最快的项目,快速了解行业最新热门项目动态~ 🔥🔥02
- qwerty-learner为键盘工作者设计的单词记忆与英语肌肉记忆锻炼软件 / Words learning and English muscle memory training software designed for keyboard workersTSX022
- Yi-CoderYi Coder 编程模型,小而强大的编程助手HTML07
- advanced-javaAdvanced-Java是一个Java进阶教程,适合用于学习Java高级特性和编程技巧。特点:内容深入、实例丰富、适合进阶学习。JavaScript085
- taro开放式跨端跨框架解决方案,支持使用 React/Vue/Nerv 等框架来开发微信/京东/百度/支付宝/字节跳动/ QQ 小程序/H5/React Native 等应用。 https://taro.zone/TypeScript09
- CommunityCangjie-TPC(Third Party Components)仓颉编程语言三方库社区资源汇总05
- Bbrew🍺 The missing package manager for macOS (or Linux)Ruby01
- byzer-langByzer(以前的 MLSQL):一种用于数据管道、分析和人工智能的低代码开源编程语言。Scala04