/MobileCraft

A minecraft clone iOS project transplant from MacOS C++ version based on modern OpenGL completed in ZJU computer graphics course.

Primary LanguageObjective-C

Mobliecraft

mycraft

Mobliecraft is a learning-OpenGL iOS project completed in ZJU computer graphics course.

Transplant from my MacOS Version Mycraft.

It's a Minecraft clone with lighting effects based on GLKit on iOS use Objective-C & C++ and build with XCode.

1

1

Features

Render

  • Original block textures from Minecraft
  • Corner shadow to simulate SSAO effect
  • Point light with smooth diffusion from Torch / Glowstone
  • Time pass effect with Gradient sky & Starry sky
  • Animation when break a block / Highlight when choose a block
  • Transparent / translucent block like water / glass
  • Simple gravity engine for on-the-ground and below-water
  • Jitter perspective to simulate running effect
  • Underwater visual effects
  • Fog effect for blocks far away

Data

  • Infinite random map generation use perlin noise
  • Trees / Flowers / Grass / Cloud / Lake random generation
  • Visible face culling and frustum culling for faster rendering
  • Closed space testing and neighboring visible chunks culling
  • Corner shadow / Point light effect generate and update
  • Adjustable game settings in src/game_settings.h
  • Map storage not done yet :(

Build

Run

Just use the recent XCode and click run to get the game started

Game Controls

  • Move fingers on screen to change perspective
  • Virtual joystick to move
  • Tap the screen to place block and press to destroy
  • Switch blocks by ← & → arrows
  • Change all game settings in src/game_settings.h

Architecture Design

mycraft_design

Reference

Tribute to best Minecraft.

Modern OpenGL example codes from learnopengl and learnopengl-cn (Perfect chinese version :)

Skybox texture & Steve model sources from Craft.

Screenshots

Original Textures

3

Sunset

4

Point Light

6

In-water Point Light

7

Underwater Visual Effects

9

Fog

10

Breaking Animation

12