Difference between revisions of "Effect flags"

From Valve Developer Community
Jump to: navigation, search
 
(Flags: link fix)
 
(21 intermediate revisions by 7 users not shown)
Line 1: Line 1:
enum
+
For configuring client-side visual effects.
{
+
 
[[EF_BONEMERGE]] = 0x001, // Performs bone merge on client side
+
== Usage from Hammer ==
[[EF_BRIGHTLIGHT]] = 0x002, // DLIGHT centered at entity origin
+
 
[[EF_DIMLIGHT]] = 0x004, // player flashlight
+
Effect flags can be configured from Hammer. To do so turn off [[SmartEdit]] and add a new keyvalue pair:
[[EF_NOINTERP]] = 0x008, // don't interpolate the next frame
+
 
[[EF_NOSHADOW]] = 0x010, // Don't cast no shadow
+
effects <n>
[[EF_NODRAW]] = 0x020, // don't draw entity
+
 
[[EF_NORECEIVESHADOW]] = 0x040, // Don't receive no shadow
+
'<code>n</code>' is the sum total of the flags you want to use. For example, 66 would mean <code>EF_BRIGHTLIGHT</code> and <code>EF_NORECEIVESHADOW</code>.
[[EF_BONEMERGE_FASTCULL]] = 0x080, // For use with EF_BONEMERGE. If this is set, then it places this
+
 
// ent's origin at its parent and uses the parent's bbox + the max
+
== Flags ==
// extents of the aiment. Otherwise, it sets up the parent's bones
+
 
// every frame to figure out where to place the aiment, which is
+
;1 - <code>[[EF_BONEMERGE]]</code>
// inefficient because it'll setup the parent's bones even if the
+
:Merges bones of names shared with a parent entity to the position and direction of the parent's.
// parent is not in the PVS.
+
;2 - <code>[[EF_BRIGHTLIGHT]]</code>
[[EF_ITEM_BLINK]] = 0x100, // blink an item so that the user notices it.
+
:Emits a dynamic light of RGB(250,250,250) and a random radius of 400 to 431 from the origin.
[[EF_PARENT_ANIMATES]] = 0x200, // always assume that the parent entity is animating
+
;4 - <code>[[EF_DIMLIGHT]]</code>
EF_MAX_BITS = 10
+
:Emits a dynamic light of RGB(100,100,100) and a random radius of 200 to 231 from the origin.
};
+
;8 - <code>EF_NOINTERP</code>
[[Category:Level Design]] [[Category:Programming]]
+
:Don't [[interpolation|interpolate]] on the next frame.
 +
{{warning|Causes crashes.}}
 +
;16 - <code>[[EF_NOSHADOW]]</code>
 +
:Don't create a render-to-texture shadow, does not affect projected texture shadows.
 +
{{note|Same as disableshadows 1.}}
 +
;32 - <code>[[EF_NODRAW]]</code>
 +
:Entity is completely ignored by the client, and stops drawing the entity. Can cause prediction errors if a player proceeds to collide with it on the server, use <code>rendermode 10</code> instead if this is a problem.
 +
;64 - <code>EF_NORECEIVESHADOW </code>
 +
:Don't receive dynamic shadows.
 +
{{note|Same as disablereceiveshadows 1.}}
 +
;128 - <code>[[EF_BONEMERGE_FASTCULL]]</code>
 +
:For use with <code>[[EF_BONEMERGE]]</code>. If set, the entity will use its parent's origin to calculate whether it is visible; if not set, it will set up parent's bones every frame even if the parent is not in the [[PVS]].
 +
;256 - <code>[[EF_ITEM_BLINK]]</code>
 +
:Blink an item so that the user notices it. Added for original Xbox, and really not subtle.
 +
;512 - <code>[[EF_PARENT_ANIMATES]]</code>
 +
:Assume that the [[parent]] entity is always animating. Causes it to realign every frame.
 +
{{Note|Does not function with the "effects" keyvalue.}}
 +
;1024 - <code>EF_MARKED_FOR_FAST_REFLECTION</code>
 +
