Your First Entity

From Valve Developer Community
Revision as of 09:28, 28 May 2019 by Loudslappingsounds (talk | contribs) (Menus are not an entity... unless your definition is so vague you'd consider an entire server to be an entity as well.)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
Deutsch Français Português-Brasileiro Русский 简体中文

Everything in Source is an entity. Even the world and the player. Despite this, they all trace back to only a handful of categories: the most common by far are "logical", "model" and "brush".

This series of articles will guide you through the process of creating three new entities. Start with a logical entity, as it is assumed knowledge for the others.

Logical Entity

Do this first.

Logical entities are the simplest of entities because they have no position in the world, no visual component, and only exist to service input from other entities.

In this tutorial we'll create a logical entity that performs the simple task of storing a value and incrementing that value every time it receives an appropriate input. Once the counter has reached a value we'll define, the entity will fire an output.

Model Entity

We will create this moving entity.

Model entities are what we would most typically think of entities as being: they have a visual component, they can move around the map and often they are interactive.

In this tutorial we'll create a model entity that flies randomly around the world.

Brush Entity

These entities are constructed in Hammer from brushes. They are often triggers: volumes in space that fire outputs when a set of conditions are met within them. They can also be moving parts of the world like doors and platforms.

In this tutorial we'll create a brush entity that moves when touched.