allen-cell-animated / volume-viewer

https://allen-cell-animated.github.io/volume-viewer/
Other
90 stars 7 forks source link

internals: texture atlas vs 3d texture #67

Open toloudis opened 1 year ago

toloudis commented 1 year ago

Use Case

The viewer currently stores data redundantly in two separate representations. Maintaining a single representation would save on memory and simplify the code. Also if a volume has as many Z slices as X and Y, then tiling all the Z slices in a big XY texture atlas loses its efficiency.

Solution

Evaluate whether we can store all volume data as 3d arrays and 3d textures rather than 2d texture atlases on gpu. (Consider whether fuse operation can work, linear filtering on 3d texture lookups, etc.

toloudis commented 1 year ago

render-to-3d-texture may be a blocker for this. would we be able to fill the 3d texture via gpu?

toloudis commented 1 month ago

also does 3d texture lookup perform better or worse than the filtered 2d atlas lookups?