max-mapper / max-mapper/voxel-engine

How to create block types that don't fill the whole voxel cube?

Open
#102 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
JavaScript
Stars
1.3k
Forks
217
PR merge metrics
No merged PRs in 30d

Description

I'd like to have block types whose geometry only takes up part of a voxel - like the glass panes, slabs, and stairs in Minecraft.

  1. Is that currently possible? Do I need a special module? If so, which one?

That's my main question, but here are some bonus questions if you're feeling generous:

  1. If the answer to 1 is "yes": will my in-game avatar collide with the visible edges of the block, or with the edge of the voxel? For example, if I create a wall of glass panes, will I be able to move partway into that voxel (until I hit the actual glass), or will I hit an invisible wall (the edge of the voxel) just in front of the glass?
  2. If the answer to 2 is "you won't collide with the edge of the voxel": will the player movement routines handle these blocks in a sensible way? For example, if I create a ramp or stair block type, and I run straight into one, will I climb it?

Basically, I'd like to create a game world that allows you to move from lower locations to higher ones without having to jump constantly.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

The issue names no files, tests, or entry points. Start by tracing block geometry, collision handling, and player movement in the engine, then check how existing glass panes, slabs, or stairs are represented. Done would require a clear capability decision and documented or tested behavior for partial geometry, collision boundaries, and movement over ramps or stairs.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
game-dev
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
18/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.