This article's documentation is for anything that uses the Source engine. Click here for more information.

Env bubbles: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
(raw; needs cleanup)
 
 
(57 intermediate revisions by 26 users not shown)
Line 1: Line 1:
{{cleanup}}
{{lang|Env bubbles}}{{tabs|env_bubbles|goldsrc=1|source=1|main=source}}
env_bubbles
{{CD|CBubbling|file1=effects.cpp}}
[[File:Env bubbles.gif|thumb|280px|<code>env_bubbles</code> in game, with density set to 6 and frequency set to 2.]]
{{this is a|brush entity|name=env_bubbles}} It is used to create a volume in which to spawn rising bubbles. The number and frequency of bubbles can be adjusted.


An entity used to create a volume in which to spawn bubbles.
<code>env_bubbles</code> is obviously intended for use in water, but it can be used outside of water if such an effect is desired.


KEYS
{{bug|hidetested=1|Tying a [[Triggers#Level design|toolstrigger]] brush to this entity will result in the entity being rendered in-game as a raw brush of said material, unless VBSP was compiled with {{code|-nodrawtriggers}}. It should be set to Nodraw or Invisible instead. {{code fix|In the spawn function, set [[rendermode]] to {{mono|kRenderTransTexture}} (2) like its {{goldsrc}} counterpart, or better yet, set [[EF_NODRAW]]. The bubbles themselves are sent to clients using [[temporary entities]], so they will still be rendered.}} }}
{{Note|Used bubble sprite: <code>sprites/bubble.vmt</code>}}
{{note|In order to make it work in {{portal2|1}}, the bubble sprite material (<code>sprites/bubble.vmt</code>) and texture (<code>sprites/bubble.vtf</code>) must be located in the /material/sprites folder and the [[TeamSpen's Hammer Addons]] installed, or at least its portal2.fgd located in the /Portal 2/bin folder.}}
__NOTOC__
==Keyvalues==
{{KV Targetname}}
{{KV|Bubble density|intn=density|integer|Bubble Count in Volume.}}
{{KV|Bubble frequency|intn=frequency|integer|Bubble emission frequency, in bubbles per second, values include negative numbers E.G. -10}}
{{KV|Speed of Current|intn=current|float|The speed of the water current in the volume, used to move the bubbles.}}


Name targetname <target_source> The name that other entities refer to this entity by.
==Inputs==
{{I|Activate|Activates the bubbles.}}
{{I|Deactivate|Deactivates the bubbles.}}
{{I|Toggle|Toggles the bubbles on and off.}}
{{I|SetDensity|param=integer|Sets the bubble density.}}
{{I|SetFrequency|param=integer|Sets bubble emission rate in bubbles per second.}}
{{I|SetCurrent|param=integer|Sets current speed in inches per second.}}
:{{note|Even though this input writes to a float, it only takes integer values.{{confirm|It might be possible to [[AddOutput]] the {{mono|current}} (or {{mono|speed}}) KVs, as all this input does is set the {{mono|m_flSpeed}} variable.}} }}


Parent parentname <target_destination> The name of this entity's parent in the movement hierarchy. Entities with parents move with their parent.
==Flags==
{{fl|1|Start Off}}


Bubble density density <integer>
==See also==
*{{ent|env_embers}} - A similar entity.


Bubble frequency frequency <integer>
[[category:SFX_Brush_Entities]]
 
Speed of Current current <integer> The speed of the water current in the volume, used to move the bubbles.
 
spawnflags spawnflags <flags>
 
 
INPUTS
 
Kill Removes this entity from the world.
 
KillHierarchy Removes this entity and all its children from the world.
 
AddOutput <string> Adds an entity I/O connection to this entity. Format: <output name> <targetname>:<inputname>:<parameter>:<delay>:<max times to fire (-1 == infinite)>. Very dangerous, use with care.
 
FireUser1 Causes this entity's OnUser1 output to be fired.
 
FireUser2 Causes this entity's OnUser2 output to be fired.
 
FireUser3 Causes this entity's OnUser3 output to be fired.
 
FireUser4 Causes this entity's OnUser4 output to be fired.
 
SetParent <string> Changes the entity's parent in the movement hierarchy.
 
SetParentAttachment <string> Change this entity to attach to a specific attachment point on its parent. Entities must be parented before being sent this input. The parameter passed in should be the name of the attachment.
 
ClearParent Removes this entity from the the movement hierarchy, leaving it free to move independently.
 
Activate Activates the bubbles.
 
Deactivate Deactivates the bubbles.
 
Toggle Toggles the bubbles on and off.
 
SetDensity <integer> Sets the bubble density.
 
SetFrequency <integer> Sets bubble emission rate in bubbles per second.
 
SetCurrent <integer> Sets current speed in inches per second.
 
 
OUTPUTS
 
OnUser1 Fired in response to FireUser1 input.
 
OnUser2 Fired in response to FireUser2 input.
 
OnUser3 Fired in response to FireUser3 input.
 
OnUser4 Fired in response to FireUser4 input.

Latest revision as of 08:12, 14 November 2025

English (en)中文 (zh)Translate (Translate)
C++ Class hierarchy
CBubbling
CBaseEntity
C++ effects.cpp
env_bubbles in game, with density set to 6 and frequency set to 2.

env_bubbles is a brush entity available in all Source Source games. It is used to create a volume in which to spawn rising bubbles. The number and frequency of bubbles can be adjusted.

env_bubbles is obviously intended for use in water, but it can be used outside of water if such an effect is desired.

Icon-Bug.pngBug:Tying a toolstrigger brush to this entity will result in the entity being rendered in-game as a raw brush of said material, unless VBSP was compiled with -nodrawtriggers. It should be set to Nodraw or Invisible instead.
Cpp.pngCode Fix:In the spawn function, set rendermode to kRenderTransTexture (2) like its GoldSrc counterpart, or better yet, set EF_NODRAW. The bubbles themselves are sent to clients using temporary entities, so they will still be rendered.
Note.pngNote:Used bubble sprite: sprites/bubble.vmt
Note.pngNote:In order to make it work in Portal 2, the bubble sprite material (sprites/bubble.vmt) and texture (sprites/bubble.vtf) must be located in the /material/sprites folder and the TeamSpen's Hammer Addons installed, or at least its portal2.fgd located in the /Portal 2/bin folder.

Keyvalues

Name (targetname) <string>
The name that other entities refer to this entity by, via Inputs/Outputs or other keyvalues (e.g. parentname or target).
Also displayed in Hammer's 2D views and Entity Report.
See also: Generic Keyvalues, Inputs and Outputs available to all entities
Bubble density (density) <integer>
Bubble Count in Volume.
Bubble frequency (frequency) <integer>
Bubble emission frequency, in bubbles per second, values include negative numbers E.G. -10
Speed of Current (current) <float>
The speed of the water current in the volume, used to move the bubbles.

Inputs

Activate
Activates the bubbles.
Deactivate
Deactivates the bubbles.
Toggle
Toggles the bubbles on and off.
SetDensity <integerRedirectInput/integer>
Sets the bubble density.
SetFrequency <integerRedirectInput/integer>
Sets bubble emission rate in bubbles per second.
SetCurrent <integerRedirectInput/integer>
Sets current speed in inches per second.
Note.pngNote:Even though this input writes to a float, it only takes integer values.
Confirm:It might be possible to AddOutput the current (or speed) KVs, as all this input does is set the m_flSpeed variable.

Flags

Start Off : [1]

See also