A computer-implemented method for direct multi-volume rendering, the method comprising: receiving 3D data specifying a three-dimensional scene comprising a plurality of volumes (110, 120, 130, 140) wherein each volume comprises a plurality of voxels (pv_n), wherein each voxel of a particular volume has a scalar value being the result of an imaging procedure for the measurement of a physical property of an imaging subject; generating, at a viewing position, a view multi-ray in the direction of a particular pixel of a projection image, the projection image being located between the viewing position and the scene, wherein the particular pixel has a value representing a projection of all scene voxels intersecting with the view multi-ray behind the projection image, the view multi-ray representing a plurality of individual view rays (21, 22, 23, 24) with the same starting point and the same direction wherein each individual view ray is associated with one of the volumes (110, 120, 130, 140) in the scene; using volume ray marching iterating at each ray marching step over all individual view rays for individually processing each view ray (21, 22, 23, 24) in its associated volume wherein ray marching steps for a respective view ray are only performed within the associated volume and, at each ray marching step, the scalar value of the corresponding voxel is mapped to a color value and a transparency value of said corresponding voxel; updating the value of the particular pixel in the projection image by combining the respective voxel color and transparency values of the individual view rays after each ray marching step, wherein updating with the values of a particular voxel intersecting with a particular view ray is performed after the updating with all intersecting voxel values of voxels closer to the viewing point than the particular voxel, wherein processing non-transparent voxels of overlapping volumes at a same location is performed in sync for the respective individual view rays; and performing the generating, processing and updating steps for not-yet-updated pixels of the projection image. receiving 3D data specifying a three-dimensional scene comprising a plurality of volumes (110, 120, 130, 140) wherein each volume comprises a plurality of voxels (pv_n), wherein each voxel of a particular volume has a scalar value being the result of an imaging procedure for the measurement of a physical property of an imaging subject; generating, at a viewing position, a view multi-ray in the direction of a particular pixel of a projection image, the projection image being located between the viewing position and the scene, wherein the particular pixel has a value representing a projection of all scene voxels intersecting with the view multi-ray behind the projection image, the view multi-ray representing a plurality of individual view rays (21, 22, 23, 24) with the same starting point and the same direction wherein each individual view ray is associated with one of the volumes (110, 120, 130, 140) in the scene; using volume ray marching iterating at each ray marching step over all individual view rays for individually processing each view ray (21, 22, 23, 24) in its associated volume wherein ray marching steps for a respective view ray are only performed within the associated volume and, at each ray marching step, the scalar value of the corresponding voxel is mapped to a color value and a transparency value of said corresponding voxel; updating the value of the particular pixel in the projection image by combining the respective voxel color and transparency values of the individual view rays after each ray marching step, wherein updating with the values of a particular voxel intersecting with a particular view ray is performed after the updating with all intersecting voxel values of voxels closer to the viewing point than the particular voxel, wherein processing non-transparent voxels of overlapping volumes at a same location is performed in sync for the respective individual view rays; and performing the generating, processing and updating steps for not-yet-updated pixels of the projection image.