Entity: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
mNo edit summary
mNo edit summary
Line 1: Line 1:
{{Language subpage}}__NOTOC__
{{Language subpage}}__NOTOC__
{{misleading}}
{{misleading|page}}
An object defined within {{src|4}} or {{source2|4}} as having characteristics which differentiate it from "the [[worldspawn|world]]" (world brushes).
An object defined within {{src|4}} or {{source2|4}} as having characteristics which differentiate it from "the [[worldspawn|world]]" (world brushes).
== Types of entites ==
== Types of entites ==

Revision as of 14:51, 26 May 2024

English (en)Deutsch (de)Español (es)Hrvatski (hr)Português (pt)Русский (ru)中文 (zh)Translate (Translate)
Info content.png
This page may have misleading content. Please help clarify the content.
For help, see the VDC Editing Help. Also, remember to check for any notes left by the tagger at this article's talk page.

An object defined within Source Source or Source 2 Source 2 as having characteristics which differentiate it from "the world" (world brushes).

Types of entites

Types available in Info
By Form
Brush entity Source Source and earlier
English (en)Deutsch (de)Español (es)Hrvatski (hr)Português (pt)Русский (ru)中文 (zh)Translate (Translate)

A Brush Entity is an entity type in the GoldSrc GoldSrc and Source Source engines, created by tying an entity to a model made out of BSP geometry (brushes) in the map, giving the brush a specific effect or ability defined by the entity tied to it. (The default shortcut is Ctrl + T after selecting a brush)

Purpose and Uses

Brush entities are used for entities that require an area or trigger zone to be touched, hit, or used in order to perform a specific task.

Another use of brush entities is to create a physical object that can move, such as an elevator, or a door (can be made by many brushes selected together and tied as a whole to a brush entity, forming a brush model).

A great example of a brush entity that implements both of these designs is a func_button, which requires a brush to specify the area the player must press, touch, or shoot to activate the button; the button can be made using any shape of brush, or even a group of brushes, and can be textured to give the appearance of a real button.

Brush entities such as the func_button have special features that affect the physical brush they're tied to, such as moving the brush in a general direction when activited, giving the effect of the button being pushed in and then popping back out.

Another example of a brush entity is a trigger_multiple which can fire some outputs once the player walks into its area of effect (the volume of which is defined by the volume of the original brush used to make the trigger).

Tip.pngTip:Many brush entities work when spawned dynamically via commands/vscript and setting keyvalue solid 2 and desired mins/maxs after the entity has been spawned. This is useful when needing to create non-visual brush entities without recompiling the map. It's also possible to reuse bmodel of other brush entities used in the given map.
PlacementTip.pngExample:Making trigger_multiple by console commands which will break any prop_physics that touch it
ent_create trigger_multiple targetname test spawnflags 1032 OnStartTouch "!activator,Break";
ent_fire test addoutput "solid 2";
ent_fire test addoutput "maxs 100 100 100";
ent_text test; ent_bbox test;

(not all games' ent_create command supports more parameters beyond classname in which case they need to be set via ent_fire addoutput)

General types

Trigger brush entities

These are invisible during normal play and fire outputs or affect entities when they touch the trigger's brush. They are subclasses of CBaseTrigger and their visibility can be toggled using showtriggers_toggle if their brush used a visible texture like toolstrigger.

Nav controlling brush entities

These aid in controlling or creating the navmesh and are also invisible.

Visual brush entities

Brush entities whose brush is intended to be seen by the player and may add some special functionality to it.

Other

See also

Point entity Source Source and Source 2 Source 2
English (en)Deutsch (de)Español (es)Hrvatski (hr)Português (pt)Русский (ru)中文 (zh)Translate (Translate)
Icon-under construction-blue.png
This is a draft page. It is a work in progress open to editing by anyone.
Remember to check for any notes left by the tagger at this article's talk page.

Point Entity is usually defined as simply an entity that is not a brush entity i.e. entity that is created by Hammer Entity Tool on specific point on a grid instead of tying brushes to an entity. More meaningful definition for a point entity is an entity that doesn't render a 3D model and its position in the world affects its functionality. It still may have a visual component (env_sprite, keyframe_rope) or create a visual component (infodecal, info_particle_system) but most of them are without one (ambient_generic, info_target, point_hurt, info_teleport_destination, info_elevator_floor). Other types of entities that are also created on a specific point and are usually referred to as point entity are model entities and logical entities. Point entities by these standards are most of the time subclasses of CPointEntity.

General types

Target of other entities

These serve mainly to provide their position for other entities that target them.

Spawners

Their position serves as a place where to spawn player/npc/weapon.

Viewcontrol

Visual

Sound

Lights

Other

More[Todo]

See also

Mesh entity Only in Source 2 Source 2 Mesh entity/overview
Path entity
English (en)Deutsch (de)Español (es)Hrvatski (hr)Português (pt)Русский (ru)中文 (zh)Translate (Translate)

Path entities are a type of entity recently added to the tools. They can be created with Path Tool (Shift + P).

Todo: Path entities may not be fully functional in SteamVR Home. Document which path types work.


Stub

This article or section is a stub. You can help by expanding it.

By Internality
Internal entity In all Engines Internal entites/overview
Non-Internal entity A Non-Internal entity is when there is no entity in the FGD by default. an FGD tells Hammer Hammer what entities exist in the engine, and what keyvalues, inputs, outputs, and flags they have.
If information for an entity is missing from an FGD, it can be manually added through Hammer without it. FGD info is not required to use anything, but it does help make the mapping process much simpler.
See Non-FGD features for more info.

Limitations

For reasons of memory allocation, there is a limit to the number of entities GoldSrc GoldSrc/Source Source/Source 2 Source 2 can manage at once.

The combined size (in bytes) of a map's entity data should also be considered, even if the number of entities is within safe limits. Large amounts of entdata can take a noticeably long time to transmit from server to client, and may lead to crashes.

For more info, see Entity limit.

See also