- Cargo workspace with engine, editor, tests crates - oxide-editor binary stub (builds and runs cleanly) - install.sh for Linux system installation - README.md with logo, build and install instructions - GPLv3 LICENSE - .gitignore Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
120 lines
2.6 KiB
Markdown
120 lines
2.6 KiB
Markdown
# Oxide Engine
|
|
|
|

|
|
|
|
> **Notice:** This project was developed with the assistance of [Claude Code](https://claude.ai/code) (Anthropic's AI coding assistant).
|
|
> All generated code, configuration, and documentation has been reviewed and tested by the author.
|
|
> Claude Code was used as a development tool; all design decisions, requirements, and sign-offs are the author's own.
|
|
|
|
A general-purpose 3D game engine written in Rust, built for simulation, non-linear gameplay, and open world experiences.
|
|
|
|
---
|
|
|
|
## Features (planned — see [PLAN.md](PLAN.md))
|
|
|
|
- Scene graph and entity management (ECS-based)
|
|
- Skeletal animation system
|
|
- Rigid body physics (`rapier3d`)
|
|
- GPU-driven particle system
|
|
- Shader hot-reload and post-processing stack
|
|
- Ray-traced spatial sound (wave propagation, occlusion, reverb)
|
|
- Procedural generation (noise, heightmap terrain, biomes)
|
|
- Open world streaming (chunking, async asset loading, LOD)
|
|
- **In-engine editor** (`oxide-editor`) built alongside the engine
|
|
|
|
---
|
|
|
|
## Requirements
|
|
|
|
- Rust stable toolchain (`rustup` recommended)
|
|
- Linux (primary target; other platforms not yet tested)
|
|
- A GPU with Vulkan or Metal support (for `wgpu`)
|
|
|
|
Install Rust if you don't have it:
|
|
|
|
```sh
|
|
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
|
|
```
|
|
|
|
---
|
|
|
|
## Building
|
|
|
|
```sh
|
|
cargo build --release
|
|
```
|
|
|
|
To build and run the editor directly:
|
|
|
|
```sh
|
|
cargo run -p oxide-editor --release
|
|
```
|
|
|
|
---
|
|
|
|
## Installing (Linux)
|
|
|
|
The `install.sh` script compiles the project and installs it to your system (`/usr/local`):
|
|
|
|
```sh
|
|
chmod +x install.sh
|
|
./install.sh
|
|
```
|
|
|
|
After installation the editor is available as:
|
|
|
|
```sh
|
|
oxide-editor
|
|
```
|
|
|
|
To uninstall:
|
|
|
|
```sh
|
|
sudo rm /usr/local/bin/oxide-editor
|
|
sudo rm -rf /usr/local/share/oxide
|
|
```
|
|
|
|
---
|
|
|
|
## Running tests
|
|
|
|
```sh
|
|
cargo test
|
|
```
|
|
|
|
Lint and format checks:
|
|
|
|
```sh
|
|
cargo clippy -- -D warnings
|
|
cargo fmt --check
|
|
```
|
|
|
|
---
|
|
|
|
## Project layout
|
|
|
|
```
|
|
Oxide/
|
|
├── assets/ # Project logos and shared assets
|
|
├── engine/ # Core engine library (oxide-engine)
|
|
├── editor/ # In-engine editor binary (oxide-editor)
|
|
├── examples/ # Runnable stage examples
|
|
├── tests/ # Integration test harness
|
|
├── install.sh # Build + system install script
|
|
├── PLAN.md # Staged development roadmap
|
|
└── CLAUDE.md # Context and rules for Claude Code
|
|
```
|
|
|
|
---
|
|
|
|
## Development roadmap
|
|
|
|
Development follows a staged plan — each stage is fully tested before the next begins.
|
|
See [PLAN.md](PLAN.md) for the complete roadmap.
|
|
|
|
---
|
|
|
|
## License
|
|
|
|
MIT
|