Beelight

A little light.
A world of mystery.

My contribution

I created a stylized island world — from sculpted terrain and low-poly trees to custom shaders, atmospheric effects and grass that responds to the player.

  • Environment art
  • 3D modeling
  • Shaders & VFX
  • Interactive foliage
Project type
Art project
Team
Solo
Duration
2–3 weeks
Platform
PC
Open video
About the project

Beelight is a first-person exploration art project, built in Unity over 2–3 weeks. The brief was to create a stylized environment with one interaction.

The wider game concept imagines a journey across four islands. Each would reveal another part of a repeating story, bringing the player closer to breaking the cycle. The implemented project focuses on the environment and its atmosphere.

Tools & workflow

Unity · Maya · Blender · ZBrush
Substance Painter & Designer · TopoGun · Marmoset

Project context

A solo art project, coached by Prof. Jan Berger.

From a sketch to an island.

An idea inspired by the Bermuda Triangle became a landscape of strange trees, quiet paths and light in the mist.

Concept sketch
Unity terrain
Light & atmosphere

The development story

The first sketch explored islands arranged around a vortex-like pull. I translated that composition into Unity’s terrain tools, shaping the landscape to lead the eye through the scene.

A custom water shader, an object shader and fog effects helped give the environment its atmosphere. For the terrain, I made four custom textures in Substance 3D Designer and layered them with tessellation to give the ground detail and smooth transitions.

Custom terrain material in Substance 3D Designer
Water and atmosphere
A study in light and particles
Terrain detail in the scene

More detail, where it matters.

The ground uses tessellation to add finer geometry near the camera. Four custom materials, created in Substance 3D Designer, bring the terrain surfaces together.

Terrain tessellation: coarse triangles in the distance transition into finer triangles near the camera. A separate inset distinguishes mesh subdivision from optional height displacement, with four material layers shown below.

Behind the atmosphere.

Sculpted forms, custom materials and small details that make the scene feel alive.

Trees with character.

The trees began as honey trees, with twisted trunks and dripping honey. The honey effect was cut to fit the schedule, while the distinctive silhouettes remained.

The tree concept set the visual direction: sculptural shapes, irregular branches and an exaggerated, stylized form.

Each tree was built as a low-poly asset. One trunk includes a bell, imagined as a possible interaction for a future version.

The original honey-tree concept
The tree sculpt lineup
A family of sculpted silhouettes.
Sculpting the tree in ZBrush
The first trees in Unity
Exploring the tree shapes in the scene
Sculpted tree forms
Trees in the finished environment

A shared stylized finish.

The custom object shader brings baked normal and ambient occlusion information into the diffuse appearance, giving the low-poly trees a consistent, detailed finish.

A world that responds.

Grass clumps and the interaction setup in Unity.

Grass grows in varied clumps and reacts as the player moves through it.

A capsule in front of the player detects the nearby grass, making it appear to move aside as the player walks.

Grass interaction: a vertical capsule ahead of the player, its circular ground footprint, and the bending response shown from above and from the side.

The details along the way.

A modular bridge can be assembled from repeated pieces. Most foliage uses 2D cards, while full 3D tree trunks carry the scene’s more sculptural forms.

Modular bridge pieces in the scene.
Foliage, bridge pieces and glowing accents.
Rock forms and silhouettes
A sculpted plant detail
Foliage in the scene
Small details along the forest path
A tree under the scene lighting

A small world.
Made from the ground up.

Created by
Jomaa Design
Coaching
Prof. Jan Berger

Open video file