Actually it is no problem to encode rgba data in a volume.
The real problem is as it has already been noted, that polyvox is used for generating meshes from that volume instead of rendering it.
If you do not need real time rendering, you can use a polyvox volume and the polyvox raycast class to render each pixel on its own.
an example for storing rgba data in a volume:
Code:
struct MyRGBA
{
uint8_t r,g,b,a;
};
int xsize = 10;
int ysize = 10;
int zsize = 10;
PolyVox::Region reg(PolyVox::Vector3DInt32(0, 0, 0), PolyVox::Vector3DInt32(xsize, ysize, zsize));
PolyVox::SimpleVolume<MyRGBA> volume(reg);
volume.SetVoxelAt(3, 5, 1, {255, 0, 0, 0}); // set the voxel at position 3, 5, 1 to red