Web Analytics

unrealheightmap

⭐ 92 stars English by manticorp

16/32 Bit Grayscale PNG/EXR Heightmap Generator

A browser-based tool for generating high-quality 16-bit grayscale PNG heightmaps or 16/32-bit EXR heightmaps from real-world terrain data.

Perfect for creating realistic landscapes in Unreal Engine 5 and other game engines or 3D software, such as Terrain3d, Godot4 and Blender.

🌐 Live Website: https://manticorp.github.io/unrealheightmap/

ko-fi

⚠️ Important Notice

We have started hitting the free tier limits from some map services, so the site may not work until we get some funding to up these limits. If you find this tool useful, please consider supporting the project!

✨ Features

🎯 Use Cases

🚀 Quick Start

For detailed instructions, visit the Documentation page.

📖 Documentation

🛠️ Technology Stack

💻 Development Setup

Prerequisites

Installation

# Clone the repository
git clone https://github.com/manticorp/unrealheightmap.git
cd unrealheightmap

Install dependencies

npm install

Build Commands

# Development build
npm run build

Production build

npm run author

Watch mode (auto-rebuild on changes)

npm run watch

Run unit tests

npm test

Project Structure

├── src/                   # Source TypeScript and SASS files
│   ├── app.ts             # Main application logic
│   ├── main.ts            # Entry point
│   ├── png.ts             # PNG processing
│   ├── processor.ts       # Web worker for image processing
│   ├── sass/              # Stylesheets
│   └── templates/         # HTML templates
├── public/                # Static assets and build output
│   ├── dist/              # Built JavaScript and CSS
│   ├── im/                # Images
│   └── examples/          # Example heightmaps
├── index.html             # Main application page
├── instructions.html      # Documentation page
├── examples.html          # Examples page
└── webpack.config.js      # Webpack configuration

🎨 Examples

Grand Canyon (64km)

View in tool

Grand Canyon Example

For more examples, visit the Examples page.

🔧 Normalisation Modes

None

No normalisation performed. Pixel values directly represent height in meters (negative values are set to 0).

Regular

Scales height values to use the full 16-bit range (0-65535), maximizing detail across the entire heightmap.

Smart

An advanced mode that handles data errors and outliers. Uses a 99.9% window to filter extreme values while preserving authentic min/max values within 1 standard deviation.

📊 Output Format

🤝 Contributing

Contributions are welcome! Please feel free to submit issues, fork the repository, and create pull requests.

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

The elevation data is provided by Mapzen and may have its own licensing terms.

💖 Support

If you find this tool useful, please consider supporting the project:

🙏 Acknowledgments

📞 Contact

---

Made with ❤️ for the Unreal Engine, 3D and game development community

--- Tranlated By Open Ai Tx | Last indexed: 2026-01-10 ---