Normals

In computer graphics, normals are vectors which indicate which direction a plain faces in 3-dimensional space. They allow the graphics engine to apply the proper light and shadow to the surface.
In Westwood's voxel engines, these surface normals are stored in lookup tables - large sets of X,Y,Z values for each normal, each assigned an index. Any given volumetric pixel in a .vxl format is assigned such an index, thus attaching the voxel to a normal and enabling the engine to light it properly.
Each .vxl file also has a "normals index". In this case, index doesn't refer to the index of an individual vector, but marks the "generation" of normals used - higher indices are used by later games and point at larger lookup-tables.
How each index is lit is determined by voxel.vpl.
Perfect Normals
Historically, the normal values for each normal index had been unknown to the community. While voxel editors existed and allowed changing the normal index of each voxel, what each normal index meant was largely based on experience, documentation and guesswork, and good-looking voxels were usually only achieved after many hours of trial-and-error normals painting by the modeler.
bglman's discovery of the normals values on April 28, 2004 revolutionized voxel- and normals editing by allowing asset creators to make informed decisions about which normal to choose, and by allowing tool creators to dramatically improve the quality of autonormal algorithms.
Normal lists
Index 1 Normals
| X | Y | Z |
|---|---|---|
| 0.549463 | -0.000183 | -0.835518 |
| 0.000144 | 0.549404 | -0.835557 |
| -0.549404 | -0.000068 | -0.835557 |
| 0.000106 | -0.549463 | -0.835518 |
| 0.949008 | 0.000316 | -0.315250 |
| -0.000186 | 0.948997 | -0.315284 |
| -0.948997 | 0.000318 | -0.315284 |
| -0.000447 | -0.949008 | -0.315250 |
| 0.950844 | -0.000279 | 0.309671 |
| 0.000202 | 0.950848 | 0.309657 |
| -0.950848 | -0.000070 | 0.309657 |
| 0.000147 | -0.950844 | 0.309671 |
| 0.552370 | -0.000011 | 0.833599 |
| 0.000020 | 0.552380 | 0.833592 |
| -0.552380 | 0.000057 | 0.833593 |
| -0.000066 | -0.552370 | 0.833599 |
Index 2 Normals (Tiberian Sun)
| X | Y | Z |
|---|---|---|
| 0.671214 | 0.198492 | -0.714194 |
| 0.269643 | 0.584394 | -0.765360 |
| -0.040546 | 0.096988 | -0.994459 |
| -0.572428 | -0.091914 | -0.814787 |
| -0.171401 | -0.572710 | -0.801639 |
| 0.362557 | -0.302999 | -0.881331 |
| 0.810347 | -0.348972 | -0.470698 |
| 0.103962 | 0.938672 | -0.328767 |
| -0.324047 | 0.587669 | -0.741376 |
| -0.800865 | 0.340461 | -0.492647 |
| -0.665498 | -0.590147 | -0.456989 |
| 0.314767 | -0.803002 | -0.506073 |
| 0.972629 | 0.151076 | -0.176550 |
| 0.680291 | 0.684236 | -0.262727 |
| -0.520079 | 0.827777 | -0.210483 |
| -0.961644 | -0.179001 | -0.207847 |
| -0.262714 | -0.937451 | -0.228401 |
| 0.219707 | -0.971301 | 0.091125 |
| 0.923808 | -0.229975 | 0.306087 |
| -0.082489 | 0.970660 | 0.225866 |
| -0.591798 | 0.696790 | 0.405289 |
| -0.925296 | 0.366601 | 0.097111 |
| -0.705051 | -0.687775 | 0.172828 |
| 0.732400 | -0.680367 | -0.026305 |
| 0.855162 | 0.374582 | 0.358311 |
| 0.473006 | 0.836480 | 0.276705 |
| -0.097617 | 0.654112 | 0.750072 |
| -0.904124 | -0.153725 | 0.398658 |
| -0.211916 | -0.858090 | 0.467732 |
| 0.500227 | -0.674408 | 0.543091 |
| 0.584539 | -0.110249 | 0.803841 |
| 0.437373 | 0.454644 | 0.775889 |
| -0.042441 | 0.083318 | 0.995619 |
| -0.596251 | 0.220132 | 0.772028 |
| -0.506455 | -0.396977 | 0.765449 |
| 0.070569 | -0.478474 | 0.875262 |
Index 3 Normals
| X | Y | Z |
|---|---|---|
| 0.456511 | -0.073968 | -0.886638 |
| 0.507694 | 0.385117 | -0.770670 |
| 0.095432 | 0.226664 | -0.969286 |
| -0.358766 | 0.543188 | -0.759101 |
| -0.361276 | 0.132995 | -0.922926 |
| -0.483117 | -0.324066 | -0.813375 |
| -0.018073 | -0.197559 | -0.980124 |
| 0.321100 | -0.501477 | -0.803378 |
| 0.799491 | 0.069616 | -0.596630 |
| 0.390971 | 0.771306 | -0.502224 |
| 0.080782 | 0.614490 | -0.784778 |
| -0.732750 | 0.411431 | -0.542035 |
| -0.735254 | 0.009102 | -0.677731 |
| -0.802494 | -0.394908 | -0.447271 |
| -0.134130 | -0.589155 | -0.796809 |
| 0.719553 | -0.376227 | -0.583693 |
| 0.966875 | 0.173593 | -0.187132 |
| 0.760831 | 0.519106 | -0.389443 |
| -0.114642 | 0.875519 | -0.469386 |
| -0.532367 | 0.768859 | -0.354177 |
| -0.962267 | 0.024977 | -0.270958 |
| -0.467387 | -0.721986 | -0.510182 |
| 0.058450 | -0.852354 | -0.519689 |
| 0.498233 | -0.743740 | -0.445663 |
| 0.939151 | -0.270245 | -0.212044 |
| 0.583932 | 0.809442 | -0.061857 |
| 0.183797 | 0.973228 | -0.138007 |
| -0.884355 | 0.452219 | -0.115822 |
| -0.943178 | -0.332067 | 0.012138 |
| -0.698440 | -0.706567 | -0.113772 |
| -0.228411 | -0.954706 | -0.190694 |
| 0.731564 | -0.675861 | -0.089588 |
| 0.969251 | 0.046804 | 0.241582 |
| 0.855647 | 0.503477 | 0.119916 |
| -0.251153 | 0.967947 | -0.000081 |
| -0.647795 | 0.756749 | 0.087712 |
| -0.969164 | 0.145194 | 0.199100 |
| -0.414793 | -0.888967 | 0.194126 |
| 0.250775 | -0.961178 | -0.115109 |
| 0.478629 | -0.842593 | 0.246883 |
| 0.890044 | -0.396142 | 0.225595 |
| 0.524051 | 0.762360 | 0.379707 |
| 0.119620 | 0.945482 | 0.302910 |
| -0.760850 | 0.490075 | 0.425362 |
| -0.869785 | -0.202150 | 0.450122 |
| -0.709467 | -0.602424 | 0.365707 |
| 0.019309 | -0.958871 | 0.283186 |
| 0.626113 | -0.564677 | 0.537701 |
| 0.769943 | -0.126663 | 0.625415 |
| 0.764191 | 0.350702 | 0.541314 |
| -0.001878 | 0.741367 | 0.671098 |
| -0.370880 | 0.818368 | 0.439001 |
| -0.713909 | 0.128652 | 0.688318 |
| -0.295165 | -0.738664 | 0.606014 |
| 0.186195 | -0.738369 | 0.648184 |
| 0.387523 | -0.358783 | 0.849176 |
| 0.481022 | 0.124846 | 0.867774 |
| 0.391808 | 0.545056 | 0.741216 |
| -0.003536 | 0.365598 | 0.930766 |
| -0.420498 | 0.484961 | 0.766808 |
| -0.354903 | 0.019470 | 0.934700 |
| -0.547837 | -0.359208 | 0.755543 |
| -0.106662 | -0.445115 | 0.889098 |
| 0.086796 | -0.059307 | 0.994459 |
Index 4 Normals (Red Alert 2)
| X | Y | Z |
|---|---|---|
| 0.526578 | -0.359621 | -0.770317 |
| 0.150482 | 0.435984 | 0.887284 |
| 0.414195 | 0.738255 | -0.532374 |
| 0.075152 | 0.916249 | -0.393498 |
| -0.316149 | 0.930736 | -0.183793 |
| -0.773819 | 0.623334 | -0.112510 |
| -0.900842 | 0.428537 | -0.069568 |
| -0.998942 | -0.010971 | 0.044665 |
| -0.979761 | -0.157670 | -0.123324 |
| -0.911274 | -0.362371 | -0.195620 |
| -0.624069 | -0.720941 | -0.301301 |
| -0.310173 | -0.809345 | -0.498752 |
| 0.146613 | -0.815819 | -0.559414 |
| -0.716516 | -0.694356 | -0.066888 |
| 0.503972 | -0.114202 | -0.856137 |
| 0.455491 | 0.872627 | -0.176211 |
| -0.005010 | -0.114373 | -0.993425 |
| -0.104675 | -0.327701 | -0.938965 |
| 0.560412 | 0.752589 | -0.345756 |
| -0.060576 | 0.821628 | -0.566796 |
| -0.302341 | 0.797007 | -0.522847 |
| -0.671543 | 0.670740 | -0.314863 |
| -0.778401 | -0.128357 | 0.614505 |
| -0.924050 | 0.278382 | -0.261985 |
| -0.699773 | -0.550491 | -0.455278 |
| -0.568248 | -0.517189 | -0.640008 |
| 0.054098 | -0.932864 | -0.356143 |
| 0.758382 | 0.572893 | -0.310888 |
| 0.003620 | 0.305026 | -0.952337 |
| -0.060850 | -0.986886 | -0.149511 |
| 0.635230 | 0.045478 | -0.770983 |
| 0.521705 | 0.241309 | -0.818287 |
| 0.269404 | 0.635425 | -0.723641 |
| 0.045676 | 0.672754 | -0.738455 |
| -0.180511 | 0.674657 | -0.715719 |
| -0.397131 | 0.636640 | -0.661042 |
| -0.552004 | 0.472515 | -0.687038 |
| -0.772170 | 0.083090 | -0.629960 |
| -0.669819 | -0.119533 | -0.732840 |
| -0.540455 | -0.318444 | -0.778782 |
| -0.386135 | -0.522789 | -0.759994 |
| -0.261466 | -0.688567 | -0.676395 |
| -0.019412 | -0.696103 | -0.717680 |
| 0.303569 | -0.481844 | -0.821993 |
| 0.681939 | -0.195129 | -0.704900 |
| -0.244889 | -0.116562 | -0.962519 |
| 0.800759 | -0.022979 | -0.598546 |
| -0.370275 | 0.095584 | -0.923991 |
| -0.330671 | -0.326578 | -0.885440 |
| -0.163220 | -0.527579 | -0.833679 |
| 0.126390 | -0.313146 | -0.941257 |
| 0.349548 | -0.272226 | -0.896498 |
| 0.239918 | -0.085825 | -0.966992 |
| 0.390845 | 0.081537 | -0.916838 |
| 0.255267 | 0.268697 | -0.928785 |
| 0.146245 | 0.480438 | -0.864749 |
| -0.326016 | 0.478456 | -0.815349 |
| -0.469682 | -0.112519 | -0.875636 |
| 0.818440 | -0.258520 | -0.513151 |
| -0.474318 | 0.292238 | -0.830433 |
| 0.778943 | 0.395842 | -0.486371 |
| 0.624094 | 0.393773 | -0.674870 |
| 0.740886 | 0.203834 | -0.639953 |
| 0.480217 | 0.565768 | -0.670297 |
| 0.380930 | 0.424535 | -0.821378 |
| -0.093422 | 0.501124 | -0.860318 |
| -0.236485 | 0.296198 | -0.925387 |
| -0.131531 | 0.093959 | -0.986849 |
| -0.823562 | 0.295777 | -0.484006 |
| 0.611066 | -0.624304 | -0.486664 |
| 0.069496 | -0.520330 | -0.851133 |
| 0.226522 | -0.664879 | -0.711775 |
| 0.471308 | -0.568904 | -0.673957 |
| 0.388425 | -0.742624 | -0.545560 |
| 0.783675 | -0.480729 | -0.393385 |
| 0.962394 | 0.135676 | -0.235349 |
| 0.876607 | 0.172034 | -0.449406 |
| 0.633405 | 0.589793 | -0.500941 |
| 0.182276 | 0.800658 | -0.570721 |
| 0.177003 | 0.764134 | 0.620297 |
| -0.544016 | 0.675515 | -0.497721 |
| -0.679297 | 0.286467 | -0.675642 |
| -0.590391 | 0.091369 | -0.801929 |
| -0.824360 | -0.133124 | -0.550189 |
| -0.715794 | -0.334542 | -0.612961 |
| 0.174286 | -0.892484 | 0.416049 |
| -0.082528 | -0.837123 | -0.540753 |
| 0.283331 | -0.880874 | -0.379189 |
| 0.675134 | -0.426627 | -0.601817 |
| 0.843720 | -0.512335 | -0.160156 |
| 0.977304 | -0.098556 | -0.187520 |
| 0.846295 | 0.522672 | -0.102947 |
| 0.677141 | 0.721325 | -0.145501 |
| 0.320965 | 0.870892 | -0.372194 |
| -0.178978 | 0.911533 | -0.370236 |
| -0.447169 | 0.826701 | -0.341474 |
| -0.703203 | 0.496328 | -0.509081 |
| -0.977181 | 0.063563 | -0.202674 |
| -0.878170 | -0.412938 | 0.241455 |
| -0.835831 | -0.358550 | -0.415728 |
| -0.499174 | -0.693433 | -0.519592 |
| -0.188789 | -0.923753 | -0.333225 |
| 0.192254 | -0.969361 | -0.152896 |
| 0.515940 | -0.783907 | -0.345392 |
| 0.905925 | -0.300952 | -0.297871 |
| 0.991112 | -0.127746 | 0.037107 |
| 0.995135 | 0.098424 | -0.004383 |
| 0.760123 | 0.646277 | 0.067367 |
| 0.205221 | 0.959580 | -0.192591 |
| -0.042750 | 0.979513 | -0.196791 |
| -0.438017 | 0.898927 | 0.008492 |
| -0.821994 | 0.480785 | -0.305239 |
| -0.899917 | 0.081710 | -0.428337 |
| -0.926612 | -0.144618 | -0.347096 |
| -0.793660 | -0.557792 | -0.242839 |
| -0.431350 | -0.847779 | -0.308558 |
| -0.005492 | -0.965000 | 0.262193 |
| 0.587905 | -0.804026 | -0.088940 |
| 0.699493 | -0.667686 | -0.254765 |
| 0.889303 | 0.359795 | -0.282291 |
| 0.780972 | 0.197037 | 0.592672 |
| 0.520121 | 0.506696 | 0.687557 |
| 0.403895 | 0.693961 | 0.596060 |
| -0.154983 | 0.899236 | 0.409090 |
| -0.657338 | 0.537168 | 0.528543 |
| -0.746195 | 0.334091 | 0.575827 |
| -0.624952 | -0.049144 | 0.779115 |
| 0.318141 | -0.254715 | 0.913185 |
| -0.555897 | 0.405294 | 0.725752 |
| -0.794434 | 0.099406 | 0.599160 |
| -0.640361 | -0.689463 | 0.338495 |
| -0.126713 | -0.734095 | 0.667120 |
| 0.105457 | -0.780817 | 0.615795 |
| 0.407993 | -0.480916 | 0.776055 |
| 0.695136 | -0.545120 | 0.468647 |
| 0.973191 | -0.006489 | 0.229908 |
| 0.946894 | 0.317509 | -0.050799 |
| 0.563583 | 0.825612 | 0.027183 |
| 0.325773 | 0.945423 | 0.006949 |
| -0.171821 | 0.985097 | -0.007815 |
| -0.670441 | 0.739939 | 0.054769 |
| -0.822981 | 0.554962 | 0.121322 |
| -0.966193 | 0.117857 | 0.229307 |
| -0.953769 | -0.294704 | 0.058945 |
| -0.864387 | -0.502728 | -0.010015 |
| -0.530609 | -0.842006 | -0.097366 |
| -0.162618 | -0.984075 | 0.071772 |
| 0.081447 | -0.996011 | 0.036439 |
| 0.745984 | -0.665963 | 0.000762 |
| 0.942057 | -0.329269 | -0.064106 |
| 0.939702 | -0.281090 | 0.194803 |
| 0.771214 | 0.550670 | 0.319363 |
| 0.641348 | 0.730690 | 0.234021 |
| 0.080682 | 0.996691 | 0.009879 |
| -0.046725 | 0.976643 | 0.209725 |
| -0.531076 | 0.821001 | 0.209562 |
| -0.695815 | 0.655990 | 0.292435 |
| -0.976122 | 0.216709 | -0.014913 |
| -0.961661 | -0.144129 | 0.233314 |
| -0.772084 | -0.613647 | 0.165299 |
| -0.449600 | -0.836060 | 0.314426 |
| -0.392700 | -0.914616 | 0.096247 |
| 0.390589 | -0.919470 | 0.044890 |
| 0.582529 | -0.799198 | 0.148127 |
| 0.866431 | -0.489812 | 0.096864 |
| 0.904587 | 0.111498 | 0.411450 |
| 0.953537 | 0.232330 | 0.191806 |
| 0.497311 | 0.770803 | 0.398177 |
| 0.194066 | 0.956320 | 0.218611 |
| 0.422876 | 0.882276 | 0.206797 |
| -0.373797 | 0.849566 | 0.372174 |
| -0.534497 | 0.714023 | 0.452200 |
| -0.881827 | 0.237160 | 0.407598 |
| -0.904948 | -0.014069 | 0.425289 |
| -0.751827 | -0.512817 | 0.414458 |
| -0.501015 | -0.697917 | 0.511758 |
| -0.235190 | -0.925923 | 0.295555 |
| 0.228983 | -0.953940 | 0.193819 |
| 0.734025 | -0.634898 | 0.241062 |
| 0.913753 | -0.063253 | -0.401316 |
| 0.905735 | -0.161487 | 0.391875 |
| 0.858930 | 0.342446 | 0.380749 |
| 0.624486 | 0.607581 | 0.490777 |
| 0.289264 | 0.857479 | 0.425508 |
| 0.069968 | 0.902169 | 0.425671 |
| -0.286180 | 0.940700 | 0.182165 |
| -0.574013 | 0.805119 | -0.149309 |
| 0.111258 | 0.099718 | -0.988776 |
| -0.305393 | -0.944228 | -0.123160 |
| -0.601166 | -0.789576 | 0.123163 |
| -0.290645 | -0.812140 | 0.505919 |
| -0.064920 | -0.877163 | 0.475785 |
| 0.408301 | -0.862216 | 0.299789 |
| 0.566097 | -0.725566 | 0.391264 |
| 0.839364 | -0.427387 | 0.335869 |
| 0.818900 | -0.041305 | 0.572448 |
| 0.719784 | 0.414997 | 0.556497 |
| 0.881744 | 0.450270 | 0.140659 |
| 0.401823 | -0.898220 | -0.178152 |
| -0.054020 | 0.791344 | 0.608980 |
| -0.293774 | 0.763994 | 0.574465 |
| -0.450798 | 0.610347 | 0.651351 |
| -0.638221 | 0.186694 | 0.746873 |
| -0.872870 | -0.257127 | 0.414708 |
| -0.587257 | -0.521710 | 0.618828 |
| -0.353658 | -0.641974 | 0.680291 |
| 0.041649 | -0.611273 | 0.790323 |
| 0.348342 | -0.779183 | 0.521087 |
| 0.499167 | -0.622441 | 0.602826 |
| 0.790019 | -0.303831 | 0.532500 |
| 0.660118 | 0.060733 | 0.748702 |
| 0.604921 | 0.294161 | 0.739960 |
| 0.385697 | 0.379346 | 0.841032 |
| 0.239693 | 0.207876 | 0.948332 |
| 0.012623 | 0.258532 | 0.965920 |
| -0.100557 | 0.457147 | 0.883688 |
| 0.046967 | 0.628588 | 0.776319 |
| -0.430391 | -0.445405 | 0.785097 |
| -0.434291 | -0.196228 | 0.879139 |
| -0.256637 | -0.336867 | 0.905902 |
| -0.131372 | -0.158910 | 0.978514 |
| 0.102379 | -0.208767 | 0.972592 |
| 0.195687 | -0.450129 | 0.871258 |
| 0.627319 | -0.423148 | 0.653771 |
| 0.687439 | -0.171583 | 0.705682 |
| 0.275920 | -0.021255 | 0.960946 |
| 0.459367 | 0.157466 | 0.874178 |
| 0.285395 | 0.583184 | 0.760556 |
| -0.812174 | 0.460303 | 0.358461 |
| -0.189068 | 0.641223 | 0.743698 |
| -0.338875 | 0.476480 | 0.811252 |
| -0.920994 | 0.347186 | 0.176727 |
| 0.040639 | 0.024465 | 0.998874 |
| -0.739132 | -0.353747 | 0.573190 |
| -0.603512 | -0.286615 | 0.744060 |
| -0.188676 | -0.547059 | 0.815554 |
| -0.026045 | -0.397820 | 0.917094 |
| 0.267897 | -0.649041 | 0.712023 |
| 0.518246 | -0.284891 | 0.806386 |
| 0.493451 | -0.066533 | 0.867225 |
| -0.328188 | 0.140251 | 0.934143 |
| -0.328188 | 0.140251 | 0.934143 |
| -0.328188 | 0.140251 | 0.934143 |
| -0.328188 | 0.140251 | 0.934143 |