1 #include "detaillevels.h" 2 3 DETAIL_LEVELS LocalDetailLevels; 4 MENU_DETAIL_LEVEL_OPTIONS MenuDetailLevelOptions; 5 6 extern int GlobalLevelOfDetail_Hierarchical; 7 8 SetToDefaultDetailLevels(void)9extern void SetToDefaultDetailLevels(void) 10 { 11 #if 0 12 LocalDetailLevels.BloodCollidesWithEnvironment=1; 13 LocalDetailLevels.DrawLightCoronas=1; 14 LocalDetailLevels.DrawHierarchicalDecals=1; 15 LocalDetailLevels.ExplosionsDeformToEnvironment=1; 16 LocalDetailLevels.GhostFlameThrowerCollisions=0; 17 18 LocalDetailLevels.MaximumAllowedNumberOfDecals = 1024; 19 LocalDetailLevels.AlienEnergyViewThreshold = 0; 20 LocalDetailLevels.NumberOfSmokeParticlesFromLargeExplosion=10; 21 LocalDetailLevels.NumberOfSmokeParticlesFromSmallExplosion=5; 22 23 GlobalLevelOfDetail_Hierarchical = 65536; 24 #endif 25 26 MenuDetailLevelOptions.DecalNumber = 3; 27 MenuDetailLevelOptions.LightCoronas = 1; 28 MenuDetailLevelOptions.DecalsOnCharacters = 1; 29 MenuDetailLevelOptions.DeformableExplosions = 1; 30 MenuDetailLevelOptions.CharacterComplexity = 3; 31 MenuDetailLevelOptions.ParticleComplexity = 1; 32 SetDetailLevelsFromMenu(); 33 } 34 SetToMinimalDetailLevels(void)35extern void SetToMinimalDetailLevels(void) 36 { 37 #if 0 38 LocalDetailLevels.BloodCollidesWithEnvironment=0; 39 LocalDetailLevels.DrawLightCoronas=0; 40 LocalDetailLevels.DrawHierarchicalDecals=0; 41 LocalDetailLevels.ExplosionsDeformToEnvironment=0; 42 LocalDetailLevels.GhostFlameThrowerCollisions=0; 43 44 LocalDetailLevels.MaximumAllowedNumberOfDecals = 16; 45 LocalDetailLevels.AlienEnergyViewThreshold = 450; 46 LocalDetailLevels.NumberOfSmokeParticlesFromLargeExplosion=5; 47 LocalDetailLevels.NumberOfSmokeParticlesFromSmallExplosion=2; 48 49 GlobalLevelOfDetail_Hierarchical = 128*65536; 50 #endif 51 52 MenuDetailLevelOptions.DecalNumber = 0; 53 MenuDetailLevelOptions.LightCoronas = 0; 54 MenuDetailLevelOptions.DecalsOnCharacters = 0; 55 MenuDetailLevelOptions.DeformableExplosions = 0; 56 MenuDetailLevelOptions.CharacterComplexity = 0; 57 MenuDetailLevelOptions.ParticleComplexity = 0; 58 SetDetailLevelsFromMenu(); 59 } 60 61 SetDetailLevelsFromMenu(void)62extern void SetDetailLevelsFromMenu(void) 63 { 64 switch (MenuDetailLevelOptions.DecalNumber) 65 { 66 default: 67 case 0: 68 { 69 LocalDetailLevels.MaximumAllowedNumberOfDecals = 16; 70 break; 71 } 72 case 1: 73 { 74 LocalDetailLevels.MaximumAllowedNumberOfDecals = 128; 75 break; 76 } 77 case 2: 78 { 79 LocalDetailLevels.MaximumAllowedNumberOfDecals = 512; 80 break; 81 } 82 case 3: 83 { 84 LocalDetailLevels.MaximumAllowedNumberOfDecals = 1024; 85 break; 86 } 87 } 88 89 LocalDetailLevels.DrawLightCoronas = MenuDetailLevelOptions.LightCoronas; 90 LocalDetailLevels.DrawHierarchicalDecals = MenuDetailLevelOptions.DecalsOnCharacters; 91 LocalDetailLevels.ExplosionsDeformToEnvironment = MenuDetailLevelOptions.DeformableExplosions; 92 93 switch (MenuDetailLevelOptions.CharacterComplexity) 94 { 95 default: 96 case 0: 97 { 98 GlobalLevelOfDetail_Hierarchical = 65536*128; 99 break; 100 } 101 case 1: 102 { 103 GlobalLevelOfDetail_Hierarchical = 65536*4; 104 break; 105 } 106 case 2: 107 { 108 GlobalLevelOfDetail_Hierarchical = 65536*2; 109 break; 110 } 111 case 3: 112 { 113 GlobalLevelOfDetail_Hierarchical = 65536; 114 break; 115 } 116 } 117 118 switch (MenuDetailLevelOptions.ParticleComplexity) 119 { 120 default: 121 case 0: 122 { 123 LocalDetailLevels.BloodCollidesWithEnvironment=0; 124 LocalDetailLevels.AlienEnergyViewThreshold = 300; 125 LocalDetailLevels.NumberOfSmokeParticlesFromLargeExplosion=5; 126 LocalDetailLevels.NumberOfSmokeParticlesFromSmallExplosion=2; 127 LocalDetailLevels.GhostFlameThrowerCollisions=0; 128 break; 129 } 130 case 1: 131 { 132 LocalDetailLevels.BloodCollidesWithEnvironment=1; 133 LocalDetailLevels.AlienEnergyViewThreshold = 0; 134 LocalDetailLevels.NumberOfSmokeParticlesFromLargeExplosion=10; 135 LocalDetailLevels.NumberOfSmokeParticlesFromSmallExplosion=5; 136 LocalDetailLevels.GhostFlameThrowerCollisions=1; 137 break; 138 } 139 } 140 141 } 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163