Projectors

From Oldunreal-Wiki
Jump to navigation Jump to search
MapProjectorActor.png

MapProjector
Subclass of: Actor> Projector
Included since: 227b
Two projectors (one selected) used to display posters in DmRiot.

A Projector is exactly what its name suggests: something which projects images. Maps the texture it contains over all surfaces in its field of view. It can be used for light rays, posters, magical symbols glowing on stone arches and so on. A projector is assigned a texure, a field of view (FOV), and displays the texture in the desired direction. By adjusting its FOV, it will project the texture in a cone-like fashion (as a real light-projector), which means the projected image will be larger the further away the receiving surface is from the projector.

Usage

The actual actor used as projector is MapProjector, a subclass of Projector. The other sucblasses of the main projector class are intended for decals created by projectiles (think rocket blasts), shadows of decoration and the shadow of the player himself if real-time shadow is used. These actors are not meant for use in a map and cannot be placed.

The MapProjector actor (from now on referred to as Projector) looks like a small white camera on a grey circle. After adding it to the map, you can see that it is directional and already has a zone of action: the white rectangular box before it. By moving the projector until the rectangle ends inside a wall, you can see it already projects the basic pawn icon.

By default, projectors project the same Pawn actor icon as most new 227 actors. The first step to create a nice projector is to change this. Select whatever you want in the texture browser, or import what you need, and in the MapProjector's properties, un the Projector tab, set your image in the appropriately named ProjectTexture. Immediately, the white box of projection (from now on referred to as the Projection Box) changes to match the size of your texture :

ProjectionBoxes.jpg

Notice that there are two tabs that will be relevant when dealing with MapProjectors' properties: MapProjector and Projector.

MapProjector

  • OnlyAttachStaticActors: Default, True: Determines whether or not the projection is displayed on moving actors going through the projection box. If set to False, the mover will receive the projection. If set to True, only non-moving objects will receive projections from this projector, and moving actors will be ignored. Notice however that weapons, items and players will never be affected by projectors. This property is also not valid for movers based on brushes: only Static-Mesh-based movers are affected.
  • IgnoreAttachActorTag: Allows you to enter the tag of an actor that will not receive the projection. It can be a moving or still Static-Mesh or mesh, but it will have no incidence on Brushes.

To make things clear, a brush will always receive the projection, except if it is a brush-based mover - in which case it will never be subject to projection - Meshes and Static-Meshes will receive projection, except if the IgnoreAttachActorTag of the projector matches their tags. Movers made with static-meshes will need OnlyAttachStaticActors to be set to true to receive projection during their movement.

Projector

Notice

  • If a projector seems to be non-functionnal for no reason after loading a map in the editor, simply select the MapProjector.
  • Even with RealTime Preview enabled, the white zone-of-effect box will not move around in the 3D viewport until you actually release the CTRL key to move the actor.
  • Projectors do not have occlusion testing: All surfaces facing the projector will have the texture mapped unto them, even if there is an obstacle in the way. Be careful when adjusting the MaxDistance setting of a projector to avoid finding projections repeated on objects behind a wall.
  • Projectors may not work in Software mode. Use OpenGl for optimal results.


Most properties of the projector are in the projector tab. Here are properties to set the texture, the projection box and the size of the projection.

Three projectors with the same with different FOVs.
Three projectors with different ProjectorStyles.
  • bGradualFade makes the projection more or less opaque as the surface is more or less close to the projector. The texture is totally opaque at the projector level and gradually fades until the end of the projection box is reached (where the texture is 100% translucent).
  • bProjectActors: If set to true, allows the projection on meshes.
  • bProjectBSP: If set to true, allows the projection on BSP surfaces.
  • bProjectBSPBackFaces and its corollary bProjectMeshBackFaces allow the projection on surfaces oriented in the same way as the projector. Usually, when you project a texture, the surface receiving the projection has an opposite direction to that of the projector: they are facing each other. Think of someone pointing a flashlight behind you: your back will be facing the flashlight and receiving the projection. Your face, however, is facing the same direction as the flashlight and thus remains in the shadow. When activating these two properties, even your face will be lit by the light, as if it went through you. it basically makes the projection appears on all surfaces between the projector and the end of projection box, not only the surfaces looking "at" the projector.
  • bUseBetterActorAttach: by default, this property is activated and allows the projector to use an accurate system for its projection. When set to false, it will use a slightly less accurate but less ressource-intensive system. Performance gain, however, is negligible.
  • FOV: Field of Vision. By default, this setting is set to 0, and the projection box has the same width and height along its whole lenght. When the FOV goes up, the projection bow becomes a cone with a larger base. (see illustration).
  • MaxDistance: Maximum reach of the projection box in Unreal units.
  • ProjectorScale: Scale of the texture at the level of the projector actor, with 1 is the full size, 0.5 half the size and 2 double-size. This is the size at the projector level only, not the size of the projection (except if the Field of View is 0).
  • ProjectStyle: Style of display of the texture. STY_None and STY_Normal will simply display the texture as it is in the texture browser. STY_Masked uses the Alpha mask if set in the texture. STY_Translucent makes the dark parts of the texture transparent and the light parts opaque. STY_Modulated makes the dark parts of the texture opaque and the light parts transparent (the opposite of Translucent). STY_AlphaBlend uses the Alpha channel for special blending.
  • ProjectTexture: The texture that is projected.