An open API service indexing awesome lists of open source software.

https://github.com/adil-bikiev/minecraft-demo

A simple Minecraft-style ๐Ÿงฑ block builder made with Ursina ๐ŸŽฎ and Panda3D ๐Ÿผ. Move around, place cubes with ๐ŸŒฟ grass texture, and destroy them with a click! Perfect for learning 3D interaction and game mechanics in Python ๐Ÿ.
https://github.com/adil-bikiev/minecraft-demo

game-engine gamedev minecraft minecraft-clone panda3d panda3d-game-engine python3 ursina-engine

Last synced: 4 months ago
JSON representation

A simple Minecraft-style ๐Ÿงฑ block builder made with Ursina ๐ŸŽฎ and Panda3D ๐Ÿผ. Move around, place cubes with ๐ŸŒฟ grass texture, and destroy them with a click! Perfect for learning 3D interaction and game mechanics in Python ๐Ÿ.

Awesome Lists containing this project

README

          

# ๐ŸŸฉ Minecraft-Demo

A lightweight Minecraft-style block-building demo built with the [Ursina Engine](https://www.ursinaengine.org/).
This project features interactive block placement and removal in a first-person 3D world rendered using Panda3D.

## โœจ Features

- ๐ŸŒฑ **Procedural Ground Generation**: A 20x20 grid of grass-textured cubes creates the initial terrain.
- ๐Ÿงฑ **Block Placement**: Left-click on a cube to place another one in the direction you're pointing.
- โŒ **Block Destruction**: Right-click on a cube to remove it.
- ๐ŸŽฎ **First-Person Controller**: Move with WASD, look around with the mouse.
- ๐Ÿ’ก **Visual Feedback**: Cubes darken slightly on hover and press for interaction clarity.
- ๐Ÿ–ผ๏ธ **Texturing**: Cubes use a `grass.png` texture applied dynamically to all blocks.

## Requirements

- Python 3.7 or higher
- [Ursina](https://pypi.org/project/ursina/)
- [Panda3D](https://www.panda3d.org/)

## Installation

1. Clone or download the repository.
```bash
git clone https://github.com/Adil-Bikiev/Minecraft-Demo.git
```

2. Install dependencies:
```bash
pip install -r requirements.txt
```

3. Run the app:
```bash
python main.py
```

## Screenshots
![assets1](./assets/assets1.png)
![assets1](./assets/assets2.png)
![assets1](./assets/assets3.png)

## ๐ŸŽฎ Controls

| Key / Mouse | Action |
| ------------------ | ------------------- |
| `W`, `A`, `S`, `D` | Move the player |
| Mouse Move | Look around |
| Left Mouse Click | Place a new cube |
| Right Mouse Click | Remove hovered cube |

## Notes

* Make sure `grass.png` is in the same directory as your script.
* The project uses OpenGL 2.1 via Panda3D for compatibility.

## ๐Ÿงพ License

This project is licensed under the [MIT License](LICENSE).
You are free to use, modify, and distribute this software as you like.