Primitives: support texture coordinates and tangents in cubeSolid().
Well, guess why I was postponing this for so long, because there are way
too many combinations, then there's too many ways each variant can go
wrong, one has to document and test everything REAL GOOd and even then
it likely doesn't contain all variants people may want.
<texttransform="matrix(3.7795 0 0 3.7795 -295.82 -188.5)"x="90.929169"y="74.545097"dominant-baseline="auto"fill="#cd3431"font-size="4.2334px"stop-color="#000000"stroke-width=".26458"text-align="center"style="-inkscape-stroke:none;font-feature-settings:normal;font-variant-alternates:normal;font-variant-caps:normal;font-variant-east-asian:normal;font-variant-ligatures:normal;font-variant-numeric:normal;font-variant-position:normal;font-variation-settings:normal;line-height:1.25;text-decoration-color:#000000;text-decoration-line:none;text-decoration-style:solid;text-indent:0;text-orientation:mixed;text-transform:none;white-space:normal"xml:space="default"><tspanx="90.929169"y="74.545097"dominant-baseline="auto"fill="#cd3431"font-family="'Source Sans Pro'"font-size="4.2334px"stop-color="#000000"stroke-width=".26458"text-align="center"text-anchor="middle"style="-inkscape-stroke:none;font-feature-settings:normal;font-variant-alternates:normal;font-variant-caps:normal;font-variant-east-asian:normal;font-variant-ligatures:normal;font-variant-numeric:normal;font-variant-position:normal;font-variation-settings:normal;inline-size:0;line-height:1.25;shape-margin:0;shape-padding:0;text-decoration-color:#000000;text-decoration-line:none;text-decoration-style:solid;text-indent:0;text-orientation:mixed;text-transform:none;white-space:normal">−X</tspan></text>
<texttransform="matrix(3.7795 0 0 3.7795 -255.96 -188.5)"x="90.929169"y="74.545097"dominant-baseline="auto"fill="#3bd267"font-size="4.2334px"stop-color="#000000"stroke-width=".26458"text-align="center"style="-inkscape-stroke:none;font-feature-settings:normal;font-variant-alternates:normal;font-variant-caps:normal;font-variant-east-asian:normal;font-variant-ligatures:normal;font-variant-numeric:normal;font-variant-position:normal;font-variation-settings:normal;line-height:1.25;text-decoration-color:#000000;text-decoration-line:none;text-decoration-style:solid;text-indent:0;text-orientation:mixed;text-transform:none;white-space:normal"xml:space="default"><tspanx="90.929169"y="74.545097"dominant-baseline="auto"fill="#3bd267"font-family="'Source Sans Pro'"font-size="4.2334px"stop-color="#000000"stroke-width=".26458"text-align="center"text-anchor="middle"style="-inkscape-stroke:none;font-feature-settings:normal;font-variant-alternates:normal;font-variant-caps:normal;font-variant-east-asian:normal;font-variant-ligatures:normal;font-variant-numeric:normal;font-variant-position:normal;font-variation-settings:normal;inline-size:0;line-height:1.25;shape-margin:0;shape-padding:0;text-decoration-color:#000000;text-decoration-line:none;text-decoration-style:solid;text-indent:0;text-orientation:mixed;text-transform:none;white-space:normal">−Y</tspan></text>
<texttransform="translate(-2.3651 -68.775)"x="130.15706"y="162.02304"dominant-baseline="auto"fill="#2f83cc"font-size="16px"stop-color="#000000"text-align="center"style="-inkscape-stroke:none;font-feature-settings:normal;font-variant-alternates:normal;font-variant-caps:normal;font-variant-east-asian:normal;font-variant-ligatures:normal;font-variant-numeric:normal;font-variant-position:normal;font-variation-settings:normal;line-height:1.25;text-decoration-color:#000000;text-decoration-line:none;text-decoration-style:solid;text-indent:0;text-orientation:mixed;text-transform:none;white-space:normal"xml:space="default"><tspanx="130.15706"y="162.02304"dominant-baseline="auto"fill="#2f83cc"font-family="'Source Sans Pro'"font-size="16px"stop-color="#000000"text-align="center"text-anchor="middle"style="-inkscape-stroke:none;font-feature-settings:normal;font-variant-alternates:normal;font-variant-caps:normal;font-variant-east-asian:normal;font-variant-ligatures:normal;font-variant-numeric:normal;font-variant-position:normal;font-variation-settings:normal;inline-size:0;line-height:1.25;shape-margin:0;shape-padding:0;text-decoration-color:#000000;text-decoration-line:none;text-decoration-style:solid;text-indent:0;text-orientation:mixed;text-transform:none;white-space:normal">−Z</tspan></text>
<gfont-size="4.2334px"stroke-width=".26458">
<texttransform="matrix(3.7795 0 0 3.7795 -215.96 -228.5)"x="90.929169"y="74.545097"dominant-baseline="auto"fill="#2f83cc"stop-color="#000000"text-align="center"style="-inkscape-stroke:none;font-feature-settings:normal;font-variant-alternates:normal;font-variant-caps:normal;font-variant-east-asian:normal;font-variant-ligatures:normal;font-variant-numeric:normal;font-variant-position:normal;font-variation-settings:normal;line-height:1.25;text-decoration-color:#000000;text-decoration-line:none;text-decoration-style:solid;text-indent:0;text-orientation:mixed;text-transform:none;white-space:normal"xml:space="default"><tspanx="90.929169"y="74.545097"dominant-baseline="auto"fill="#2f83cc"font-family="'Source Sans Pro'"font-size="4.2334px"stop-color="#000000"stroke-width=".26458"text-align="center"text-anchor="middle"style="-inkscape-stroke:none;font-feature-settings:normal;font-variant-alternates:normal;font-variant-caps:normal;font-variant-east-asian:normal;font-variant-ligatures:normal;font-variant-numeric:normal;font-variant-position:normal;font-variation-settings:normal;inline-size:0;line-height:1.25;shape-margin:0;shape-padding:0;text-decoration-color:#000000;text-decoration-line:none;text-decoration-style:solid;text-indent:0;text-orientation:mixed;text-transform:none;white-space:normal">+Z</tspan></text>
<texttransform="matrix(3.7795 0 0 3.7795 -295.6 -228.5)"x="90.929169"y="74.545097"dominant-baseline="auto"fill="#cd3431"stop-color="#000000"text-align="center"style="-inkscape-stroke:none;font-feature-settings:normal;font-variant-alternates:normal;font-variant-caps:normal;font-variant-east-asian:normal;font-variant-ligatures:normal;font-variant-numeric:normal;font-variant-position:normal;font-variation-settings:normal;line-height:1.25;text-decoration-color:#000000;text-decoration-line:none;text-decoration-style:solid;text-indent:0;text-orientation:mixed;text-transform:none;white-space:normal"xml:space="default"><tspanx="90.929169"y="74.545097"dominant-baseline="auto"fill="#cd3431"font-family="'Source Sans Pro'"font-size="4.2334px"stop-color="#000000"stroke-width=".26458"text-align="center"text-anchor="middle"style="-inkscape-stroke:none;font-feature-settings:normal;font-variant-alternates:normal;font-variant-caps:normal;font-variant-east-asian:normal;font-variant-ligatures:normal;font-variant-numeric:normal;font-variant-position:normal;font-variation-settings:normal;inline-size:0;line-height:1.25;shape-margin:0;shape-padding:0;text-decoration-color:#000000;text-decoration-line:none;text-decoration-style:solid;text-indent:0;text-orientation:mixed;text-transform:none;white-space:normal">+X</tspan></text>
<texttransform="matrix(3.7795 0 0 3.7795 -255.66 -228.5)"x="90.929169"y="74.545097"dominant-baseline="auto"fill="#3bd267"stop-color="#000000"text-align="center"style="-inkscape-stroke:none;font-feature-settings:normal;font-variant-alternates:normal;font-variant-caps:normal;font-variant-east-asian:normal;font-variant-ligatures:normal;font-variant-numeric:normal;font-variant-position:normal;font-variation-settings:normal;line-height:1.25;text-decoration-color:#000000;text-decoration-line:none;text-decoration-style:solid;text-indent:0;text-orientation:mixed;text-transform:none;white-space:normal"xml:space="default"><tspanx="90.929169"y="74.545097"dominant-baseline="auto"fill="#3bd267"font-family="'Source Sans Pro'"font-size="4.2334px"stop-color="#000000"stroke-width=".26458"text-align="center"text-anchor="middle"style="-inkscape-stroke:none;font-feature-settings:normal;font-variant-alternates:normal;font-variant-caps:normal;font-variant-east-asian:normal;font-variant-ligatures:normal;font-variant-numeric:normal;font-variant-position:normal;font-variation-settings:normal;inline-size:0;line-height:1.25;shape-margin:0;shape-padding:0;text-decoration-color:#000000;text-decoration-line:none;text-decoration-style:solid;text-indent:0;text-orientation:mixed;text-transform:none;white-space:normal">+Y</tspan></text>
<texttransform="matrix(3.7795 0 0 3.7795 -293.45 -119.72)"x="90.929169"y="74.545097"dominant-baseline="auto"fill="#cd3431"font-size="4.2334px"stop-color="#000000"stroke-width=".26458"text-align="center"style="-inkscape-stroke:none;font-feature-settings:normal;font-variant-alternates:normal;font-variant-caps:normal;font-variant-east-asian:normal;font-variant-ligatures:normal;font-variant-numeric:normal;font-variant-position:normal;font-variation-settings:normal;line-height:1.25;text-decoration-color:#000000;text-decoration-line:none;text-decoration-style:solid;text-indent:0;text-orientation:mixed;text-transform:none;white-space:normal"xml:space="default"><tspanx="90.929169"y="74.545097"dominant-baseline="auto"fill="#cd3431"font-family="'Source Sans Pro'"font-size="4.2334px"stop-color="#000000"stroke-width=".26458"text-align="center"text-anchor="middle"style="-inkscape-stroke:none;font-feature-settings:normal;font-variant-alternates:normal;font-variant-caps:normal;font-variant-east-asian:normal;font-variant-ligatures:normal;font-variant-numeric:normal;font-variant-position:normal;font-variation-settings:normal;inline-size:0;line-height:1.25;shape-margin:0;shape-padding:0;text-decoration-color:#000000;text-decoration-line:none;text-decoration-style:solid;text-indent:0;text-orientation:mixed;text-transform:none;white-space:normal">−X</tspan></text>
<texttransform="matrix(3.7795 0 0 3.7795 -253.59 -119.72)"x="90.929169"y="74.545097"dominant-baseline="auto"fill="#3bd267"font-size="4.2334px"stop-color="#000000"stroke-width=".26458"text-align="center"style="-inkscape-stroke:none;font-feature-settings:normal;font-variant-alternates:normal;font-variant-caps:normal;font-variant-east-asian:normal;font-variant-ligatures:normal;font-variant-numeric:normal;font-variant-position:normal;font-variation-settings:normal;line-height:1.25;text-decoration-color:#000000;text-decoration-line:none;text-decoration-style:solid;text-indent:0;text-orientation:mixed;text-transform:none;white-space:normal"xml:space="default"><tspanx="90.929169"y="74.545097"dominant-baseline="auto"fill="#3bd267"font-family="'Source Sans Pro'"font-size="4.2334px"stop-color="#000000"stroke-width=".26458"text-align="center"text-anchor="middle"style="-inkscape-stroke:none;font-feature-settings:normal;font-variant-alternates:normal;font-variant-caps:normal;font-variant-east-asian:normal;font-variant-ligatures:normal;font-variant-numeric:normal;font-variant-position:normal;font-variation-settings:normal;inline-size:0;line-height:1.25;shape-margin:0;shape-padding:0;text-decoration-color:#000000;text-decoration-line:none;text-decoration-style:solid;text-indent:0;text-orientation:mixed;text-transform:none;white-space:normal">−Y</tspan></text>
<textx="130.15706"y="162.02304"dominant-baseline="auto"fill="#2f83cc"font-size="16px"stop-color="#000000"text-align="center"style="-inkscape-stroke:none;font-feature-settings:normal;font-variant-alternates:normal;font-variant-caps:normal;font-variant-east-asian:normal;font-variant-ligatures:normal;font-variant-numeric:normal;font-variant-position:normal;font-variation-settings:normal;line-height:1.25;text-decoration-color:#000000;text-decoration-line:none;text-decoration-style:solid;text-indent:0;text-orientation:mixed;text-transform:none;white-space:normal"xml:space="default"><tspanx="130.15706"y="162.02304"dominant-baseline="auto"fill="#2f83cc"font-family="'Source Sans Pro'"font-size="16px"stop-color="#000000"text-align="center"text-anchor="middle"style="-inkscape-stroke:none;font-feature-settings:normal;font-variant-alternates:normal;font-variant-caps:normal;font-variant-east-asian:normal;font-variant-ligatures:normal;font-variant-numeric:normal;font-variant-position:normal;font-variation-settings:normal;inline-size:0;line-height:1.25;shape-margin:0;shape-padding:0;text-decoration-color:#000000;text-decoration-line:none;text-decoration-style:solid;text-indent:0;text-orientation:mixed;text-transform:none;white-space:normal">−Z</tspan></text>
<gfont-size="4.2334px"stroke-width=".26458">
<texttransform="matrix(3.7795 0 0 3.7795 -213.59 -159.72)"x="90.929169"y="74.545097"dominant-baseline="auto"fill="#2f83cc"stop-color="#000000"text-align="center"style="-inkscape-stroke:none;font-feature-settings:normal;font-variant-alternates:normal;font-variant-caps:normal;font-variant-east-asian:normal;font-variant-ligatures:normal;font-variant-numeric:normal;font-variant-position:normal;font-variation-settings:normal;line-height:1.25;text-decoration-color:#000000;text-decoration-line:none;text-decoration-style:solid;text-indent:0;text-orientation:mixed;text-transform:none;white-space:normal"xml:space="default"><tspanx="90.929169"y="74.545097"dominant-baseline="auto"fill="#2f83cc"font-family="'Source Sans Pro'"font-size="4.2334px"stop-color="#000000"stroke-width=".26458"text-align="center"text-anchor="middle"style="-inkscape-stroke:none;font-feature-settings:normal;font-variant-alternates:normal;font-variant-caps:normal;font-variant-east-asian:normal;font-variant-ligatures:normal;font-variant-numeric:normal;font-variant-position:normal;font-variation-settings:normal;inline-size:0;line-height:1.25;shape-margin:0;shape-padding:0;text-decoration-color:#000000;text-decoration-line:none;text-decoration-style:solid;text-indent:0;text-orientation:mixed;text-transform:none;white-space:normal">+Z</tspan></text>
<texttransform="matrix(3.7795 0 0 3.7795 -293.24 -159.72)"x="90.929169"y="74.545097"dominant-baseline="auto"fill="#cd3431"stop-color="#000000"text-align="center"style="-inkscape-stroke:none;font-feature-settings:normal;font-variant-alternates:normal;font-variant-caps:normal;font-variant-east-asian:normal;font-variant-ligatures:normal;font-variant-numeric:normal;font-variant-position:normal;font-variation-settings:normal;line-height:1.25;text-decoration-color:#000000;text-decoration-line:none;text-decoration-style:solid;text-indent:0;text-orientation:mixed;text-transform:none;white-space:normal"xml:space="default"><tspanx="90.929169"y="74.545097"dominant-baseline="auto"fill="#cd3431"font-family="'Source Sans Pro'"font-size="4.2334px"stop-color="#000000"stroke-width=".26458"text-align="center"text-anchor="middle"style="-inkscape-stroke:none;font-feature-settings:normal;font-variant-alternates:normal;font-variant-caps:normal;font-variant-east-asian:normal;font-variant-ligatures:normal;font-variant-numeric:normal;font-variant-position:normal;font-variation-settings:normal;inline-size:0;line-height:1.25;shape-margin:0;shape-padding:0;text-decoration-color:#000000;text-decoration-line:none;text-decoration-style:solid;text-indent:0;text-orientation:mixed;text-transform:none;white-space:normal">+X</tspan></text>
<texttransform="matrix(3.7795 0 0 3.7795 -253.29 -159.72)"x="90.929169"y="74.545097"dominant-baseline="auto"fill="#3bd267"stop-color="#000000"text-align="center"style="-inkscape-stroke:none;font-feature-settings:normal;font-variant-alternates:normal;font-variant-caps:normal;font-variant-east-asian:normal;font-variant-ligatures:normal;font-variant-numeric:normal;font-variant-position:normal;font-variation-settings:normal;line-height:1.25;text-decoration-color:#000000;text-decoration-line:none;text-decoration-style:solid;text-indent:0;text-orientation:mixed;text-transform:none;white-space:normal"xml:space="default"><tspanx="90.929169"y="74.545097"dominant-baseline="auto"fill="#3bd267"font-family="'Source Sans Pro'"font-size="4.2334px"stop-color="#000000"stroke-width=".26458"text-align="center"text-anchor="middle"style="-inkscape-stroke:none;font-feature-settings:normal;font-variant-alternates:normal;font-variant-caps:normal;font-variant-east-asian:normal;font-variant-ligatures:normal;font-variant-numeric:normal;font-variant-position:normal;font-variation-settings:normal;inline-size:0;line-height:1.25;shape-margin:0;shape-padding:0;text-decoration-color:#000000;text-decoration-line:none;text-decoration-style:solid;text-indent:0;text-orientation:mixed;text-transform:none;white-space:normal">+Y</tspan></text>