ModEnc is currently in Maintenance Mode: Changes could occur at any given moment, without advance warning.

Normals

From ModEnc
Jump to navigation Jump to search
This article or section is a stub. You can help ModEnc by expanding it.


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

See also