You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
There are many applications for cubemaps. Most often they are used for environment mapping, but also for texturing planets or displaying 360° panoramas. Compared to the use of equirectangular textures they are a significant improvement. Nevertheless, there are still unfavorable distortions that can be reduced significantly even with super simple methods. The goal is a more uniform distribution and use of the input data and the associated gain in display quality.
My question is: Why aren't they used more often?
Maybe you just missed the tool to create these better alternatives. Therfor, in addition to regular cubemaps, kubi allows to generate two optimized mappings:
Both transforms are univariate and therefore very easy to implement. They both significantly reduce the distortion of the cubemap and thus optimize the pixel yield. However, support in other tools and libraries is (still) rather scarce.
error
ltr: regular cubemap, EAC, OTC
area
distance
To ensure the correct representation of a transformed cubemap, the reverse transformation must be performed at some point. The following example shows this for the OTC transformation in a fragment shader.
//FRAGMENT SHADER for OTCvec3 n = vNormal.xyz; // or vPosition
n /=max(max(abs(n.x),abs(n.y)),abs(n.z));
n =atan(n *tan(0.8687));
gl_FragColor=textureCube(otcSampler, n);
(This copies a section of the README.md that allows to link directly without an anchor - I'm looking at you hackernews ;-)
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
-
There are many applications for cubemaps. Most often they are used for environment mapping, but also for texturing planets or displaying 360° panoramas. Compared to the use of equirectangular textures they are a significant improvement. Nevertheless, there are still unfavorable distortions that can be reduced significantly even with super simple methods. The goal is a more uniform distribution and use of the input data and the associated gain in display quality.
My question is: Why aren't they used more often?
Maybe you just missed the tool to create these better alternatives. Therfor, in addition to regular cubemaps, kubi allows to generate two optimized mappings:
C.Brown (2017): Bringing pixels front and center in VR video
M.Zucker & Y.Higashi (2018): Cube-to-sphere Projections for Procedural Texturing and Beyond (Ch. 3.2 & Ch. 5)
Both transforms are univariate and therefore very easy to implement. They both significantly reduce the distortion of the cubemap and thus optimize the pixel yield. However, support in other tools and libraries is (still) rather scarce.
To ensure the correct representation of a transformed cubemap, the reverse transformation must be performed at some point. The following example shows this for the OTC transformation in a fragment shader.
(This copies a section of the README.md that allows to link directly without an anchor - I'm looking at you hackernews ;-)
Beta Was this translation helpful? Give feedback.
All reactions