Results 1 to 2 of 2
  1. #1
    Coders (+)_'s Avatar
    Join Date
    Jan 2010
    Location
    Earth
    Posts
    459

    Lightbulb Perfected COD4 model rec V1

    Perfected COD4 model rec V1. 95-98%
    -No missing body parts
    -No blending with other objects

    Also added a wall hack with some blending
    and transparency if you like.

    Credits:
    Uc assorted.

    Models.h
    Code:
    #define D3D_RELEASE(D3D_PTR) if( D3D_PTR ){ D3D_PTR->Release(); D3D_PTR = NULL; }
    
    #define Opforces ( Opfor_Assualt || Opfor_SpecOps || Opfor_Gunner || \
    				Opfor_Demolition || Opfor_Sniper )
    
    #define MarineSas ( MarineSas1_Assault || MarineSas1_SpecOps || MarineSas1_Gunner || \
    				MarineSas1_Demolition || Marine_Sniper )
    
    #define Spetznas ( Spetznas_Assault || Spetznas_SpecOps || Spetznas_Gunner || \
    				Spetznas_Demolition || Spetznas_Sniper || Spetznas_Sniper2 )
    
    #define Sas ( Sas_Assault || Sas_SpecOps || Sas_Gunner || Sas_Demo || \
    				Sas_Sniper1 || Sas_Sniper2 )
    
    #define Opfor_Assualt \
    ((NumVertices == 776  && PrimitiveCount == 1212 ) || \
    (NumVertices == 440  && PrimitiveCount == 616 ) || \
    (NumVertices == 1252  && PrimitiveCount == 1160 ) || \
    (NumVertices == 470  && PrimitiveCount == 352 ) || \
    (NumVertices == 202  && PrimitiveCount == 324 ) || \
    (NumVertices == 282  && PrimitiveCount == 376 ) || \
    (NumVertices == 125  && PrimitiveCount == 160 ) || \
    (NumVertices == 153  && PrimitiveCount == 190 ) || \
    (NumVertices == 3124 && PrimitiveCount == 4132 ) || \
    (NumVertices == 1970  && PrimitiveCount == 2186 ) || \
    ( NumVertices == 112 && PrimitiveCount == 96 ) || \
    ( NumVertices == 142 && PrimitiveCount == 132 ) || \
    ( NumVertices == 544 && PrimitiveCount == 696 ) || \
    ( NumVertices == 842 && PrimitiveCount == 1276 ) || \
    ( NumVertices == 780 && PrimitiveCount == 780 ) || \
    ( NumVertices == 151 && PrimitiveCount == 118 ))
    
    #define Opfor_SpecOps \
    ((NumVertices == 3531 && PrimitiveCount == 4526 ) || \
    (NumVertices == 2188 && PrimitiveCount == 2386 ) || \
    (NumVertices == 830 && PrimitiveCount == 1206 ) || \
    (NumVertices == 491 && PrimitiveCount == 700 ) || \
    (NumVertices == 90 && PrimitiveCount == 140 ) || \
    (NumVertices == 103 && PrimitiveCount == 130 ) || \
    (NumVertices == 1325 && PrimitiveCount == 1194 ) || \
    (NumVertices == 499 && PrimitiveCount == 352 ) || \
    ( NumVertices == 422 && PrimitiveCount == 584 ) || \
    ( NumVertices == 760 && PrimitiveCount == 1192 ) || \
    ( NumVertices == 504 && PrimitiveCount == 536 ) || \
    ( NumVertices == 174 && PrimitiveCount == 182 ))
    
    #define Opfor_Gunner \
    ((NumVertices == 251 && PrimitiveCount == 304 ) || \
    (NumVertices == 155 && PrimitiveCount == 138 ) || \
    (NumVertices == 2715 && PrimitiveCount == 3588 ) || \
    (NumVertices == 1620 && PrimitiveCount == 1886 ) || \
    (NumVertices == 928 && PrimitiveCount == 1392 ) || \
    (NumVertices == 602 && PrimitiveCount == 800 ) || \
    (NumVertices == 90 && PrimitiveCount == 140 ) || \
    (NumVertices == 943 && PrimitiveCount == 908 ) || \
    (NumVertices == 441 && PrimitiveCount == 308 ) || \
    ( NumVertices == 767 && PrimitiveCount == 1192 ) || \
    ( NumVertices == 429 && PrimitiveCount == 584 ) || \
    ( NumVertices == 119 && PrimitiveCount == 86 ) || \
    ( NumVertices == 622 && PrimitiveCount == 612 ))
    
    #define Opfor_Demolition \
    ((NumVertices == 2816 && PrimitiveCount == 3642 ) || \
    (NumVertices == 1773 && PrimitiveCount == 2022 ) || \
    (NumVertices == 808 && PrimitiveCount == 1220 ) || \
    (NumVertices == 540 && PrimitiveCount == 812 ) || \
    (NumVertices == 280 && PrimitiveCount == 376 ) || \
    (NumVertices == 152 && PrimitiveCount == 190 ) || \
    (NumVertices == 793 && PrimitiveCount == 796 ) || \
    (NumVertices == 486 && PrimitiveCount == 412 ) || \
    (NumVertices == 237 && PrimitiveCount == 216 ) || \
    (NumVertices == 95 && PrimitiveCount == 58 ) || \
    (NumVertices == 90 && PrimitiveCount == 140 ) || \
    (NumVertices == 1150 && PrimitiveCount == 1086 ) || \
    (NumVertices == 435 && PrimitiveCount == 320 ) || \
    ( NumVertices == 648 && PrimitiveCount == 744 ) || \
    ( NumVertices == 95 && PrimitiveCount == 94 ) || \
    ( NumVertices == 760 && PrimitiveCount == 1192 ) || \
    ( NumVertices == 422 && PrimitiveCount == 584 ))
    
    #define Opfor_Sniper \
    ((NumVertices == 90 && PrimitiveCount == 140 ) || \
    (NumVertices == 890  && PrimitiveCount == 1390 ) || \
    (NumVertices == 539  && PrimitiveCount == 760 ) || \
    (NumVertices == 52  && PrimitiveCount == 28 ) || \
    (NumVertices == 2818  && PrimitiveCount == 3672 ) || \
    (NumVertices == 1715  && PrimitiveCount == 1950 ) || \
    (NumVertices == 250  && PrimitiveCount == 304 ) || \
    (NumVertices == 281  && PrimitiveCount == 376 ) || \
    (NumVertices == 150  && PrimitiveCount == 142 ) || \
    (NumVertices == 153  && PrimitiveCount == 190 ) || \
    (NumVertices == 150  && PrimitiveCount == 142 ) || \
    (NumVertices == 1101  && PrimitiveCount == 1066 ) || \
    (NumVertices == 481  && PrimitiveCount == 350 ) || \
    ( NumVertices == 602 && PrimitiveCount == 692 ) || \
    ( NumVertices == 135 && PrimitiveCount == 116 ) || \
    ( NumVertices == 760 && PrimitiveCount == 1192 ) || \
    ( NumVertices == 422 && PrimitiveCount == 584 ))
    
    #define MarineSas1_Assault \
    ((NumVertices == 356 && PrimitiveCount == 262 ) || \
    (NumVertices == 686 && PrimitiveCount == 952 ) || \
    (NumVertices == 301 && PrimitiveCount == 192 ) || \
    (NumVertices == 568 && PrimitiveCount == 698 ) || \
    (NumVertices == 110 && PrimitiveCount == 122 ) || \
    (NumVertices == 66 && PrimitiveCount == 64 ) || \
    (NumVertices == 1001 && PrimitiveCount == 964 ) || \
    (NumVertices == 1092 && PrimitiveCount == 1402 ) || \
    (NumVertices == 552 && PrimitiveCount == 452 ) || \
    (NumVertices == 638 && PrimitiveCount == 738 ) || \
    (NumVertices == 1144 && PrimitiveCount == 814 ) || \
    (NumVertices == 2613 && PrimitiveCount == 3248 ) || \
    (NumVertices == 713 && PrimitiveCount == 496 ) || \
    (NumVertices == 1842 && PrimitiveCount == 1978 ) || \
    (NumVertices == 90 && PrimitiveCount == 140 ) || \
    (NumVertices == 34 && PrimitiveCount == 30 ) || \
    (NumVertices == 25 && PrimitiveCount == 22 ) || \
    (NumVertices == 385 && PrimitiveCount == 196 ) || \
    (NumVertices == 1034 && PrimitiveCount == 904 ) || \
    (NumVertices == 447 && PrimitiveCount == 312 ) || \
    ( NumVertices == 455 && PrimitiveCount == 448 ) || \
    ( NumVertices == 281 && PrimitiveCount == 220 ) || \
    ( NumVertices == 180 && PrimitiveCount == 118 ) || \
    ( NumVertices == 248 && PrimitiveCount == 176 ) || \
    ( NumVertices == 1021 && PrimitiveCount == 922 ) || \
    ( NumVertices == 114 && PrimitiveCount == 162 ) || \
    ( NumVertices == 151 && PrimitiveCount == 130 ) || \
    ( NumVertices == 28 && PrimitiveCount == 28 ))
    
    #define MarineSas1_SpecOps \
    ((NumVertices == 599 && PrimitiveCount == 418 ) || \
    (NumVertices == 855 && PrimitiveCount == 1100 ) || \
    (NumVertices == 296 && PrimitiveCount == 188 ) || \
    (NumVertices == 834 && PrimitiveCount == 770 ) || \
    (NumVertices == 233 && PrimitiveCount == 330 ) || \
    (NumVertices == 976 && PrimitiveCount == 1372 ) || \
    (NumVertices == 142 && PrimitiveCount == 174 ) || \
    (NumVertices == 513 && PrimitiveCount == 674 ) || \
    (NumVertices == 623 && PrimitiveCount == 592 ) || \
    (NumVertices == 3790 && PrimitiveCount == 4078 ) || \
    (NumVertices == 165 && PrimitiveCount == 146 ) || \
    (NumVertices == 2784 && PrimitiveCount == 2384 ) || \
    (NumVertices == 34 && PrimitiveCount == 30 ) || \
    (NumVertices == 25 && PrimitiveCount == 22 ) || \
    (NumVertices == 1572 && PrimitiveCount == 1166 ) || \
    (NumVertices == 634 && PrimitiveCount == 372 ) || \
    ( NumVertices == 183 && PrimitiveCount == 112 ) || \
    ( NumVertices == 49 && PrimitiveCount == 50 ) || \
    ( NumVertices == 40 && PrimitiveCount == 40 ) || \
    ( NumVertices == 795 && PrimitiveCount == 704 ) || \
    ( NumVertices == 150 && PrimitiveCount == 96 ))
    
    #define MarineSas1_Gunner \
    ((NumVertices == 394 && PrimitiveCount == 274 ) || \
    (NumVertices == 716 && PrimitiveCount == 962 ) || \
    (NumVertices == 283 && PrimitiveCount == 170 ) || \
    (NumVertices == 596 && PrimitiveCount == 704 ) || \
    (NumVertices == 275 && PrimitiveCount == 322 ) || \
    (NumVertices == 127 && PrimitiveCount == 124 ) || \
    (NumVertices == 178 && PrimitiveCount == 166 ) || \
    (NumVertices == 3597 && PrimitiveCount == 4280 ) || \
    (NumVertices == 2301 && PrimitiveCount == 2364 ) || \
    (NumVertices == 828 && PrimitiveCount == 1300 ) || \
    (NumVertices == 493 && PrimitiveCount == 688 ) || \
    (NumVertices == 1341 && PrimitiveCount == 1132 ) || \
    (NumVertices == 580 && PrimitiveCount == 380 ) || \
    ( NumVertices == 802 && PrimitiveCount == 800 ) || \
    ( NumVertices == 193 && PrimitiveCount == 140 ))
    
    #define MarineSas1_Demolition \
    ((NumVertices == 367 && PrimitiveCount == 298 ) || \
    (NumVertices == 686 && PrimitiveCount == 952 ) || \
    (NumVertices == 308 && PrimitiveCount == 212 ) || \
    (NumVertices == 568 && PrimitiveCount == 698 ) || \
    (NumVertices == 306 && PrimitiveCount == 274 ) || \
    (NumVertices == 4050 && PrimitiveCount == 4486 ) || \
    (NumVertices == 2540 && PrimitiveCount == 2444 ) || \
    (NumVertices == 689 && PrimitiveCount == 1172 ) || \
    (NumVertices == 356 && PrimitiveCount == 566 ) || \
    (NumVertices == 6 && PrimitiveCount == 2 ) || \
    (NumVertices == 90 && PrimitiveCount == 140 ) || \
    (NumVertices == 1488 && PrimitiveCount == 1114 ) || \
    (NumVertices == 592 && PrimitiveCount == 374 ) || \
    ( NumVertices == 628 && PrimitiveCount == 670 ) || \
    ( NumVertices == 105 && PrimitiveCount == 74 ))
    
    #define Marine_Sniper \
    ((NumVertices == 213 && PrimitiveCount == 282 ) || \
    (NumVertices == 874 && PrimitiveCount == 1228 ) || \
    (NumVertices == 106 && PrimitiveCount == 114 ) || \
    (NumVertices == 537 && PrimitiveCount == 698 ) || \
    (NumVertices == 681 && PrimitiveCount == 588 ) || \
    (NumVertices == 2516 && PrimitiveCount == 2940 ) || \
    (NumVertices == 337 && PrimitiveCount == 240 ) || \
    (NumVertices == 1726 && PrimitiveCount == 1760 ) || \
    (NumVertices == 822 && PrimitiveCount == 1084 ) || \
    (NumVertices == 562 && PrimitiveCount == 632 ) || \
    (NumVertices == 90 && PrimitiveCount == 140 ) || \
    (NumVertices == 1020 && PrimitiveCount == 872 ) || \
    (NumVertices == 587 && PrimitiveCount == 370 ) || \
    ( NumVertices == 204 && PrimitiveCount == 172 ) || \
    ( NumVertices == 63 && PrimitiveCount == 62 ) || \
    ( NumVertices == 140 && PrimitiveCount == 104 ) || \
    ( NumVertices == 53 && PrimitiveCount == 50 ) || \
    ( NumVertices == 635 && PrimitiveCount == 654 ) || \
    ( NumVertices == 137 && PrimitiveCount == 100 ))
    
    #define Sas_Assault \
    (( NumVertices == 154 && PrimitiveCount == 140 ) || \
    ( NumVertices == 3935 && PrimitiveCount == 5226 ) || \
    ( NumVertices == 2640 && PrimitiveCount == 3070 ) || \
    ( NumVertices == 960 && PrimitiveCount == 1072 ) || \
    ( NumVertices == 418 && PrimitiveCount == 636 ) || \
    ( NumVertices == 475 && PrimitiveCount == 486 ) || \
    ( NumVertices == 212 && PrimitiveCount == 288 ) || \
    ( NumVertices == 585 && PrimitiveCount == 440 ) || \
    ( NumVertices == 214 && PrimitiveCount == 202 ) || \
    ( NumVertices == 1373 && PrimitiveCount == 1256 ) || \
    ( NumVertices == 132 && PrimitiveCount == 130 ) || \
    ( NumVertices == 90 && PrimitiveCount == 140 ) || \
    ( NumVertices == 118 && PrimitiveCount == 120 ))
    
    #define Sas_SpecOps \
    (( NumVertices == 131 && PrimitiveCount == 122 ) || \
    ( NumVertices == 3585 && PrimitiveCount == 4858 ) || \
    ( NumVertices == 2525 && PrimitiveCount == 3022 ) || \
    ( NumVertices == 591 && PrimitiveCount == 740 ) || \
    ( NumVertices == 418 && PrimitiveCount == 672 ) || \
    ( NumVertices == 255 && PrimitiveCount == 282 ) || \
    ( NumVertices == 153 && PrimitiveCount == 182 ) || \
    ( NumVertices == 90 && PrimitiveCount == 140 ) || \
    ( NumVertices == 14 && PrimitiveCount == 12 ) || \
    ( NumVertices == 182 && PrimitiveCount == 186 ) || \
    ( NumVertices == 695 && PrimitiveCount == 478 ) || \
    ( NumVertices == 132 && PrimitiveCount == 130 ) || \
    ( NumVertices == 118 && PrimitiveCount == 120 ) || \
    ( NumVertices == 1498 && PrimitiveCount == 1304 ))
    
    #define Sas_Gunner \
    (( NumVertices == 136 && PrimitiveCount == 124 ) || \
    ( NumVertices == 3716 && PrimitiveCount == 5064 ) || \
    ( NumVertices == 2578 && PrimitiveCount == 2994 ) || \
    ( NumVertices == 260 && PrimitiveCount == 250 ) || \
    ( NumVertices == 491 && PrimitiveCount == 756 ) || \
    ( NumVertices == 182 && PrimitiveCount == 154 ) || \
    ( NumVertices == 234 && PrimitiveCount == 328 ) || \
    ( NumVertices == 24 && PrimitiveCount == 22 ) || \
    ( NumVertices == 24 && PrimitiveCount == 22 ) || \
    ( NumVertices == 166 && PrimitiveCount == 128 ) || \
    ( NumVertices == 568 && PrimitiveCount == 470 ) || \
    ( NumVertices == 1412 && PrimitiveCount == 1330 ) || \
    ( NumVertices == 132 && PrimitiveCount == 130 ) || \
    ( NumVertices == 118 && PrimitiveCount == 120 ))
    
    #define Sas_Demo \
    (( NumVertices == 494 && PrimitiveCount == 544 ) || \
    ( NumVertices == 174 && PrimitiveCount == 218 ) || \
    ( NumVertices == 1000 && PrimitiveCount == 1164 ) || \
    ( NumVertices == 425 && PrimitiveCount == 636 ) || \
    ( NumVertices == 133 && PrimitiveCount == 122 ) || \
    ( NumVertices == 3562 && PrimitiveCount == 4784 ) || \
    ( NumVertices == 2509 && PrimitiveCount == 2954 ) || \
    ( NumVertices == 292 && PrimitiveCount == 296 ) || \
    ( NumVertices == 628 && PrimitiveCount == 450 ) || \
    ( NumVertices == 1402 && PrimitiveCount == 1164 ) || \
    ( NumVertices == 132 && PrimitiveCount == 130 ) || \
    ( NumVertices == 118 && PrimitiveCount == 120 ))
    
    #define Sas_Sniper1 \
    ((NumVertices == 438 && PrimitiveCount == 376 ) || \
    (NumVertices == 2334 && PrimitiveCount == 2826 ) || \
    (NumVertices == 177 && PrimitiveCount == 120 ) || \
    (NumVertices == 1615 && PrimitiveCount == 1706 ) || \
    (NumVertices == 822 && PrimitiveCount == 1084 ) || \
    (NumVertices == 562 && PrimitiveCount == 632 ) || \
    (NumVertices == 698 && PrimitiveCount == 1200 ) || \
    (NumVertices == 357 && PrimitiveCount == 566 ) || \
    (NumVertices == 49 && PrimitiveCount == 50 ) || \
    (NumVertices == 470 && PrimitiveCount == 506 ) || \
    (NumVertices == 71 && PrimitiveCount == 50 ) || \
    (NumVertices == 1021 && PrimitiveCount == 872 ) || \
    (NumVertices == 541 && PrimitiveCount == 366 ) || \
    ( NumVertices == 204 && PrimitiveCount == 172 ) || \
    ( NumVertices == 140 && PrimitiveCount == 104 ))
    
    #define Sas_Sniper2 \
    (( NumVertices == 314 && PrimitiveCount == 294 ) || \
    ( NumVertices == 544 && PrimitiveCount == 832 ) || \
    ( NumVertices == 236 && PrimitiveCount == 198 ) || \
    ( NumVertices == 298 && PrimitiveCount == 420 ) || \
    ( NumVertices == 2460 && PrimitiveCount == 2882 ) || \
    ( NumVertices == 3667 && PrimitiveCount == 4952 ) || \
    ( NumVertices == 194 && PrimitiveCount == 142 ) || \
    ( NumVertices == 552 && PrimitiveCount == 452 ) || \
    ( NumVertices == 1479 && PrimitiveCount == 1402 ) || \
    ( NumVertices == 118 && PrimitiveCount == 120 ) || \
    ( NumVertices == 136 && PrimitiveCount == 124 ))
    
    #define Spetznas_Assault \
    ((NumVertices == 4358 && PrimitiveCount == 4864 ) || \
    (NumVertices == 3278 && PrimitiveCount == 3188 ) || \
    (NumVertices == 892 && PrimitiveCount == 1108 ) || \
    (NumVertices == 584 && PrimitiveCount == 568 ) || \
    (NumVertices == 783 && PrimitiveCount == 1168 ) || \
    (NumVertices == 503 && PrimitiveCount == 704 ) || \
    (NumVertices == 90 && PrimitiveCount == 140 ) || \
    (NumVertices == 103 && PrimitiveCount == 130 ) || \
    (NumVertices == 1633 && PrimitiveCount == 1332 ) || \
    (NumVertices == 840 && PrimitiveCount == 618 ) || \
    ( NumVertices == 625 && PrimitiveCount == 612 ) || \
    ( NumVertices == 288 && PrimitiveCount == 260 ))
    
    #define Spetznas_SpecOps \
    ((NumVertices == 424 && PrimitiveCount == 346 ) || \
    (NumVertices == 4242 && PrimitiveCount == 5028 ) || \
    (NumVertices == 323 && PrimitiveCount == 260 ) || \
    (NumVertices == 2391 && PrimitiveCount == 2488 ) || \
    (NumVertices == 793 && PrimitiveCount == 834 ) || \
    (NumVertices == 409 && PrimitiveCount == 588 ) || \
    (NumVertices == 592 && PrimitiveCount == 532 ) || \
    (NumVertices == 274 && PrimitiveCount == 350 ) || \
    (NumVertices == 796 && PrimitiveCount == 1036 ) || \
    (NumVertices == 607 && PrimitiveCount == 512 ) || \
    (NumVertices == 90 && PrimitiveCount == 140 ) || \
    (NumVertices == 26 && PrimitiveCount == 24 ) || \
    (NumVertices == 26 && PrimitiveCount == 24 ) || \
    (NumVertices == 425 && PrimitiveCount == 316 ) || \
    (NumVertices == 1689 && PrimitiveCount == 1422 ) || \
    (NumVertices == 384 && PrimitiveCount == 250 ) || \
    (NumVertices == 969 && PrimitiveCount == 708 ) || \
    ( NumVertices == 625 && PrimitiveCount == 612 ) || \
    ( NumVertices == 288 && PrimitiveCount == 260 ) || \
    ( NumVertices == 553 && PrimitiveCount == 544 ) || \
    ( NumVertices == 163 && PrimitiveCount == 116 ))
    
    #define Spetznas_Gunner \
    ((NumVertices == 4270 && PrimitiveCount == 4804 ) || \
    (NumVertices == 2755  && PrimitiveCount == 2494 ) || \
    (NumVertices == 231  && PrimitiveCount == 244 ) || \
    (NumVertices == 125  && PrimitiveCount == 142 ) || \
    (NumVertices == 880  && PrimitiveCount == 1108 ) || \
    (NumVertices == 584  && PrimitiveCount == 568 ) || \
    (NumVertices == 745  && PrimitiveCount == 1216 ) || \
    (NumVertices == 540  && PrimitiveCount == 812 ) || \
    (NumVertices == 98  && PrimitiveCount == 144 ) || \
    (NumVertices == 1317  && PrimitiveCount == 1054 ) || \
    (NumVertices == 809  && PrimitiveCount == 590 ) || \
    ( NumVertices == 553 && PrimitiveCount == 544 ) || \
    ( NumVertices == 163 && PrimitiveCount == 116 ) || \
    ( NumVertices == 773 && PrimitiveCount == 828 ) || \
    ( NumVertices == 286 && PrimitiveCount == 300 ))
    
    #define Spetznas_Demolition \
    ((NumVertices == 267  && PrimitiveCount == 186 ) || \
    (NumVertices == 3891  && PrimitiveCount == 4598 ) || \
    (NumVertices == 263  && PrimitiveCount == 178 ) || \
    (NumVertices == 2510  && PrimitiveCount == 2470 ) || \
    (NumVertices == 793 && PrimitiveCount == 834 ) || \
    (NumVertices == 409 && PrimitiveCount == 588 ) || \
    (NumVertices == 592 && PrimitiveCount == 532 ) || \
    (NumVertices == 274 && PrimitiveCount == 350 ) || \
    (NumVertices == 529  && PrimitiveCount == 540 ) || \
    (NumVertices == 353  && PrimitiveCount == 346 ) || \
    (NumVertices == 796 && PrimitiveCount == 1036 ) || \
    (NumVertices == 607 && PrimitiveCount == 512 ) || \
    (NumVertices == 26 && PrimitiveCount == 24 ) || \
    (NumVertices == 26 && PrimitiveCount == 24 ) || \
    (NumVertices == 14 && PrimitiveCount == 12 ) || \
    (NumVertices == 90 && PrimitiveCount == 140 ) || \
    (NumVertices == 171  && PrimitiveCount == 114 ) || \
    (NumVertices == 1398  && PrimitiveCount == 1176 ) || \
    (NumVertices == 384 && PrimitiveCount == 250 ) || \
    (NumVertices == 994  && PrimitiveCount == 714 ) || \
    ( NumVertices == 625 && PrimitiveCount == 612 ) || \
    ( NumVertices == 288 && PrimitiveCount == 260 ) || \
    ( NumVertices == 425 && PrimitiveCount == 316 ) || \
    ( NumVertices == 163 && PrimitiveCount == 116 ) || \
    ( NumVertices == 553 && PrimitiveCount == 544 ))
    
    #define Spetznas_Sniper \
    ((NumVertices == 212  && PrimitiveCount == 146 ) || \
    (NumVertices == 3254  && PrimitiveCount == 4122 ) || \
    (NumVertices == 166  && PrimitiveCount == 128 ) || \
    (NumVertices == 1730  && PrimitiveCount == 1938 ) || \
    (NumVertices == 796  && PrimitiveCount == 1036 ) || \
    (NumVertices == 607  && PrimitiveCount == 512 ) || \
    (NumVertices == 498  && PrimitiveCount == 840 ) || \
    (NumVertices == 327  && PrimitiveCount == 500 ) || \
    (NumVertices == 102  && PrimitiveCount == 144 ) || \
    (NumVertices == 1111  && PrimitiveCount == 986 ) || \
    (NumVertices == 724  && PrimitiveCount == 562 ) || \
    ( NumVertices == 545 && PrimitiveCount == 560 ) || \
    ( NumVertices == 189 && PrimitiveCount == 172 ))
    
    #define Spetznas_Sniper2 \
    (( NumVertices == 388 && PrimitiveCount == 322 ) || \
    ( NumVertices == 3326 && PrimitiveCount == 4336 ) || \
    ( NumVertices == 182 && PrimitiveCount == 154 ) || \
    ( NumVertices == 2140 && PrimitiveCount == 2310 ) || \
    ( NumVertices == 146 && PrimitiveCount == 214 ) || \
    ( NumVertices == 690 && PrimitiveCount == 1074 ) || \
    ( NumVertices == 91 && PrimitiveCount == 114 ) || \
    ( NumVertices == 446 && PrimitiveCount == 632 ) || \
    ( NumVertices == 146 && PrimitiveCount == 116 ) || \
    ( NumVertices == 1315 && PrimitiveCount == 1170 ) || \
    ( NumVertices == 726 && PrimitiveCount == 556 ) || \
    ( NumVertices == 651 && PrimitiveCount == 702 ) || \
    ( NumVertices == 201 && PrimitiveCount == 170 ) || \
    ( NumVertices == 796 && PrimitiveCount == 1036 ) || \
    ( NumVertices == 607 && PrimitiveCount == 512 ))
    
    #define Sniper_Camouflage \
    (( NumVertices == 2578 && PrimitiveCount == 2192 ) || \
    ( NumVertices == 398 && PrimitiveCount == 410 ) || \
    ( NumVertices == 2388 && PrimitiveCount == 2040 ) || \
    ( NumVertices == 222 && PrimitiveCount == 298 ) || \
    ( NumVertices == 1186 && PrimitiveCount == 1184 ) || \
    ( NumVertices == 71 && PrimitiveCount == 66 ) || \
    ( NumVertices == 339 && PrimitiveCount == 248 ) || \
    ( NumVertices == 482 && PrimitiveCount == 476 ) || \
    ( NumVertices == 428 && PrimitiveCount == 446 ) || \
    ( NumVertices == 2328 && PrimitiveCount == 1992 ) || \
    ( NumVertices == 132 && PrimitiveCount == 158 ) || \
    ( NumVertices == 153 && PrimitiveCount == 194 ) || \
    ( NumVertices == 349 && PrimitiveCount == 254 ))
    
    #define Cobra_Helicopter \
    ((NumVertices == 2335 && PrimitiveCount == 2166 ) || \
    (NumVertices == 275 && PrimitiveCount == 182 ) || \
    (NumVertices == 323 && PrimitiveCount == 306 ) || \
    (NumVertices == 961 && PrimitiveCount == 656 ) || \
    (NumVertices == 278 && PrimitiveCount == 184 ))
    
    #define Mi28_Helicopter \
    ((NumVertices == 902 && PrimitiveCount == 664 ) || \
    (NumVertices == 219 && PrimitiveCount == 118 ) || \
    (NumVertices == 1724 && PrimitiveCount == 1466 ) || \
    (NumVertices == 3437 && PrimitiveCount == 2646 ) || \
    (NumVertices == 32 && PrimitiveCount == 18 ))
    Code:
    #include <windows.h>
    #include <d3d9.h>
    #include <d3dx9.h>
    #include "Models.h"
    
    #pragma comment( lib, "d3d9.lib" )
    #pragma comment( lib, "d3dx9.lib" )
    
    //-------------------------------------------------------------------
    
    HRESULT ( WINAPI* oReset )
       ( LPDIRECT3DDEVICE9, D3DPRESENT_PARAMETERS* );
    
    HRESULT ( WINAPI* oEndScene ) 
       ( LPDIRECT3DDEVICE9 );
    
    HRESULT ( WINAPI* oDrawIdP )
       ( LPDIRECT3DDEVICE9, D3DPRIMITIVETYPE, 
          INT, UINT, UINT, UINT, UINT );
    
    VOID WINAPI GenerateTexture( LPDIRECT3DDEVICE9 pDevice, 
    	IDirect3DTexture9 **ppD3Dtex, DWORD colour32 );
    
    LPDIRECT3DTEXTURE9 Green				= NULL;
    LPDIRECT3DTEXTURE9 Blue				= NULL;
    LPDIRECT3DTEXTURE9 Red					= NULL;
    LPDIRECT3DTEXTURE9 Orange			= NULL;
    LPDIRECT3DTEXTURE9 Yellow				= NULL;
    LPDIRECT3DTEXTURE9 Pink				= NULL;
    D3DPRESENT_PARAMETERS PrP			= {NULL};
    D3DVIEWPORT9 Vpt							= {NULL}; 
    LPDIRECT3DDEVICE9 pDev					= NULL;
    LPDIRECT3DTEXTURE9 pTx					= NULL;
    DWORD dCrDev									= NULL;
    LPDIRECT3D9 pDx								= NULL;
    LPD3DXFONT pFont							= NULL;
    PDWORD VTab									= NULL;
    DWORD Old										= NULL;
    BOOL Textures									= FALSE;
    
    //-------------------------------------------------------------------
    
    __declspec( naked )
    VOID WINAPI CREATEDEVICE( VOID )
    {
       __asm
       {
    	  {PUSH EBP}{MOV EBP,ESP}
          {PUSH [EBP+0x20]}{PUSH [EBP+0x1C]}
          {PUSH [EBP+0x18]}{PUSH [EBP+0x14]}
          {PUSH [EBP+0x10]}{PUSH [EBP+0xC]}
          {PUSH [EBP+0x8]}{CALL [dCrDev]}
          {MOV EDX,[EBP+0x20]}{MOV EDX,[EDX]}
          {MOV [pDev],EDX}{POP EBP}{RETN 0x1C}
       }
    }
    
    //-------------------------------------------------------------------
    
    HRESULT WINAPI nDrawIdP
       ( LPDIRECT3DDEVICE9 pDev, D3DPRIMITIVETYPE Type, 
          INT Base, UINT Min, UINT NumVertices, UINT Start, UINT PrimitiveCount )
    {
       LPDIRECT3DVERTEXBUFFER9 Stream_Data;
       UINT Offset = 0;
       UINT Stride = 0;
    
       if(pDev->GetStreamSource
          ( 0, &Stream_Data, &Offset, &Stride )==S_OK)
             Stream_Data->Release();
    
       if( Stride != 32 && !Textures )
    	   goto EXIT;
    
        UINT uiTeam1						= 0;
    	UINT uiTeam2						= 0;
    	UINT uiTeam3						= 0;
    	UINT uiTeam4						= 0;
    	UINT uiSniper						= 0;
    	UINT uiCopter1						= 0;
    	UINT uiCopter2						= 0;
    
    	if( Opforces )		uiTeam1		= 1;
    	if( MarineSas )	uiTeam2		= 1;
    	if( Spetznas )		uiTeam3		= 1;
    	if( Sas )				uiTeam4		= 1;
    
    	if( Mi28_Helicopter )				uiCopter1		= 1;
    	if( Cobra_Helicopter )				uiCopter2		= 1;
    	if( Sniper_Camouflage )			uiSniper		= 1;
    
    	if( ( uiTeam1 || uiTeam2 || uiTeam3 || uiTeam4 || uiSniper || uiCopter1 || uiCopter2 ) )
    	{
    		LPDIRECT3DBASETEXTURE9 oTexture			= NULL;
    		DWORD oAlpha											= NULL;
    		DWORD oSrcBlnd										= NULL;
    		DWORD oDstBlnd										= NULL;
    
    		pDev->GetRenderState( D3DRS_ALPHABLENDENABLE,		&oAlpha );
    		pDev->GetRenderState( D3DRS_SRCBLEND,					&oSrcBlnd );
    		pDev->GetRenderState( D3DRS_DESTBLEND,					&oDstBlnd );
    
    		pDev->GetTexture( 0, &oTexture );
    
    		////////////////////////////////////////////////////////////////////
    
    		if( uiTeam1 || uiTeam4 )
    			pDev->SetTexture( 0, Orange );
    		else if( uiTeam2 || uiTeam3 )
    			pDev->SetTexture( 0, Blue );
    		else if( uiSniper )
    			pDev->SetTexture( 0, Yellow );
    		else if( uiCopter1 )
    			pDev->SetTexture( 0, Orange );
    		else if( uiCopter2 )
    			pDev->SetTexture( 0, Blue );
    
    		oDrawIdP( pDev, Type, Base, Min, NumVertices, Start, PrimitiveCount );
    
    		////////////////////////////////////////////////////////////////////
    
    		pDev->SetRenderState( D3DRS_ALPHABLENDENABLE,		TRUE );
    		pDev->SetRenderState( D3DRS_SRCBLEND,					D3DBLEND_SRCCOLOR );
    		pDev->SetRenderState( D3DRS_DESTBLEND,					D3DBLEND_INVSRCCOLOR );
    
    		pDev->SetTexture( 0,	 oTexture );
    
    		oDrawIdP( pDev, Type, Base, Min, NumVertices, Start, PrimitiveCount );
    
    		////////////////////////////////////////////////////////////////////
    
    		if( uiTeam1 || uiTeam4 )
    			pDev->SetTexture( 0, Red );
    		else if( uiTeam2 || uiTeam3 )
    			pDev->SetTexture( 0, Green );
    		else if( uiSniper )
    			pDev->SetTexture( 0, Pink );
    		else if( uiCopter1 )
    			pDev->SetTexture( 0, Red );
    		else if( uiCopter2 )
    			pDev->SetTexture( 0, Green );
    
    		pDev->SetRenderState( D3DRS_ZENABLE, FALSE );
    
    		oDrawIdP( pDev, Type, Base, Min, NumVertices, Start, PrimitiveCount );
    
    		////////////////////////////////////////////////////////////////////
    
    		pDev->SetTexture( 0, oTexture );
    
    		pDev->SetRenderState( D3DRS_ZENABLE, FALSE );
    
    		oDrawIdP( pDev, Type, Base, Min, NumVertices, Start, PrimitiveCount );
    
    		////////////////////////////////////////////////////////////////////
    
    		pDev->SetRenderState( D3DRS_ALPHABLENDENABLE,		oAlpha );
    		pDev->SetRenderState( D3DRS_SRCBLEND,					oSrcBlnd );
    		pDev->SetRenderState( D3DRS_DESTBLEND,					oDstBlnd );
    
    		pDev->SetRenderState( D3DRS_ZENABLE, TRUE );
    
    		D3D_RELEASE( ( oTexture ) )
    
    		return S_OK;
    	}
    
    EXIT:
    
    	return oDrawIdP( pDev, Type, 
    		  Base, Min, NumVertices, Start, PrimitiveCount );
    }
    
    //-------------------------------------------------------------------
    
    HRESULT WINAPI nEndScene
       ( LPDIRECT3DDEVICE9 pDev )
    {
    	if( !Textures )
    	{
    		GenerateTexture( pDev, &Green, 0xFF00FF00 );
    		GenerateTexture( pDev, &Blue, 0xFF0000FF );
    		GenerateTexture( pDev, &Red, 0xFFFF0000 );
    		GenerateTexture( pDev, &Yellow, 0xFFFFFF00 );
    		GenerateTexture( pDev, &Orange, 0xFFFF8000 );
    		GenerateTexture( pDev, &Pink, 0xFFFF00FF );
    	}
    
    	return oEndScene( pDev );
    }
    
    //-------------------------------------------------------------------
    
    HRESULT WINAPI nReset
       ( LPDIRECT3DDEVICE9 pDev, 
          D3DPRESENT_PARAMETERS* PresP )
    {
       return oReset( pDev, PresP );
    }
    
    //-------------------------------------------------------------------
    
    VOID WINAPI THREAD( )
    {
       while( pDev == NULL ) 
          Sleep( 100 );
    
       VTab[16] = dCrDev;
       VirtualProtect( (PVOID)&VTab[16], 4, Old, &Old );
    
       VTab  = (PDWORD)*(PDWORD)pDev;
    
       *(PDWORD)&oEndScene      = VTab[42];
       *(PDWORD)&oReset         = VTab[16];
       *(PDWORD)&oDrawIdP      = VTab[82];
    
       while( 1 )
       {
          VTab[42] = (DWORD)nEndScene;
          VTab[16] = (DWORD)nReset;
          VTab[82] = (DWORD)nDrawIdP;
          Sleep( 100 );
       }
    }
    
    //-------------------------------------------------------------------
    
    BOOL WINAPI DllMain( HMODULE hModule, 
       DWORD dwReason, LPVOID lpReserved )
    {
       if( dwReason == DLL_PROCESS_ATTACH )
       {
          DisableThreadLibraryCalls( hModule );
    
          pDx = Direct3DCreate9
             ( D3D_SDK_VERSION );
    
          if( pDx != NULL )
          {
             VTab  = *(DWORD**)pDx;
             pDx->Release( );
    
             dCrDev = (DWORD)VTab[16];
             VirtualProtect( (PVOID)&VTab[16], 4, 0x40, &Old );
    
             VTab[16] = (DWORD)CREATEDEVICE;
             CreateThread( NULL, NULL, (LPTHREAD_START_ROUTINE)
                THREAD, NULL, NULL, NULL );
          }
       }
    
       return TRUE;
    }
    
    //-------------------------------------------------------------------
    
    VOID WINAPI GenerateTexture( LPDIRECT3DDEVICE9 pDevice, 
    	IDirect3DTexture9 **ppD3Dtex, DWORD colour32 )
    {
    	if( pDevice->CreateTexture( 1, 1, 1, 0, D3DFMT_A8R8G8B8, 
    		D3DPOOL_MANAGED, ppD3Dtex, NULL ) == S_OK )
    	{
    		D3DLOCKED_RECT d3dlr; 
    
    		if( (*ppD3Dtex)->LockRect( 0, &d3dlr, 0, 
    			D3DLOCK_DONOTWAIT | D3DLOCK_NOSYSLOCK ) == S_OK )
    		{
    			*(PDWORD)d3dlr.pBits = colour32;
    
    			(*ppD3Dtex)->UnlockRect( 0 );
    		}
    	}
    }
    
    //-------------------------------------------------------------------




  2. #2
    Junior Member
    Join Date
    May 2018
    Posts
    1

    Двери из масс&

    Внутри дверного полотна должен быть специальный огнестойкий изолирующий материал. В качестве этого материала специалисты рекомендуют использовать минеральную вату, которая выгодно отличается и своими экологическими, и своими практическими свойствами. Минеральная вата также отличается повышенными характеристиками по звуко- и теплоизоляции и относится к классу негорючих (под воздействием огня плиты из минваты не дымят и не выделяют токсичные газы). Технические двери уличные в Москве такая технология обеспечивает высокую стойкость готового покрытия, которое будет несколько лет надежно защищать сталь от коррозии, не требуя какого-либо специального ухода или обновления. Тем не менее, многолетний опыт показывает, что наилучшим вариантом является установка двух дверей: внешней стальной, на которую приходится защитная функция, и внутренней деревянной, берущей на себя тепло- и звукоизоляцию.

    3. Замки Отдельный вопрос при выборе и установке металлических дверей – замки. Чем сложнее замок, тем он дороже. Любые, даже сверхпрочные, провода может закоротить, да и от скачков электроэнергии, способных вывести приборы из строя, тоже никто не застрахован посоветуйте входную дверь в квартиру в Москве . Как правило, объектом взлома, в первую очередь, является замок, и, на наш взгляд, именно замок определяет взломостойкость двери в целом. http://forum.netorn.ru/index.php?act=ST&f=6&t=22029 Поэтому: на замках не следует экономить, если вы хотите получить устойчивую к несанкционированному проникновению дверь; специалисты советуют покупать двери, укомплектованные замками от ведущих мировых производителей. Они более надежны: реже выходят из строя, число комбинаций ключей достигает от 500 000 до 4 млрд.

Similar Threads

  1. Som model rec for COD4
    By (+)_ in forum D3D
    Replies: 1
    Last Post: February 24th, 2013, 17:37
  2. Old CSS Model Rec
    By (+)_ in forum D3D
    Replies: 0
    Last Post: January 22nd, 2012, 18:14
  3. Some Model Rec For CSS
    By (+)_ in forum D3D
    Replies: 0
    Last Post: September 19th, 2010, 13:09
  4. cod 1.0 model rec?
    By bobs in forum Call of Duty 2 Cheats
    Replies: 0
    Last Post: March 22nd, 2010, 00:16
  5. COD4: D3D Model rec with strings
    By Sinner in forum Tutorials
    Replies: 1
    Last Post: February 27th, 2008, 08:49

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •