JamesRandall / voxel-builder

Voxel-based 3D modeling application

Home Page:https://nimadez.github.io/voxel-builder/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Voxel Builder

banner

Voxel-based 3D modeling application

Version 4.2.8 Beta

Try Now
Download
Documentation
Known Issues
FAQ

  • We have successfully upgraded to thin-instances and returned to the stable channel as of version 4.2.8
  • three-mesh-bvh has been updated to 0.7.0 and the pathtracer issue on Chrome for Android devices has been resolved.
  • The online version does not have maximum functionality, be sure to download the Electron package.

Features

File I/O

  • Save and load JSON wiki
  • Import MagicaVoxel VOX
  • Export to GLB, GLTF, OBJ, STL
  • See wiki

Voxelization

  • BVH voxelization method
  • 3D model voxelizer wiki
  • Image voxelizer wiki

Model and Paint

  • Generators (terrain, cube, isometric...)
  • Interactive modeling toolsets
  • Symmetric drawing and painting
  • See wiki

Rendering

  • Real-time GPU path tracing wiki

Export Meshes

  • Bake voxels to mesh wiki
  • Unbake mesh to voxels

Extensibility

  • ES modules wiki
  • WebSocket client wiki
  • Startup project

More

  • Extras wiki
  • Minimum dependency, portable, online and offline
  • Ad-free, no trackers, no logging

Supported Browsers

  • Electron (recommended)
  • Google Chrome for desktop
  • Google Chrome for tablet devices
  • PWA A2HS-ready (add to home screen)
  • Touch pen or Wacom tablet recommended for best experience
  • Voxel Builder is made for desktop and mobile, but its features have not been fully tested on mobile devices.

Known Issues

:: Higher than 512K is not recommended
* If you don't manipulate a lot of voxels, you can render up to 512K+
* Electron is recommended for working with a large number of voxels
* For lag-free experience, turn off BVH Picking after 128K
* You cannot turn off BVH Picking when the Rect-Add tool is active

Higher values can have the following problems:
- Unable to quick-save baked meshes (DOMException: exceeded the quota)
- Intolerable delay when starting the real-time renderer
- Chrome tab may freeze or crash

Of course, the number of voxels is unlimited,
I have rendered up to 1 million voxels at 25 FPS.

:: Failed to import GLB meshes for voxelization
Multiple meshes need to have the same properties,
or they won't merge, the only solution is to merge meshes
before exporting to GLB.

:: Real-time renderer does not support multi-material
Postponed to future

FAQ

:: How to merge vertices after export to GLB?
1- Open exported GLB file in Blender
2- Go to "Modeling" tab and choose vertex selection mode
3- Select all vertices (Ctrl + A)
4- Mesh > Clean Up > Merge by Distance

:: How to run Blender importer script?
1- Save project to JSON
2- Open Blender and go to "Scripting" tab
3- Click "Open" and select "blender-importer.py"
4- Run the script and select a JSON file

History

↑ Voxel engine updated to Thin Instances (massive boost)
↑ Cut half precision (new scene)
↑ Real-time GPU path tracing
↑ Introducing ES modules
↑ Stable beta release
↑ Advancing to the next level (bakery)
↑ Major code rewrite (functions to classes)
↑ Features and uix overhaul
↑ New SPS particles to build the world
↑ I wrote a playground for learning Babylon.js

Latest
screenshot

Version 3.0.0 (BJS 4) to 4.2.2 (BJS 6)
screenshot

License

Code released under the MIT license.

Credits

Thank you to those who have contributed knowledge:

About

Voxel-based 3D modeling application

https://nimadez.github.io/voxel-builder/

License:MIT License


Languages

Language:JavaScript 99.1%Language:Python 0.9%