I have seen a bit of "photo realism" on Youtube and it is starting to look really good. I am not sure that current video technology is good enough to run it but what I have seen so far as recorded video of this new capacity has very good potential.
Hi Hutch,
I think this is an algorithmic solution - "virtualized micropolygon geometry system", brilliant optimization idea, if this technology can be combined with NVIDIA DLSS 2.0 (
https://www.youtube.com/watch?v=IMi3JpNBQeM), then it will raise the level of graphics to excellent quality

EVOLVING THE REAL-TIME GRAPHICS PIPELINE -
http://graphics.stanford.edu/~kayvonf/papers/kayvonf_dissertation.pdfNanite - Advances in Real-Time Rendering in 3D Graphics -
https://advances.realtimerendering.com/s2021/Karis_Nanite_SIGGRAPH_Advances_2021_final.pdfVirtual Geometry Textures - Chalmers Publication Library -
http://publications.lib.chalmers.se/records/fulltext/220583/220583.pdfVirtual Texture: A Large Area Raster Resource for the GPU -
https://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.534.7897&rep=rep1&type=pdfIt produces high quality images in real- time from very large textures using relatively little texture memory.
How can virtual texturing actually be efficient? -
https://computergraphics.stackexchange.com/questions/1768/how-can-virtual-texturing-actually-be-efficient/1773Sparse Virtual Texturing -
http://holger.dammertz.org/stuff/notes_VirtualTexturing.htmlTU Wien – Research Unit of Computer Graphics -
Albert Julian Mayer
Virtual Texturinghttps://www.cg.tuwien.ac.at/research/publications/2010/Mayer-2010-VT/Mayer-2010-VT-poster.pdfhttps://www.cg.tuwien.ac.at/research/publications/2010/Mayer-2010-VT/Mayer-2010-VT-Thesis.pdfSource Code - LibVT is a library implementing "virtual texturing" -
https://github.com/core-code/LibVT or
https://github.com/core-code/LibVT/archive/refs/heads/master.zipAbstract
Virtual texturing (as presented by Mittring in ’Advanced Virtual Texture Topics’ and in distinction to clipmap-style systems, to which this term is also applied) is a solution to the problem of real-time rendering of scenes with vast amounts of texture data which does not fit into graphics or main memory. Virtual texturing works by preprocessing the aggregate texture data into equally-sized tiles and determining the necessary tiles for rendering before each frame. These tiles are then streamed to the graphics card and rendering is performed with a special virtual texturing fragment shader that does texture coordinate adjustments to sample from the tile storage texture. A thorough description of virtual texturing and related topics is given, along with an examination of specific challenges including preprocessing, visible tile determination, texture filtering, tile importance metrics and many more. Tile determination in view space is examined in detail and an implementation for compressing the resulting buffer in OpenCL is presented. Rendering with correct texture filtering from a texture which contains de-correlated texture tiles is attained by using tile borders with specific coordinate adjustment and gradient correction in the fragment shader. A sample implementation is described and serves to provide results concerning performance and correctness with different settings and architecture choices. Integration into Open Scene Graph for usage within a hybrid point-cloud / polygonal renderer enables rendering of high resolution paintings within catacombs modeled with point clouds. Another application is presented, the real-time display of a highly detailed model of New York with more than 60 GB textures. Quantitative analysis reveals that frame-rates above 200 FPS are attainable on complex scenes with multi-million polygons even with outdated hardware. At the same time quality remains high, results indicate that ”fallbacks”, that occur when a needed texture tile is not ready in time, occur only for 0.01% of the pixels on average. These results show that virtual texturing can be a competitive solution for games, scientific and industrial applications, allowing for real-time rendering of scenes that could not be displayed previously, while maintaining acceptable visual quality.
Real-Time Texture Streaming Decompression -- decoding a JPEG-like format at high speed -
https://web.archive.org/web/20110807135532/http://software.intel.com/file/17248/Real-Time DXT Compression -- analayzes multiple possible strategies, argues for DXT5 YCoCg. Includes implementation -
https://web.archive.org/web/20091106184425/http://cache-www.intel.com/cd/00/00/32/43/324337_324337.pdfReal-Time YCoCg-DXT Compression -
https://web.archive.org/web/20080701122224/http://developer.download.nvidia.com/whitepapers/2007/Real-Time-YCoCg-DXT-Compression/Real-Time%20YCoCg-DXT%20Compression.pdfSparse Virtual Textures (C Language) -
https://silverspaceship.com/src/svt/ and
Demo source code, executable, text-file slides - Release 2 (9MB) -
https://silverspaceship.com/src/svt/svt.zipSparse Virtual Texturing is an approach to simulating very large textures using much less texture memory than they'd require in full by downloading only the data that is needed, and using a pixel shader to map from the virtual large texture to the actual physical texture.The technique could be used for very large textures, or simply for large quantities of smaller textures (by packing them into the large texture, or by using multiple page tables).
It was mostly inspired by John Carmack's descriptions of MegaTexturing in several public and private forums and emails. It may not be exactly the same as MegaTexture, but it's probably close.
Nanite - Advances in Real-Time Rendering in 3D Graphics -
https://advances.realtimerendering.com/s2021/Karis_Nanite_SIGGRAPH_Advances_2021_final.pdfVirtual Texturing in Software and Hardware -
https://mrelusive.com/publications/presentations/2012_siggraph/Virtual_Texturing_in_Software_and_Hardware_final.pdfVirtual Textures on iOS -
http://glampert.com/2014/11-09/virtual-textures-on-ios/Virtual Texture aka MegaTexture -
https://en.wikipedia.org/wiki/Id_Tech_4#MegaTexture_rendering_technologyxform-megatexture -
https://github.com/unitpoint/xform-megatextureSource Code (Visual Studio) -
https://github.com/unitpoint/xform-megatexture/archive/refs/heads/master.zipBin (Windows) -
https://github.com/unitpoint/xform-megatexture-bin/blob/master/xform-megatexture-bin.z01https://github.com/unitpoint/xform-megatexture-bin/blob/master/xform-megatexture-bin.zipRun bin\test.exe to start program.
Please note that megatexture file (textures\mega-8192.tga) takes 200 MB. The first run could spend some time to compile the megatexture file.