lanyu8 / MiniMineCraft

基于C++和OpenGL实现的模仿我的世界的图形学小Demo。实现了包括地形自动生成,方块消除和放置功能。

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

MiniMineCraft

本项目是基于C++(c11)OpenGLGLFW实现的模仿我的世界的图形学小Demo。实现了包括随机地形生成,方块消除和放置功能。
前后断断续续用了5天左右的时间开发完成。完成仓促,因此在类结构、功能和性能上都有很多不足的地方,后续有时间会进行重构修改,并记录全过程。
其中方块贴图资源来源于Craft项目,噪声函数来源于noise项目

使用方式

代码使用方式

项目基于windows开发,项目代码位于MineCraftDemo文件夹中,可以直接使用visual studio 2015加载。

全局参数设置

全局参数位于WorldInfo.h&WorldInfo.cpp中,会影响运行性能的参数如下:

参数名 说明 备注
renderChunkRadius 渲染半径 设置的越大可见范围越广,但可能会造成卡顿。默认为2,建议设置为1
useLight 是否开启光照明 默认开启
useFog 是否开启雾效 默认开启
rayTestStepNum 射线检测步数 和rayTestStep共同决定射线检测的精度和距离
rayTestStep 射线检测步长 同rayTestStepNum
waterLevel 水平面

运行效果

运行效果1 运行效果1 运行效果1 运行效果1


About

基于C++和OpenGL实现的模仿我的世界的图形学小Demo。实现了包括地形自动生成,方块消除和放置功能。

License:GNU General Public License v3.0


Languages

Language:C++ 76.9%Language:C 21.8%Language:Objective-C 0.9%Language:CMake 0.4%Language:GLSL 0.1%Language:Lua 0.0%