Image FX - Gman intro - how was it done?

brisck1

Newbie
Joined
Jul 17, 2003
Messages
483
Reaction score
0
I was watching the intro witht he Gman at the beginning of the game yesterday and was wondering how they achieved the wierd normal>inverted>black & white FX?

How did they do this? im really interest to find out as I've got some great ideas if I can utilise it!
 
When you're in the teleporter teleporting around, that effect appears as well... indicating it's a render effect, because it affects everything; not just G-Man.

Dark Elf, assuming that by "shader" you mean a multifunction texture.
 
Dario D. said:
Dark Elf, assuming that by "shader" you mean a multifunction texture.

Ok I'll explain what a shader is for you. A shader defines the final surface properties of an object. For example, a shader can define the color, reflectivity, and transluscency of a surface. A texture (.jpg or .tga) with an effect applied to it, like transparency, scroll, ripple or light emitting. These or other properties are created in a shader script. A Shader specifies how a rendered triangle is to be coloured and lit. class, P03, P04
 
aka a multifunction texture... Does more than just show up as a bitmap.
 
yeah I guessed it was a shader! but how was it done/activated in hammer?
 
Dario D. said:
When you're in the teleporter teleporting around, that effect appears as well... indicating it's a render effect, because it affects everything; not just G-Man.

Dark Elf, assuming that by "shader" you mean a multifunction texture.
By shader I mean shader, as hinted at by the use of the word shader.
 
brisck1 said:
yeah I guessed it was a shader! but how was it done/activated in hammer?

Must be some kind of trigger... But I dont know which one. If Valve let us see the map files of the original missions, as in most games with good engines, we could figure out a very lot of things... But all they're letting us see in Hammer is dm_lockdown.

I cant stress enough how needless and anti-community it is that valve is hiding their map files from the mappers and modders...
 
I heard its something called env_screenoverlay but you need to bput in the names of the screen overlays, I wonder if they are listed somewhere
 
