| Home Page | Recent Changes

KRepulsor

Overview

KRepulsor is the class UT2004 hovering vehicles use to force the vehicle to hover above ground. Also, wheels in UT2004 are basically KRepulsors too, except they have a whole lot more parameters for applying a more realistic force to the main vehicle mesh.

KRepulsors are similar to constraints from UT2003 in that they are permanantly attached to object(s) and affect their location and rotation, by manipulating their physics parameters.

Properties

Main

bool bEnableRepulsion
Turns the repulsor on/off.
bRepulsorInContact
Repulsor is currently contacting something.
vector CheckDir
This is the direction of the repulsor. You could constantly set CheckDir each tick to aim relational to the rotation of your vehicle, but you should know that a non-vertical direction will force your vehicle along some sort of horizontal direction. To make the vehicle more stable, you could use CheckDir={0,0,-1} and bKStayUpright=true (which is what the UnrealEngine2Runtime does). Body-roll still works quite well and there should be no chance of the vehicle rolling over and going upside down.
float CheckDist
This is the repulsor trace distance in Unreal Units.
float Softness
Softness changes alot between 0-1, but can also go alot higher than 1. This is like KStiffness combined with a bit of KDamping from UT2003 constraints. When this is zero, it will be like KStiffness is very high so that the amount of flexibility <CheckDir is very minimal (the amount of force applied is higher at lower % of Checkdir). Also when zero, it would be like KDamping is very high (when the repulsor hits <= CheckDir, it will not 'ricochet' off). When Softness==1, KStiffness is lower (and often will not contain enough force to lift the object all the way up to CheckDir) and KDamping may also be lower (but KDamping will always be present to absorb up-force and stop the repulsor from endless 'bouncing' +/- CheckDir).
float PenScale
Looking at wheel PenScale, I assume this means the penetration scale or 'bounciness' of the Repulsor when bRepulsorInContact. A value such as 100 will repel the object more than a value below 1 (which is the default). If this value is 0, it will have 0 bounciness and the object wont be repelled.
float PenOffset
Not sure about this one either, but I guess it would offset the point at which penetration occurs along the repulsor line in Unreal Units.
transient const pointer KContact
Used internally for Karma stuff - DO NOT CHANGE! But I guess you can if you want ;).

Functions

none

The Unreal Engine Documentation Site

Wiki Community

Topic Categories

Recent Changes

Offline Wiki

Unreal Engine

Console Commands

Terminology

FAQs

Help Desk

Mapping Topics

Mapping Lessons

UnrealEd Interface

UnrealScript Topics

UnrealScript Lessons

Making Mods

Class Tree

Modeling Topics

Chongqing Page

Log In