Unreal Developer Network Content Creation
Welcome to the Unreal Developer Network The Engine Unreal Powered Content Creation Technical Playstation2 Xbox Gamecube Licensee Log In

Content Creation

Content Creation home

Documents listed below, but not hyperlinked, are restricted to engine licensees only.

As certain texts become relevant, due to released games using that technology, new documents will be made available. Check back often!
 
Getting Started
   - WhatToReadFirst
   Support
   - UnEdit (mailing list)
   - UnEditTraffic (summaries)
   - UnDevIRC (chat)
   - UnDevIRCTraffic (summaries)
   - UnrealEdSux0rs (bug list)
   Engine Prerequisites
   - BasicConcepts?
   - TextureSpecifications
   - TextureComparison
   - Etc.

General Editor
   Basics
   - IntroToUnrealEd
   - UnrealEdInterface
   - RotationGizmo
   - UnrealEdKeys
   - BrushClipping
   - VertexEditing
   - BoxSelection
   - ShapeEditor
   - ExampleMaps
   - TriggersTutorial
   - WorkFlow
   Primitives
   - BspBrush
   - MirrorsAndWarpZones
   - HardwareBrush
   - MoversTutorial
   - UKXPackagesTutorial
   - TerrainTutorial
   - VolumesTutorial
   - LightingTutorial
   - ProjectiveTutorial
   - MaterialTutorial
   - CollisionTutorial
   - FluidSurfaceTutorial
   Animation
   - AnimNotifies
   Particles
   - EmittersTutorial
   - EmittersExamples
   New Particle Editor
   - ParticleSystems
   - ExampleParticleSystems
   Matinee br>    - MatineeTutorial
   - MatineeExample
   - MatineeDemoOpening
   - MatineeDemoDropship
   - Matineedemosoldiers?
   - SampleMatineeTips
   Scripted Sequences
   - ScriptedSequenceTutorial
   - ScriptedSequenceActions
   - AIControllers
   Techniques
   - LevelOptimization
   - GroupsBrowser
   - NavigationAI
   - VertexBlendingTutorial
   - ConvertingContent739To829

Tools
   - ActorX
   - UmodWizard
   - UnrealModelTutorial
   - UnrealModeling
   - UnrealTexturing
   - ActorX
   - ActorXMayaTutorial
   - ActorXPhysiqueNotes
   - SkeletalSetup
   - WarfareSkeletalNotes
   - ObjToASEConverter
   - MayaBrushExport
   - VertexAnimationWith3ds2unr

mathengine.gif
Karma Physics
   - KarmaReference
   - KarmaExample1
   - KarmaExample2
   - ImportingPhysicsAssets
   - RagdollsInUT2003
   - KarmaExampleUT2003
   - ExampleMapsKarmaColosseum

secretlevel.gif
PlayStation2 and GameCube
   - ConsoleDevelopment

Contribute!
You can create a new page, and then you can edit this list to add it to the categories, as well as edit the Content Creation homepage to tell everyone about it!

Make Requests!
You can also stop by the UdnStaff page to see what we're working on, and edit it to add your own document requests.


Please take note! For mod developers working with Unreal Tournament 2003, this documentation is meant to be a starting point for your own explorations into UT2003, not a definitive guide. There will be differences between the documentation here and the product in your hands, and you may have to figure out quite a bit for yourself. Check out the Unreal Tournament 2003 page in the Unreal Powered area for links to community sites if you're having problems. UDN is a licensee support site, and cannot provide technical support or game-specific assistance to end users.

ImportingPhysicsAssets

Licensees can log in.

Interested in the Unreal engine? Check out the licensing page.

Questions about UDN itself? Contact the UDN Staff.

ImportingPhysicsAssets

Last Updated by Chris Kline (TheLostTeam) 16 December 2002 with corrected details on how to acquire KAT.
Original Author was Ian Tierney (ian.tierney@mathengine.com) 16th April 2002.

NOTE - This tutorial is for an earlier build of the Unreal Engine, NOT for UT2003. Things have changed a bit and I will try and get a nice UT2003-centric ragdoll tutorial done as soon as I get a chance.

Thanks for your patience!

  • ImportingPhysicsAssets
    • Overview
      • Using KAT
      • Using Physic assets
      • Ragdoll Example
      • Things to watch out for

Overview

We've already seen how to create simple physics bodies and place them into a level, but if you want to create more complex assets with multiple joints etc. you can use the Karma Authoring Tool or KAT.

In this tutorial I'm going to briefly discuss creating complex physical assets and using them in Unreal but I've also included a.pdf with tutorials that show you how to build a crane and a ragdoll. A Physics Asset is a single physical system than can be placed in a level. The only use for Karma Asset's (stored .ka files) in Unreal currently is 'rag-doll' physics.