I also heard they involve some codes if you want to create your own...:(
 
well I just want to play with the ones Valve used and are already there in the gman intro right now
 
Dario D. said:
When you're in the teleporter teleporting around, that effect appears as well... indicating it's a render effect, because it affects everything; not just G-Man.

Dark Elf, assuming that by "shader" you mean a multifunction texture.

As a Certified Jackass I'm going to stick my nose in here just to clear something up.

Shaders starting with DirectX8 took over the traditional T&L as well as the raster stage, T&L stands for Transform and Lighting. transform is the process whereby any point is positioned in the world, lighting refers to the color coding of each vertex, generally used to create the effect of lighting. The raster stage refers to a process that uses texel information in conjunction with transformed triangles to create images.

I'm not clear on what you mean by multifunction texture, multitexturing was used along with blending to create more complex texture effects on fixed function pipelines, and current textures often are used to store added data that is accessed during the raster stage.

In any case I believe that the beginning sequence with the gMan used a combination of entities to create the effect, but I've not seen the effect in a while so I could be wrong.
 
Dunno how useful this will be, but these are the key sections of the intro, I had showinfo on to see what was getting triggered.

Code:
B&W Effect

input scene2_start: scene2_flash_mode_2.Trigger()
output: (logic_relay,scene2_flash_mode_2) -> (intro_static,PlaySound,0.4)
output: (logic_relay,scene2_flash_mode_2) -> (intro_version3,FadeTo)
output: (logic_relay,scene2_flash_mode_2) -> (intro_version3,FadeTo,0.5)
output: (logic_relay,scene2_flash_mode_2) -> (intro_version3,SetBlendMode,0.4)
output: (logic_relay,scene2_flash_mode_2) -> (light_start,TurnOff,0.4)
output: (logic_relay,scene2_flash_mode_2) -> (light_tracktrain,TurnOn,0.4)
output: (logic_relay,scene2_flash_mode_2) -> (light_tracktrain2,TurnOn,0.4)
input scene2_flash_mode_2: intro_version3.FadeTo(255 0.3)
input zap2: zappath.InPass()
input zap1: zappath08.InPass()
input zap3: zappath04.InPass()
input scene2_flash_mode_2: intro_static.PlaySound()
input scene2_flash_mode_2: intro_version3.SetBlendMode(1)
input scene2_flash_mode_2: light_start.TurnOff()
input scene2_flash_mode_2: light_tracktrain.TurnOn()
input scene2_flash_mode_2: light_tracktrain2.TurnOn()
input scene2_flash_mode_2: intro_version3.FadeTo(0 0.3)
input scene2_flash_mode_2: scene2_flash_mode_2.EnableRefire()
input zap1: zappath09.InPass()
input zap2: zappath01.InPass()
input zap3: zappath05.InPass()
input zap1: zappath10.InPass()
input zap2: zappath02.InPass()
input zap3: zappath06.InPass()

Clear G-Man Mouth, HL1 Test Chamber behind

input scene3_start: scene3_move_to_mouth.Trigger()
output: (logic_relay,scene3_move_to_mouth) -> (intro_version3,SetBlendMode,0.4)
output: (logic_relay,scene3_move_to_mouth) -> (intro_version3,SetCameraViewEntity,0.4)
output: (logic_relay,scene3_move_to_mouth) -> (zoom_to_fov_10_snap,Zoom,0.4)
output: (logic_relay,scene3_move_to_mouth) -> (intro_version3,SetFOV,0.4)
output: (logic_relay,scene3_move_to_mouth) -> (viewcontrol_mouth,Enable,0.4)
output: (logic_relay,scene3_move_to_mouth) -> (intro_version3,FadeTo,1.0)
output: (logic_relay,scene3_move_to_mouth) -> (intro_version3,FadeTo)
output: (logic_relay,scene3_move_to_mouth) -> (zoom_to_fov_45_20,Zoom,0.7)
output: (logic_relay,scene3_move_to_mouth) -> (dynamic_light_tracktrain,SetSpeed,0.4)
output: (logic_relay,scene3_move_to_mouth) -> (scene3_blend_to_3,Trigger,7.0)
output: (logic_relay,scene3_move_to_mouth) -> (dynamic_light_tracktrain2,SetSpeed,0.4)
input scene3_start: scene3_start.EnableRefire()
input scene3_move_to_mouth: intro_version3.FadeTo(255 0.3)
input scene3_move_to_mouth: intro_version3.SetBlendMode(6)
input scene3_move_to_mouth: intro_version3.SetCameraViewEntity(hl1room_brush)
input scene3_move_to_mouth: zoom_to_fov_10_snap.Zoom()
input scene3_move_to_mouth: intro_version3.SetFOV(75)
input scene3_move_to_mouth: viewcontrol_mouth.Enable()
input scene3_move_to_mouth: dynamic_light_tracktrain.SetSpeed(0.2)
TRAIN(dynamic_light_tracktrain), speed to 20.00
input scene3_move_to_mouth: dynamic_light_tracktrain2.SetSpeed(0.2)
TRAIN(dynamic_light_tracktrain2), speed to 20.00
input zap2: zappath.InPass()
input zap1: zappath08.InPass()
input zap3: zappath04.InPass()
input scene3_move_to_mouth: zoom_to_fov_45_20.Zoom()
input scene3_move_to_mouth: intro_version3.FadeTo(0 4)
input zap1: zappath09.InPass()
input zap2: zappath01.InPass()
input zap3: zappath05.InPass()
input dynamic_light_tracktrain: dynamic_light_path6.InPass()
input zap1: zappath10.InPass()
input zap2: zappath02.InPass()
input zap3: zappath06.InPass()
input dynamic_light_tracktrain2: dynamic_light_path4.InPass()
input zap1: zappath11.InPass()
input zap2: zappath03.InPass()
input dynamic_light_tracktrain: dynamic_light_path.InPass()
input zap3: zappath07.InPass()
input zap2: zappath04.InPass()
input zap1: zappath.InPass()
input zap3: zappath08.InPass()

Intro_version3 seems to be mentioned quite a lot, but I think that is the entity name, also, there was mention of env_starfield, specifically getting turned on and off during the sequence.

Hopefully that will serve some insight into what the effect is.
 
Just found a program over and the VERC forums that decompiles Valve maps and I took a look at the trainstation map.

Sadly there is no mention of this entity though :( Env overlay is nowhere to be seen
 
I just pulled everything to do with this intro from intro.bsp and put it into a seperate map file, the intro works fine apart from a few missing camera points (1 missing) but it all works.

Im not sure if releasing it would be legal as it the entities are just ripped straight from that level, but from what I can gather, the whole sequence is done via scene files, choreographed scenes, logic relays, zooms, lights and script_intro along with lights and models etc, all stemming from script_intro.

The file I created has a few changes and errors, mainly to cut down the filesize, the main changes are gunships in place of the test chamber/trainstation, bugs include the scene not ending (its quite useful though to ent_fire each scene to see what each one does) also, the G-Man doesnt look at the camera right. If anyone wants it, just PM me, as until im sure its legal It wont go out publicly.
 
Back
Top