========================== DemoCams - Black Screening ========================== 1. Information 2. Usage 3. Config Variables 4. Usage Example 5. Additional Information 6. History -------------- 1. Information -------------- Black-screening is similar to the concept of blue-screening (or green-screening) in movie production. It allows you to play a demo, but mask out the things that you do not want to see, while maintaining the things that you do want to see. You can then create AVI dumps from the demos. This allows such things as playing a demo, and seeing only the player (no map items, weapons, etc. - no map for that matter!). This can allow for cool effects when creating q3 movies. -------- 2. Usage -------- The way this is accomplished is by using a special map called DF-BLACK.PK3. This map is a large map (60k cube) that has no textures (actually, black textures). You can force q3 to play a demo in a different map than where the original demo was created. This is done by naming a bsp with the same name as the original map. Since the black map is very large, most normal map demos will easily fit into the df-black bsp (if they don't, you'll get the hall-of-mirrors (HOM) effect). This will hide the normal map textures during demo playback. The second thing that is done is to mask out (or hide) the items that you do not want to be visible. This is accomplished by using 2 cvars (df_demos_HideLocalEntities and df_demos_HidePacketEntities). Now you can play the demo, and it will play back in the black map, and hide the desired entities. You can then do screencaptures. *** DF-BLACK.BSP can be found in the MAPS folder. *** See the "Usage Example" section below ------------------- 3. Config Variables ------------------- -------------------------------------------------- \df_demos_HideLocalEntities [ DEFAULT: 0 RANGE: 0 TO N (mask) ] - hides local entities Add the following values to hide the desired entities: LE_MARK 1 LE_EXPLOSION 2 LE_SPRITE_EXPLOSION 4 LE_FRAGMENT 8 // gibs and brass LE_MOVE_SCALE_FADE 16 // water bubbles LE_FALL_SCALE_FADE 32 // gib blood trails LE_FADE_RGB 64 // teleporters, railtrails LE_SCALE_FADE 128 // rocket trails LE_SCOREPLUM 256 // team arena - not used LE_KAMIKAZE 512 LE_INVULIMPACT 1024 LE_INVULJUICED 2048 LE_SHOWREFENTITY 4096 511 = all (1+2+4+8+16+32+64+128+256) (not including team arena items) -------------------------------------------------- \df_demos_HidePacketEntities [ DEFAULT: 0 RANGE: 0 TO N (mask) ] - hides packet entities Add the following values to hide the desired entities: ET_GENERAL 1 ET_PLAYER 2 ET_ITEM 4 ET_MISSILE 8 ET_MOVER 16 ET_BEAM 32 ET_PORTAL 64 ET_SPEAKER 128 ET_PUSH_TRIGGER 256 ET_TELEPORT_TRIGGER 512 ET_INVISIBLE 1024 ET_GRAPPLE 2048 // grapple hooked on wall ET_TEAM 4096 ET_EVENTS 8192 // any of the EV_* events can be added freestanding 16383 = all (1+2+4+8+16+32+64+128+256+512+1024+2048+4096+8192) ---------------- 4. Usage Example ---------------- Using DF-BLACK.BSP 1. Create a maps folder under the mod (defrag) folder. 2. Copy (out of the pk3), df-black.bsp to this folder. 3. Now, for every demo that you want to do this technique with, you will have to copy DF-BLACK.BSP, and change the name to the proper map for the demo (opc1.bsp, opc2.bsp, etc.) 4. Place these "faked" maps into a pk3. Put them in the "maps" folder inside a zip, and rename the zip to pk3 5. Name the pk3 "zzz_Maps.pk3" Inside zzz_Maps.pk3 should be: maps\opc1.bsp maps\opc2.bsp 6. Load a demo and check it out. Now the demo should be playing inside an all black map. 7. Now, if you would like to hide some entities, say explosions, set: \df_demos_HideLocalEntities 6 // (2+4) 8. To hide all entities except the player, use: \df_demos_HideLocalEntities 511 // (all) \df_demos_HidePacketEntities 16381 // (16383 (all) - 2 (player)) ------------------------- 5. Additional Information ------------------------- You can also use different camming techniques with black-screening. Essentially, what you want to do is create your camming movements by recording your camming to a ghost, and then play the ghost back during the demo. *** See the "readme-[Ghosts-DemoCamSaving].txt" file for how to save democamming to a ghost. Essentially what you want to do is record your camming during the demo as your normally would, but then use the ghost to play back your camming, inside the black map. This will give you black-screening with different camera angles, etc. ---------- 6. History ---------- 1.90 - Allow entity hiding even if cheats are off 1.80 - Feature introduced