Skip to content

Commit

Permalink
Merge pull request #28 from OmooLab/feature/dev
Browse files Browse the repository at this point in the history
feat: support 4d time data
  • Loading branch information
icrdr authored Jul 15, 2024
2 parents 2eb2358 + b2791e3 commit 0eaba42
Show file tree
Hide file tree
Showing 42 changed files with 915 additions and 484 deletions.
69 changes: 35 additions & 34 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,25 +1,26 @@
[中文文档](https://uj6xfhbzp0.feishu.cn/wiki/Qx3VwHuNPimeI8kr6nDcvl1DnHf?from=from_copylink)

# 🦖 Bioxel Nodes
# Bioxel Nodes

![Static Badge](https://img.shields.io/badge/Blender-orange?style=for-the-badge&logo=blender&logoColor=white)
![GitHub License](https://img.shields.io/github/license/OmooLab/BioxelNodes?style=for-the-badge)
![GitHub Release](https://img.shields.io/github/v/release/OmooLab/BioxelNodes?style=for-the-badge)
![GitHub Repo stars](https://img.shields.io/github/stars/OmooLab/BioxelNodes?style=for-the-badge)

Bioxel Nodes is a Blender addon for scientific volumetric data visualization. It using Blender's powerful Geometry Nodes and Cycles to process and render volumetric data. You are free to share your blender file to anyone who does not install this extension, since most processes were done by Blender's native nodes.

## About

Before us, there have been many tutorials and addons for importing volumetric data into Blender. However, we found that there were many scientific issues that were not addressed in place, and the volume render results were not epic. With Bioxel Nodes, you can easily import any format volumetric data into Blender, and more importantly, make a beautiful realistic volume rendering quickly.

Below are some examples with Bioxel Nodes. Thanks to Cycles Render, the volumetric data can be rendered with great detail:
Bioxel Nodes is a Blender addon for scientific volumetric data visualization. It using Blender's powerful **Geometry Nodes** and **Cycles** to process and render volumetric data.

![cover](https://omoolab.github.io/BioxelNodes/latest/assets/cover.png)

So how to use this extension? please check [Getting Started](https://omoolab.github.io/BioxelNodes/latest/getting-started)
- Fantastic rendering result, also support EEVEE NEXT
- Support multiple formats
- Support 4D volumetric data
- All kinds of cutters
- Simple and powerful nodes
- Based on blender natively, can work without addon.

## Supported Format
**Click [Getting Started](https://omoolab.github.io/BioxelNodes/latest/installation) to begin your journey into visualizing volumetric data!**

## Support Multiple Formats

| Format | EXT | Test |
| ------ | ---------------------------------------- | ------- |
Expand All @@ -30,40 +31,40 @@ So how to use this extension? please check [Getting Started](https://omoolab.git
| TIFF | .tif, .TIF, .tiff, .TIFF | ✅ pass |
| Nifti | .nia, .nii, .nii.gz, .hdr, .img, .img.gz | ✅ pass |
| Nrrd | .nrrd, .nhdr | ✅ pass |
| Meta | .mha, .mhd | yet |
| HDF5 | .hdf, .h4, .hdf4, .he2, .h5, .hdf5, .he5 | ✅ pass |
| VTK | .vtk | yet |
| BioRad | .PIC, .pic | yet |
| Gipl | .gipl, .gipl.gz | yet |
| LSM | .lsm, .LSM | yet |
| MINC | .mnc, .MNC | yet |
| MRC | .mrc, .rec | yet |

## Known Limitations
## Support 4D volumetric data

![4d](https://omoolab.github.io/BioxelNodes/latest/assets/4d-time.gif)

- Cycles CPUs only, Cycles GPUs (Optix), EEVEE (partial support)
- Sections cannot be generated (will be supported soon)
- Time sequence volume not supported (will be supported soon)
🥰 4D volumetric data can also be imported into Blender.

## Compatibility to Newer Version
## Support EEVEE NEXT

Addon are updating, and it is possible that newer versions of the addon will not work on old project files properly. In order to make the old files work, you can do the following:
![eevee](https://omoolab.github.io/BioxelNodes/latest/assets/eevee.gif)

### For project files that need to be archived
👍 EEVEE NEXT is absolutely AWESOME! Bioxel Nodes is fully support EEVEE NEXT now! However, there are some limitations:

Persistently save the Addon nodes before the addon is updated. This will put the nodes out of sync with the addon functionality, but it will ensure that the entire file can be calculated and rendered correctly, it fit to project files that you need to archive.
Bioxel Nodes > Save All Staged Data
1. Only one cutter supported.
2. EEVEE result is not that great as Cycles does.

### For working project files
## Known Limitations

If you've ever done a persistent save of Bioxel Nodes nodes, it's possible that after the addon update, there may be new features of the addon that don't synergize with the saved nodes. In order for the new version to work with the old nodes, you need to relink them.
Bioxel Nodes > Relink Nodes to Addon
- Only works with Cycles CPU , Cycles GPU (OptiX), EEVEE
- Section surface cannot be generated when convert to mesh (will be supported soon)

## About EEVEE Render
## Compatibile to Newer Version

Bioxel Nodes is designed for Cycles Render. However, it does support eevee render partially.Also, there are some limitations:
**Updating this addon may break old files, so read the following carefully before updating**

1. Only one cutter supported.
2. EEVEE Render result is not that great as Cycles does.
Before updating this addon, you need to ask yourself whether this project file will be modified again or not, if it's an archived project file, I would recommend that you run **Bioxel Nodes > Save Staged Data** to make the addon nodes permanent. In this way, there will be no potential problem with the nodes not functioning due to the addon update.

After the addon update, your old project files may not work either, this may be because you had executed **Save Staged Data**. If so, you need to execute **Bioxel Nodes > Relink Nodes to Addon** to relink them to make sure that the addon's new functionality and the addon nodes are synchronized.

Also, unlike the newer versions, the older shaders are not based on OSL, so if you find that you can't render volumes, you need to turn on **Open Shading Language (OSL)** in the Render Settings.

## Roadmap

> Volume Shader is not work properly in EEVEE Next since 4.2. It is because EEVEE Next is not support attributes from instances of volume shader by now. But Blender 4.3 is ok, so I suppose this issue will eventually be fixed.
- Better multi-format import experience
- One-click bake model with texture
- AI Segmentation to Generate Labels
2 changes: 1 addition & 1 deletion bioxelnodes/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
"author": "Ma Nan",
"description": "",
"blender": (4, 1, 0),
"version": (0, 2, 6),
"version": (0, 2, 7),
"location": "File -> Import",
"warning": "",
"category": "Node"
Expand Down
4 changes: 2 additions & 2 deletions bioxelnodes/assets/Nodes/BioxelNodes_4.1.blend
Git LFS file not shown
Loading

0 comments on commit 0eaba42

Please sign in to comment.