In one embodiment, method 2200 includes to perform an operation 2201 to receive a data set that represents a two-dimensional encoding of a three-dimensional video, where the three-dimensional video encoded as a point cloud. The three-dimensional video can be encoded as a three-dimensional point cloud which is then translated into a set of texture and geometry images, when can then be encoded using a two-dimensional video encoder. The received data set can be included in a bitstream output by the two-dimensional video encoder, where the bitstream includes texture data, geometry data, and metadata for the encoded video.
Method 2200 further includes to perform an operation 2202 to decode the two-dimensional data into texture data, geometry data, and metadata from the data set included in the bitstream. The texture data can be encoded in a variety of texture formats, including compressed texture formats. The geometry data can include two-dimensional geometry upon which texture data can be mapped. The geometry data can also include depth data. The metadata can include auxiliary patch information for various patches of texture and geometry data. The metadata can also include occupancy map data that indicates whether a sample position is occupied, such that the sample position has corresponding point cloud data.
Method 2200 additionally includes to perform an operation 2203 to determine, based on the metadata, a visibility status and an occupancy status for a sample position in the three-dimensional video. Operation 2203 can determine visibility by receiving a position and orientation associated with a display device used to view the video content, determining a projection plane associated with the sample position, and then determining the visibility of the projection plane from the position and orientation of the display device.