UE3 - UDK Help for beginner

  • Two Factor Authentication is now available on BeyondUnreal Forums. To configure it, visit your Profile and look for the "Two Step Verification" option on the left side. We can send codes via email (may be slower) or you can set up any TOTP Authenticator app on your phone (Authy, Google Authenticator, etc) to deliver codes. It is highly recommended that you configure this to keep your account safe.

Wooojciech1983

New Member
Aug 17, 2011
1
0
0
Hi,

I am a beginner with unreal engine, just starting learning. I need same help with this simple task.
I need to make an object that can be placed in the editor. This object needs to have one visible sub-object and 2 invisible sub-objects - cylinders responsible for collisions (left and right). The main object needs to log actions when collision happens ('left collision', right collision').
How to get started with it?
Can this be done directly in the UDK editor? Or I need to create a custom mesh in 3d tool (3D Studio, Maya, Z-Brush) which can be imported to the UDK editor?
Do I need to do some coding in unreal script? How the unreal script code is linked with the components in the UDK editor?
Any help appreciated.

Thanks
 
Last edited:

KingJackaL

New Member
Sep 11, 2005
3
0
0
You can do this through Unreal Script. To make it placeable in the editor, just just need to add 'placeable' to the tag on the class, like so:

Code:
class WOOJ_Placeable extends Actor placeable;

Then to give it an icon in UDK editor (otherwise it's very hard to select in the map editor, as it's effectively invisible), you'll need something like:

Code:
defaultproperties
{
	Begin Object Class=SpriteComponent Name=Sprite
		Sprite=Texture2D'SOMETEXTUREPATH'
		HiddenGame=true
	End Object
	Components.Add(Sprite)
}

The first collision component can be done with something like:

Code:
defaultproperties
{
	Begin Object Class=CylinderComponent Name=MyCylinderComponent
	End Object
	CollisionComponent=MyCylinderComponent
	Components.Add(MyCylinderComponent)
}

Additional collision components can be added with something like:

Code:
// might be handle to have a local reference for your code
var editconst PrimitiveComponent OtherCollisionComponent;

defaultproperties
{
	Begin Object Class=CylinderComponent Name=MyOtherCylinderComponent
		AlwaysCheckCollision=true
	End Object
	OtherCollisionComponent=MyOtherCylinderComponent
	Components.Add(OtherCollisionComponent)
}

Those components will get Tick()'d like all components, and so will trigger Touch() etc on the Actor.