Page 1 of 1

Brush Hacking

Posted: Tue Apr 02, 2019 2:22 pm
by mcfarrel
Checking some old UrealEd2 Wikis I run into interresting finding of Editor Commands usable for Brush replication and how these work.

When in need of brush replacement most likely method called Brush Hacking would be used by vast majority of mappers. Manual editiong the brush t3d structure is powerfull tool indeed but it has its limitations. And there are easiest ways to do so.

People who were reading UnrealWiki at beyondunreal (unrealtexture.com nowadays if I am not mistaken) or simillar pages came in contact wit two rather cryptic commands called:

ACTOR REPLACE BRUSH and MAP BRUSH PUT

Yet it seems both ed commands does exactly the same (despite the it is said the ACTOR REPLACE BRUSH command does not work - it does!) Both work in different ways!

In the general both editor commands replace selected brush with builder brush (or reshape selected brush to builder brush shape to be precise).

[glow=yellow,2,300]ACTOR REPLACE BRUSH[/glow]
is suitable for replacing static geometry. Selecting one or more brushes one can easily replace selected brush (or multiple brushes) with the shape of builder brush. The new brushes are placed in the locations of selected brushes.
However it does not affect texture assignment, textures already assigned to brushes to be replaced are the textures that will be used on the new brushes. Only the brush geometry is affected.

It is possible to replace brushes of various solidity (e.g additive solid brush and semisolid brush in one step could be replaced and one that was semisolid is still semisolid but with new brush geometry). In exactly same manner it is possible to replace brushes both subtractive and additive in one step (replacing semisolid aditive CSG and subtractive CSG brush selected brushed on one function call)

However rhis command does not work on movers! The resulting brush is just brush. under Brush Properties>Brush>CsgOper it says it is CSG_Active as Mover should be. But still it is object of class Brush not Mover. It is shown as grey variant of builder brush and is existing as a junk in the map doing probaly nothing (I ma not sure whether or not or how this junk brush does affect build tree, yet).

[glow=yellow,2,300]MAP BRUSH PUT[/glow]
On the other hand can replace exactly one brush at a time. New brush is positioned in the location where the builder brush is located.
The textures assignet to new brush are inherited from the builderbrush. So when copying brush to builderbrush by using MAP BRUSH GET command both brush geometry and textures are taken from the builder brush.

Solidity and CSG behaviour (aditive/subtractive) is taken from existing brush to be replaced.

On the contrary to the ACTOR REPLACE BRUSH command You can replace movers. It is possible to change geometry and textures of existing mover (including additional mover types - subclasses of class mover - even user defined!) to different one.

What is realy beautiful on this command is its capability to copy existing movers keyframes to new mover that is replicated. If the existing mover has any keyframes defined.

All Brush Properties defined it the properties tree of the original brush to be replaced are inherited by new replacement brush: Event, Tag, InitialState, Movement, Timing...
With two exceptions Location (X,Y,Z) and Rotation (Pitch,Yaw,Roll) - these are inherited from builder brush

McF