:Marks the entity to render in fast water reflections.
 +
{{note|Same as drawinfastreflection 1.}}
 +
;2048 - <code>EF_NOSHADOWDEPTH</code>
 +
: Stops [[env_cascade_lighting]] and [[env_projected_texture]] from making shadows for this entity.
 +
{{note|Same as disableshadowdepth 1.}}
 +
;4096 - <code>EF_SHADOWDEPTH_NOCACHE</code>
 +
: Don't cache this entity into shadow depthmaps, update it every frame.
 +
;8192 - <code>EF_NOFLASHLIGHT</code>
 +
:Stops projected textures from making shadows for this entity.
 +
{{note|Same as disableflashlight 1.}}
 +
;{{CSGO add | 16384 - <code>EF_NOCSM</code>}}
 +
:Don't cast shadows from cascade shadow maps.
 +
 
 +
== Functions ==
 +
 
 +
*<code>AddEFlags()</code> / <code>SetEFlags()</code>
 +
*<code>RemoveEFlags()</code>
 +
*<code>GetEFlags()</code>
 +
*<code>IsEFlagSet()</code>
 +
 
 +
[[Category:Flags]]
 +
 
 +
== External links ==
 +
* [http://wiki.sourcepython.com/_modules/entities/constants.html entities.constants]

Latest revision as of 17:34, 8 August 2018

For configuring client-side visual effects.

Usage from Hammer

Effect flags can be configured from Hammer. To do so turn off SmartEdit and add a new keyvalue pair:

effects <n>

'n' is the sum total of the flags you want to use. For example, 66 would mean EF_BRIGHTLIGHT and EF_NORECEIVESHADOW.

Flags

1 - EF_BONEMERGE
Merges bones of names shared with a parent entity to the position and direction of the parent's.
2 - EF_BRIGHTLIGHT
Emits a dynamic light of RGB(250,250,250) and a random radius of 400 to 431 from the origin.
4 - EF_DIMLIGHT
Emits a dynamic light of RGB(100,100,100) and a random radius of 200 to 231 from the origin.
8 - EF_NOINTERP
Don't interpolate on the next frame.
Warning.png Warning: Causes crashes.
16 - EF_NOSHADOW
Don't create a render-to-texture shadow, does not affect projected texture shadows.
Note.png Note: Same as disableshadows 1.
32 - EF_NODRAW
Entity is completely ignored by the client, and stops drawing the entity. Can cause prediction errors if a player proceeds to collide with it on the server, use rendermode 10 instead if this is a problem.
64 - EF_NORECEIVESHADOW
Don't receive dynamic shadows.
Note.png Note: Same as disablereceiveshadows 1.
128 - EF_BONEMERGE_FASTCULL
For use with EF_BONEMERGE. If set, the entity will use its parent's origin to calculate whether it is visible; if not set, it will set up parent's bones every frame even if the parent is not in the PVS.
256 - EF_ITEM_BLINK
Blink an item so that the user notices it. Added for original Xbox, and really not subtle.
512 - EF_PARENT_ANIMATES
Assume that the parent entity is always animating. Causes it to realign every frame.
Note.png Note: Does not function with the "effects" keyvalue.
1024 - EF_MARKED_FOR_FAST_REFLECTION
Marks the entity to render in fast water reflections.
Note.png Note: Same as drawinfastreflection 1.
2048 - EF_NOSHADOWDEPTH
Stops env_cascade_lighting and env_projected_texture from making shadows for this entity.
Note.png Note: Same as disableshadowdepth 1.
4096 - EF_SHADOWDEPTH_NOCACHE
Don't cache this entity into shadow depthmaps, update it every frame.
8192 - EF_NOFLASHLIGHT
Stops projected textures from making shadows for this entity.
Note.png Note: Same as disableflashlight 1.
16384 - EF_NOCSM (in all games since Counter-Strike: Global Offensive)
Don't cast shadows from cascade shadow maps.

Functions

  • AddEFlags() / SetEFlags()
  • RemoveEFlags()
  • GetEFlags()
  • IsEFlagSet()

External links