KAT is free with Karma. Version 1.2 of KAT is available on the udnftp.epicgames.com FTP site in the Misc/Karma directory. Version 1.3 currently available only through from MathEngine; see the download page on www.mathengine.com for details.

KAT outputs .ka files containing Physics assets. Unreal can then load any assets from .ka files in the KarmaData directory. You can email kat@mathengine.com with KAT support queries.

Using KAT

KAT.jpg

KAT is a tool for the creation of complex physical assets.

Using KAT you can:

  • create and adjust physical properties such as mass.
  • You can also fit/adjust collision geometries to graphics.
  • You can join together multiple parts with joints and motorise joints to create physical machines.
  • When you've build a physics asset you can simulate it and tweek it to see how it acts.

I've included a .pdf file with detailed tutorials showing you how to build a crane and a ragdoll. There are some .ka files for you to try included in the KarmaData directory with build 927. For the remainder of this tutorial I will discuss getting the assets you created with KAT into Unreal.

Using Physic assets

Note that a single .ka file can contain multiple Assets. For example "927\KarmaData\Ragdolls.ka" contains two ragdoll assets, each of which can be used seperatly.

An important issue to be aware of is scale. You must be carefull that the physics paramters are appropriate for your game. To ensure this keep the following in mind:

  • Things in KAT are 50 times smaller than in Unreal. A scale factor of 0.02 will scale approriately.

  • Also scale for your graphics. So if you use a scale factor of 8 for your graphic in Unreal, scale your graphics by 0.16 (0.02 x 8) when you import the .PSK in KAT. The graphics scale factor should include the actors DrawScale, DrawScale3D, and any scaling on import.

  • Be consistent, use the same scaling factors through out.

  • The Largest mass to smallest mass ratio should not exceed 100.

The sizes of Physics paramters (such as mass and inertia tensors) used in KAT should be those you wish to use in your level. This means that KAT can give a good preview of the behavior you can expect. Scaling physics parameters on import into, UnrealEd is not recommended.

The below picture shows scale option on importing a .PSK into KAT. The scale factor should be (Unreal Scale Factor X .02). The dept paramter allows you to clip the skeletons hierarchy on import.

scalingOnImport.jpg

Ragdoll Example

I'm now going to show you how to get the ragdoll into your unreal level. See the attached KAT tutorial for how to create a ragdoll from a .psk file.

Theres a script called RagDoll_COGGrunt.uc in 927 build you'll find it here "\927\WarClassLight\Classes"

The two lines you'll have to change are as follows:

  • Mesh=SkeletalMesh'COGStandardSoldiers.COGGruntMesh'

This is the mesh used by the ragdoll (COGStandardSoldiers is a ukx file), you can just change this so that it uses your desired mesh.

  • KSkeleton="soldier2"

soldier2 is one of the assets stored in "927\KarmaData\RagDolls.ka" but again you can change this so that it uses any asset inside .ka file you put in "927\KarmaData".

You can now change the script to use your mesh and your ragdoll asset. Compile the script and just place the ragdoll in a level.

Things to watch out for

Like I said earlier the main problems are with scale but if you're consistent and keep you graphics and phsyics in an appropriate scale for your level you should be OK. Heres a couple of common problems, both of which can are caused by bad scaling.

  • After placing a ragdoll in a level it disappears, when you shoot it.

If this happens and you check the log you'll get the following

"Log: (Karma:) Bad transform detected." Basically this means your Mass is way out of scale. Keep to the formentioned scaling rules and you should be OK.

  • Ragdoll has poor collision in the level but the collison you fitted in KAT seemed to be OK.

Again this is most likley to be the wrong scaling between your graphics and your collision model. To see if this is the case set the rendermode to wireframe and on the top menu select karma physics>collisions from the menu. This will draw collision geometry. (Alternativly type kdraw collison in the console).

DrawingCollision.jpg

You can then see if your collision models are in scale with your graphics. If they are not be sure to include the correct scaling factor in KAT.

Thats it! If you've any questions (about karma physics rather than life in general)e-mail me: ian.tierney@mathengine.com. If need a copy of KAT e-mail rhian.steel@mathengine.com Support queries for KAT should go to kat@mathengine.com. Thank you and Good evening.

Attachment: Action: Size: Date: Who: Comment:
KAT_User_Guide_prebeta_0_2.pdf action 2350031 16 Apr 2002 - 15:22 KarmaUnrealIntegrationTeam  


ImportingPhysicsAssets - r1.9 - 16 Dec 2002 - 16:48 GMT - Copyright © 2001-2003 Epic Games
Unreal Developer Network Content by those crazy Perilith guysSite design and art by 2 design