//================ // Hud GFX //================ gfx/hud/arrow { cull none { map gfx/hud/arrow.tga blendfunc add rgbGen identity } } //================ // Atmosphere //================ gfx/atmosphere/raindrop { cull none polygonoffset sort 16 { map gfx/atmosphere/raindrop.tga blendfunc blend alphagen vertex } } gfx/atmosphere/raindropwater { cull none { map gfx/atmosphere/raindropwater.tga blendfunc blend alphagen vertex } } gfx/atmosphere/raindropsolid { polygonoffset { map gfx/atmosphere/raindropsolid.tga blendfunc blend alphagen vertex } } gfx/atmosphere/snowflake00 { nopicmip cull none polygonoffset sort 16 { map gfx/atmosphere/snowflake00.tga blendfunc blend alphagen vertex } } gfx/atmosphere/snowflake01 { nopicmip cull none polygonoffset sort 16 { map gfx/atmosphere/snowflake01.tga blendfunc blend alphagen vertex } } gfx/atmosphere/snowflake02 { nopicmip cull none polygonoffset sort 16 { map gfx/atmosphere/snowflake02.tga blendfunc blend alphagen vertex } } gfx/atmosphere/snowflake03 { nopicmip cull none polygonoffset sort 16 { map gfx/atmosphere/snowflake03.tga blendfunc blend alphagen vertex } } gfx/atmosphere/snowflake04 { nopicmip cull none polygonoffset sort 16 { map gfx/atmosphere/snowflake04.tga blendfunc blend alphagen vertex } } gfx/atmosphere/snowflake05 { nopicmip cull none polygonoffset sort 16 { map gfx/atmosphere/snowflake05.tga blendfunc blend alphagen vertex } } //================ // Region //================ // the REGION shader is generated by the map editor on temporary // brushes around a selected area for testing parts of maps textures/REGION { surfaceparm nolightmap } //================ // Lag-O-Meter //================ // the background for the netgraph lagometer { nopicmip { map gfx/2d/lag.tga } } // blinked on top of lagometer when connection is interrupted disconnected { nopicmip { map gfx/2d/net.tga } } white { { map *white blendfunc GL_SRC_ALPHA GL_ONE_MINUS_SRC_ALPHA rgbgen vertex } } //================ // Console //================ console { nopicmip nomipmaps { map gfx/misc/console01.tga blendFunc GL_ONE GL_ZERO tcMod scroll .02 0 tcmod scale 2 1 } { map gfx/misc/console02.tga //map textures/sfx/firegorre3.tga blendFunc add tcMod turb 0 .1 0 .1 tcMod scale 2 1 tcmod scroll 0.2 .1 } } //========== // Menu //========== menuback { nopicmip nomipmaps //{ // map textures/sfx/logo512.tga //} //{ // map textures/sfx/specular.tga // //blendfunc add // tcMod turb 0 .8 0 .2 // tcmod scroll -.1 -.2 //} { map textures/sfx/logo512.tga // blendFunc blend rgbgen identity } //{ // map textures/sfx/proto_zzzdrk.tga // blendFunc add // tcMod turb 0 .1 0 .9 // tcmod scale .2 .2 // tcMod scroll .02 0.7 // rgbgen identity //} } menubacknologo { nopicmip nomipmaps { map gfx/colors/black.tga //map textures/sfx/proto_zzzdrk.tga // tcMod turb 0 .1 0 .9 // tcmod scale .2 .2 // tcMod scroll .02 0.7 } } menubacknologo2 { nopicmip nomipmaps { map menu/art/menu_back.tga } } menubackRagePro // blends turn to shit on rage pro, so skip it { nopicmip nomipmaps { map textures/sfx/logo512.tga } } //====================== // Levelshot Detail //====================== // used to break up the blur on levelshots levelShotDetail { nopicmip { map textures/sfx/detail.tga blendFunc GL_DST_COLOR GL_SRC_COLOR rgbgen identity } } //====================== // Menu 2D GFX //====================== gfx/2d/menuinfo { nopicmip { map gfx/2d/menuinfo.tga } } gfx/2d/menuinfo2 { nopicmip { map gfx/2d/menuinfo2.tga } } gfx/2d/quit { nopicmip nomipmaps { map gfx/2d/quit.tga } } gfx/2d/cursor { nopicmip nomipmaps { map gfx/2d/cursor.tga } } //================ // Chat Icon //================ sprites/balloon3 { { map sprites/balloon4.tga blendfunc GL_SRC_ALPHA GL_ONE_MINUS_SRC_ALPHA } } //====================== // Teamplay Icons //====================== sprites/foe { nomipmaps nopicmip { map sprites/foe2.tga blendfunc GL_SRC_ALPHA GL_ONE_MINUS_SRC_ALPHA } } sprites/friend { nomipmaps nopicmip { map sprites/friend1.tga blendfunc GL_SRC_ALPHA GL_ONE_MINUS_SRC_ALPHA } } //====================== // Misc Effects //====================== sprites/plasma1 { cull disable { clampmap sprites/plasmaa.tga blendfunc GL_ONE GL_ONE tcMod rotate 931 } } sprites/plasma2 { cull disable { map sprites/plasma2.tga blendfunc GL_ONE GL_ONE } } teleportEffect { cull none { map gfx/misc/teleportEffect2.tga blendFunc GL_ONE GL_ONE rgbGen entity tcMod scale 1 4 tcMod scroll 0 2 } } // markShadow is the very cheap blurry blob underneat the player markShadow { polygonOffset { map gfx/damage/shadow.tga blendFunc GL_ZERO GL_ONE_MINUS_SRC_COLOR rgbGen exactVertex } } // projectionShadow is used for cheap squashed model shadows projectionShadow { polygonOffset deformVertexes projectionShadow { map *white blendFunc GL_ONE GL_ZERO rgbGen wave square 0 0 0 0 // just solid black } } // wake is the mark on water surfaces for paddling players wake { { clampmap sprites/splash.tga blendFunc GL_ONE GL_ONE rgbGen vertex tcmod rotate 250 tcMod stretch sin .9 0.1 0 0.7 rgbGen wave sin .7 .3 .25 .5 } { clampmap sprites/splash.tga blendFunc GL_ONE GL_ONE rgbGen vertex tcmod rotate -230 tcMod stretch sin .9 0.05 0 0.9 rgbGen wave sin .7 .3 .25 .4 } } // viewBloodBlend gives the blended directional cue when you get hit viewBloodBlend { sort nearest { //map models/weaphits/blood201.tga map gfx/damage/blood_screen.tga blendFunc GL_SRC_ALPHA GL_ONE_MINUS_SRC_ALPHA rgbGen identityLighting alphaGen vertex } } waterBubble { sort underwater cull none entityMergable // allow all the sprites to be merged together { map sprites/bubble.tga blendFunc GL_SRC_ALPHA GL_ONE_MINUS_SRC_ALPHA rgbGen vertex alphaGen vertex } } smokePuff { cull none entityMergable // allow all the sprites to be merged together { map gfx/misc/smokepuff3.tga blendFunc GL_SRC_ALPHA GL_ONE_MINUS_SRC_ALPHA rgbGen vertex alphaGen vertex } } hasteSmokePuff // drops behind player's feet when speeded { cull none entityMergable // allow all the sprites to be merged together { map gfx/misc/smokepuff3.tga blendFunc GL_SRC_ALPHA GL_ONE_MINUS_SRC_ALPHA //blendfunc GL_ONE GL_ONE rgbGen vertex alphaGen vertex } } smokePuffRagePro { cull none entityMergable // allow all the sprites to be merged together { map gfx/misc/smokepuffragepro.tga blendFunc GL_SRC_ALPHA GL_ONE_MINUS_SRC_ALPHA } } shotgunSmokePuff { cull none { map gfx/misc/smokepuff2b.tga blendFunc GL_SRC_ALPHA GL_ONE_MINUS_SRC_ALPHA alphaGen entity rgbGen entity } } flareShader { cull none { map gfx/misc/flare.tga blendFunc GL_ONE GL_ONE rgbGen vertex } } sun { cull none { map gfx/misc/sun.tga blendFunc GL_ONE GL_ONE rgbGen vertex } } railDisc { sort nearest cull none deformVertexes wave 100 sin 0 .5 0 2.4 { clampmap gfx/misc/raildisc_mono2.tga blendFunc GL_ONE GL_ONE rgbGen vertex tcMod rotate -30 } } railCore { sort nearest cull none { map gfx/misc/railcorethin_mono.tga blendFunc GL_ONE GL_ONE rgbGen vertex tcMod scroll -1 0 } } lightningBolt { cull none { map gfx/misc/lightning3.tga blendFunc GL_ONE GL_ONE // rgbgen wave sin 1 5.1 0 7.1 rgbgen wave sin 1 0.5 0 7.1 tcmod scale 2 1 tcMod scroll -5 0 } { map gfx/misc/lightning3.tga blendFunc GL_ONE GL_ONE // rgbgen wave sin 1 8.3 0 8.1 rgbgen wave sin 1 0.8 0 8.1 tcmod scale -1.3 -1 tcMod scroll -7.2 0 } } // shader used on the occasional machinegun bullet tracers gfx/misc/tracer { cull none { map gfx/misc/tracer2.tga blendFunc GL_ONE GL_ONE } } // // wall marks // use blendFunc GL_ZERO GL_ONE_MINUS_SRC_COLOR so that // their "contribution" can be damped down in fog volumes // with distance bloodMark { nopicmip // make sure a border remains polygonOffset { clampmap gfx/damage/blood_stain.tga blendFunc GL_SRC_ALPHA GL_ONE_MINUS_SRC_ALPHA rgbGen identityLighting alphaGen vertex } } bloodTrail { nopicmip // make sure a border remains entityMergable // allow all the sprites to be merged together { //clampmap gfx/misc/blood.tga clampmap gfx/damage/blood_spurt.tga blendFunc GL_SRC_ALPHA GL_ONE_MINUS_SRC_ALPHA rgbGen vertex alphaGen vertex } } gfx/damage/bullet_mrk { polygonOffset { map gfx/damage/bullet_mrk.tga blendFunc GL_ZERO GL_ONE_MINUS_SRC_COLOR rgbGen exactVertex } } gfx/damage/burn_med_mrk { polygonOffset { map gfx/damage/burn_med_mrk.tga blendFunc GL_ZERO GL_ONE_MINUS_SRC_COLOR rgbGen exactVertex } } gfx/damage/hole_lg_mrk { polygonOffset { map gfx/damage/hole_lg_mrk.tga blendFunc GL_ZERO GL_ONE_MINUS_SRC_COLOR rgbGen exactVertex } } gfx/damage/plasma_mrk { polygonOffset { map gfx/damage/plasma_mrk.tga blendFunc GL_SRC_ALPHA GL_ONE_MINUS_SRC_ALPHA rgbGen vertex alphaGen vertex } } //================ // Scoreboard //================ scoreboardName { nopicmip nomipmaps { clampmap menu/tab/name.tga blendfunc blend } } scoreboardScore { nopicmip nomipmaps { clampmap menu/tab/score.tga blendfunc blend } } scoreboardTime { nopicmip nomipmaps { clampmap menu/tab/time.tga blendfunc blend } } scoreboardPing { nopicmip nomipmaps { clampmap menu/tab/ping.tga blendfunc blend } } //====================== // Crosshairs //====================== gfx/2d/crosshair { nopicmip { map gfx/2d/crosshair.tga blendFunc GL_SRC_ALPHA GL_ONE_MINUS_SRC_ALPHA rgbGen identity } } gfx/2d/crosshairb { nopicmip { map gfx/2d/crosshairb.tga blendFunc GL_SRC_ALPHA GL_ONE_MINUS_SRC_ALPHA rgbGen identity } } gfx/2d/crosshairc { nopicmip { map gfx/2d/crosshairc.tga blendFunc GL_SRC_ALPHA GL_ONE_MINUS_SRC_ALPHA rgbGen identity } } gfx/2d/crosshaird { nopicmip { map gfx/2d/crosshaird.tga blendFunc GL_SRC_ALPHA GL_ONE_MINUS_SRC_ALPHA rgbGen identity } } gfx/2d/crosshaire { nopicmip { map gfx/2d/crosshaire.tga blendFunc GL_SRC_ALPHA GL_ONE_MINUS_SRC_ALPHA rgbGen identity } } gfx/2d/crosshairf { nopicmip { map gfx/2d/crosshairf.tga blendFunc GL_SRC_ALPHA GL_ONE_MINUS_SRC_ALPHA rgbGen identity } } gfx/2d/crosshairg { nopicmip { map gfx/2d/crosshairg.tga blendFunc GL_SRC_ALPHA GL_ONE_MINUS_SRC_ALPHA rgbGen identity } } gfx/2d/crosshairh { nopicmip { map gfx/2d/crosshairh.tga blendFunc GL_SRC_ALPHA GL_ONE_MINUS_SRC_ALPHA rgbGen identity } } gfx/2d/crosshairi { nopicmip { map gfx/2d/crosshairi.tga blendFunc GL_SRC_ALPHA GL_ONE_MINUS_SRC_ALPHA rgbGen identity } } gfx/2d/crosshairj { nopicmip { map gfx/2d/crosshairj.tga blendFunc GL_SRC_ALPHA GL_ONE_MINUS_SRC_ALPHA rgbGen identity } } gfx/2d/crosshairk { nopicmip { map gfx/2d/crosshairk.tga blendFunc GL_SRC_ALPHA GL_ONE_MINUS_SRC_ALPHA rgbGen identity } } //============================ // Characters and Numbers //============================ gfx/2d/bigchars { nopicmip nomipmaps { map gfx/2d/bigchars.tga blendFunc GL_SRC_ALPHA GL_ONE_MINUS_SRC_ALPHA rgbgen vertex } } gfx/2d/select { nopicmip { map gfx/2d/select.tga blendFunc GL_SRC_ALPHA GL_ONE_MINUS_SRC_ALPHA rgbGen identity rgbgen vertex } } gfx/2d/assault1d { nopicmip { map gfx/2d/assault1d.tga blendFunc GL_SRC_ALPHA GL_ONE_MINUS_SRC_ALPHA } } gfx/2d/armor1h { nopicmip { map gfx/2d/armor1h.tga blendFunc GL_SRC_ALPHA GL_ONE_MINUS_SRC_ALPHA } } gfx/2d/health { nopicmip { map gfx/2d/health.tga blendFunc GL_SRC_ALPHA GL_ONE_MINUS_SRC_ALPHA } } gfx/2d/blank { nopicmip { map gfx/2d/blank.tga blendFunc GL_SRC_ALPHA GL_ONE_MINUS_SRC_ALPHA } } gfx/2d/numbers/zero_32b { nopicmip { map gfx/2d/numbers/zero_32b.tga blendFunc GL_SRC_ALPHA GL_ONE_MINUS_SRC_ALPHA rgbgen vertex } } gfx/2d/numbers/one_32b { nopicmip { map gfx/2d/numbers/one_32b.tga blendFunc GL_SRC_ALPHA GL_ONE_MINUS_SRC_ALPHA rgbgen vertex } } gfx/2d/numbers/two_32b { nopicmip { map gfx/2d/numbers/two_32b.tga blendFunc GL_SRC_ALPHA GL_ONE_MINUS_SRC_ALPHA rgbgen vertex } } gfx/2d/numbers/three_32b { nopicmip { map gfx/2d/numbers/three_32b.tga blendFunc GL_SRC_ALPHA GL_ONE_MINUS_SRC_ALPHA rgbgen vertex } } gfx/2d/numbers/four_32b { nopicmip { map gfx/2d/numbers/four_32b.tga blendFunc GL_SRC_ALPHA GL_ONE_MINUS_SRC_ALPHA rgbgen vertex } } gfx/2d/numbers/five_32b { nopicmip { map gfx/2d/numbers/five_32b.tga blendFunc GL_SRC_ALPHA GL_ONE_MINUS_SRC_ALPHA rgbgen vertex } } gfx/2d/numbers/six_32b { nopicmip { map gfx/2d/numbers/six_32b.tga blendFunc GL_SRC_ALPHA GL_ONE_MINUS_SRC_ALPHA rgbgen vertex } } gfx/2d/numbers/seven_32b { nopicmip { map gfx/2d/numbers/seven_32b.tga blendFunc GL_SRC_ALPHA GL_ONE_MINUS_SRC_ALPHA rgbgen vertex } } gfx/2d/numbers/eight_32b { nopicmip { map gfx/2d/numbers/eight_32b.tga blendFunc GL_SRC_ALPHA GL_ONE_MINUS_SRC_ALPHA rgbgen vertex } } gfx/2d/numbers/nine_32b { nopicmip { map gfx/2d/numbers/nine_32b.tga blendFunc GL_SRC_ALPHA GL_ONE_MINUS_SRC_ALPHA rgbgen vertex } } gfx/2d/numbers/minus_32b { nopicmip { map gfx/2d/numbers/minus_32b.tga blendFunc GL_SRC_ALPHA GL_ONE_MINUS_SRC_ALPHA rgbgen vertex } } //====================== // Explosions //====================== plasmaExplosion { cull disable { clampmap models/weaphits/plasmaboom.tga blendfunc add tcMod stretch triangle .6 0.1 0 8 tcmod rotate 999 rgbGen wave inversesawtooth 0 1 0 1.5 } } railExplosion { cull disable { animmap 5 models/weaphits/ring02_1.tga models/weaphits/ring02_2.tga models/weaphits/ring02_3.tga models/weaphits/ring02_4.tga gfx/colors/black.tga alphaGen wave inversesawtooth 0 1 0 5 blendfunc blend } { animmap 5 models/weaphits/ring02_2.tga models/weaphits/ring02_3.tga models/weaphits/ring02_4.tga gfx/colors/black.tga gfx/colors/black.tga alphaGen wave sawtooth 0 1 0 5 blendfunc blend } } lightningExplosion { cull disable { animmap 5 models/weaphits/ring02_1.tga models/weaphits/ring02_3.tga models/weaphits/ring02_3.tga gfx/colors/black.tga rgbGen wave inversesawtooth 0 1 0 5 blendfunc add } { animmap 5 models/weaphits/ring02_2.tga models/weaphits/ring02_3.tga gfx/colors/black.tga gfx/colors/black.tga rgbGen wave sawtooth 0 1 0 5 blendfunc add } } bulletExplosion { cull disable { animmap 5 models/weaphits/bullet1.tga models/weaphits/bullet2.tga models/weaphits/bullet3.tga gfx/colors/black.tga rgbGen wave inversesawtooth 0 1 0 5 blendfunc add } { animmap 5 models/weaphits/bullet2.tga models/weaphits/bullet3.tga gfx/colors/black.tga gfx/colors/black.tga rgbGen wave sawtooth 0 1 0 5 blendfunc add } } rocketExplosion { cull disable { animmap 8 models/weaphits/rlboom/rlboom_1.tga models/weaphits/rlboom/rlboom_2.tga models/weaphits/rlboom/rlboom_3.tga models/weaphits/rlboom/rlboom_4.tga models/weaphits/rlboom/rlboom_5.tga models/weaphits/rlboom/rlboom_6.tga models/weaphits/rlboom/rlboom_7.tga models/weaphits/rlboom/rlboom_8.tga rgbGen wave inversesawtooth 0 1 0 8 blendfunc add } { animmap 8 models/weaphits/rlboom/rlboom_2.tga models/weaphits/rlboom/rlboom_3.tga models/weaphits/rlboom/rlboom_4.tga models/weaphits/rlboom/rlboom_5.tga models/weaphits/rlboom/rlboom_6.tga models/weaphits/rlboom/rlboom_7.tga models/weaphits/rlboom/rlboom_8.tga gfx/colors/black.tga rgbGen wave sawtooth 0 1 0 8 blendfunc add } } grenadeExplosion { cull disable { animmap 5 models/weaphits/glboom/glboom_1.tga models/weaphits/glboom/glboom_2.tga models/weaphits/glboom/glboom_3.tga rgbGen wave inversesawtooth 0 1 0 5 blendfunc add } { animmap 5 models/weaphits/glboom/glboom_2.tga models/weaphits/glboom/glboom_3.tga gfx/colors/black.tga rgbGen wave sawtooth 0 1 0 5 blendfunc add } } bfgExplosion { cull disable { animmap 5 models/weaphits/bfgboom/bfgboom_1.tga models/weaphits/bfgboom/bfgboom_2.tga models/weaphits/bfgboom/bfgboom_3.tga rgbGen wave inversesawtooth 0 1 0 5 blendfunc add } { animmap 5 models/weaphits/bfgboom/bfgboom_2.tga models/weaphits/bfgboom/bfgboom_3.tga gfx/colors/black.tga rgbGen wave sawtooth 0 1 0 5 blendfunc add } } bloodExplosion // spurt of blood at point of impact { cull disable { animmap 5 models/weaphits/blood201.tga models/weaphits/blood202.tga models/weaphits/blood203.tga models/weaphits/blood204.tga models/weaphits/blood205.tga blendfunc blend } } textures/sfx/flame1 { surfaceparm nomarks surfaceparm nolightmap surfaceparm trans cull none q3map_surfacelight 7500 { animMap 10 textures/sfx/flame1.tga textures/sfx/flame2.tga textures/sfx/flame3.tga textures/sfx/flame4.tga textures/sfx/flame5.tga textures/sfx/flame6.tga textures/sfx/flame7.tga textures/sfx/flame8.tga blendFunc GL_ONE GL_ONE rgbGen wave inverseSawtooth 0 1 0 10 } { animMap 10 textures/sfx/flame2.tga textures/sfx/flame3.tga textures/sfx/flame4.tga textures/sfx/flame5.tga textures/sfx/flame6.tga textures/sfx/flame7.tga textures/sfx/flame8.tga textures/sfx/flame1.tga blendFunc GL_ONE GL_ONE rgbGen wave sawtooth 0 1 0 10 } { map textures/sfx/flameball.tga blendFunc GL_ONE GL_ONE rgbGen wave sin .6 .2 0 .6 } } textures/stecki/cameraflash_01 { qer_editorimage textures/stecki/cameraflash_01.tga surfaceparm nomarks surfaceparm nonsolid surfaceparm nolightmap deformVertexes autosprite { animMap 2 textures/stecki/cameraflash_01.tga textures/stecki/cameraflash_02.tga textures/stecki/cameraflash_02.tga textures/stecki/cameraflash_02.tga textures/stecki/cameraflash_02.tga textures/stecki/cameraflash_02.tga textures/stecki/cameraflash_02.tga textures/stecki/cameraflash_02.tga blendFunc add rgbGen wave Inversesawtooth 0 2 0 2 // rgbGen wave Inversesawtooth 1 1 0 1 } } textures/stecki/cameraflash_02 { qer_editorimage textures/stecki/cameraflash_01.tga surfaceparm nomarks surfaceparm nonsolid surfaceparm nolightmap deformVertexes autosprite { animMap 2 textures/stecki/cameraflash_02.tga textures/stecki/cameraflash_01.tga textures/stecki/cameraflash_02.tga textures/stecki/cameraflash_02.tga textures/stecki/cameraflash_02.tga textures/stecki/cameraflash_02.tga textures/stecki/cameraflash_02.tga textures/stecki/cameraflash_02.tga blendFunc add rgbGen wave Inversesawtooth 0 2 0 2 // rgbGen wave Inversesawtooth 1 1 0 1 } } textures/stecki/cameraflash_03 { qer_editorimage textures/stecki/cameraflash_01.tga surfaceparm nomarks surfaceparm nonsolid surfaceparm nolightmap deformVertexes autosprite { animMap 2 textures/stecki/cameraflash_02.tga textures/stecki/cameraflash_02.tga textures/stecki/cameraflash_01.tga textures/stecki/cameraflash_02.tga textures/stecki/cameraflash_02.tga textures/stecki/cameraflash_02.tga textures/stecki/cameraflash_02.tga textures/stecki/cameraflash_02.tga blendFunc add rgbGen wave Inversesawtooth 0 2 0 2 // rgbGen wave Inversesawtooth 1 1 0 1 } } textures/stecki/cameraflash_04 { qer_editorimage textures/stecki/cameraflash_01.tga surfaceparm nomarks surfaceparm nonsolid surfaceparm nolightmap deformVertexes autosprite { animMap 2 textures/stecki/cameraflash_02.tga textures/stecki/cameraflash_02.tga textures/stecki/cameraflash_02.tga textures/stecki/cameraflash_02.tga textures/stecki/cameraflash_01.tga textures/stecki/cameraflash_02.tga textures/stecki/cameraflash_02.tga textures/stecki/cameraflash_02.tga blendFunc add rgbGen wave Inversesawtooth 0 2 0 2 // rgbGen wave Inversesawtooth 1 1 0 1 } } textures/stecki/cameraflash_05 { qer_editorimage textures/stecki/cameraflash_01.tga surfaceparm nomarks surfaceparm nonsolid surfaceparm nolightmap deformVertexes autosprite { animMap 2 textures/stecki/cameraflash_02.tga textures/stecki/cameraflash_02.tga textures/stecki/cameraflash_02.tga textures/stecki/cameraflash_02.tga textures/stecki/cameraflash_02.tga textures/stecki/cameraflash_02.tga textures/stecki/cameraflash_01.tga textures/stecki/cameraflash_02.tga blendFunc add rgbGen wave Inversesawtooth 0 2 0 2 // rgbGen wave Inversesawtooth 1 1 0 1 } } textures/base_light/light5_5k { qer_editorimage textures/base_light/light5.tga light 1 surfaceparm nomarks q3map_surfacelight 5000 { map $lightmap rgbGen identity } { map textures/base_light/light5.tga blendFunc GL_DST_COLOR GL_ZERO rgbGen identity } { map textures/base_light/light5.blend.tga blendfunc add } }