Making a own game

Hello, first I want explain why I get idea for developing a own game on UDK.
Okay so Unreal Engine 4 is too powerful for my device, so I looking for Latest Engine with Render Directx 9.
My Spec:
Intel 5 3rd Gen (2.6Ghz)
Intel Graphic 4000 (1696MB/Dedicated 64mb)
RAM - 8GB
1TB - all avaiable memory
Win7

Even with that hardware I can’t develop my future project for open world games, which appears every month on Steam Store.

So I will start of small project, then develop to another version.

Expecially I had an idea for ‘Dark Rooms’ title.
If you want ask, it will be Horror-Survival genre.

Hello my friend.

Welcome to UDK Forums!

Yeah, if you want to develop a game and you don’t have a current gen pc (my PC is a ASUS ROG Notebook from 2010), UDK is an excellent option, and the final game will run on almost any PC, even older ones (from the times of Windows XP).

Cheers and good luck!

Thanks you.
Now I have a some issue with reimport or add/assign Skieletal Mesh to the Actor player.
I looking on some Youtube channel to resolve my problem and even in UDK documentation but with no result. I really need quick answer from someone who working a long time like you.

Expecially it’s Fbx format, no Psk and it has all bones in correct position.

Hello my friend.

There is a lot of ways to assign a custom skeletal mesh to the player (Pawn).

I always prefeer the most simple way.

I am using the default UT3 Skeleton, I rig my custom chars to the UT3_Male Template:

https://docs.unrealengine.com/udk/Three/UDKCustomCharacters.html
https://docs.unrealengine.com/udk/Three/rsrc/Three/UDKCustomCharacters/UT3_Male.max

I use 3dsmax2009.

Supposing your game is also in 3rd person (I assume it is) you can use just this custom pawn class. What you basically needs to do is change defaultMesh. After you import the mesh into udk, you right-click on the imported asset inside the content browser, select copy full name to clipboard, then you paste on the defaultMesh field under the default properties of the custom Pawn Class (and recompile scripts):


class MyPawn extends UTPawn;

var SkeletalMesh defaultMesh;
var MaterialInterface defaultMaterial0;
var AnimTree defaultAnimTree;
var array<AnimSet> defaultAnimSet;
var AnimNodeSequence defaultAnimSeq;
var PhysicsAsset defaultPhysicsAsset;

//override to do nothing
simulated function SetCharacterClassFromInfo(class<UTFamilyInfo> Info)
{
  Mesh.SetSkeletalMesh(defaultMesh);
  Mesh.SetMaterial(0,defaultMaterial0);
  Mesh.SetPhysicsAsset(defaultPhysicsAsset);
  Mesh.AnimSets=defaultAnimSet;
  Mesh.SetAnimTreeTemplate(defaultAnimTree);
}

//override to make player mesh visible by default
simulated event BecomeViewTarget( PlayerController PC )
{
   local UTPlayerController UTPC;

   Super.BecomeViewTarget(PC);

   if (LocalPlayer(PC.Player) != None)
   {
      UTPC = UTPlayerController(PC);
      if (UTPC != None)
      {
         //set player controller to behind view and make mesh visible
         //since we are not using the Pawn.CalcCamera() function so camera animations (chainsaw execution, i.e) will work normally
         UTPC.SetBehindView(true);
         SetMeshVisibility(UTPC.bBehindView);
      }
   }
}

defaultproperties
{

**  //here you must change the skeletal mesh**
  defaultMesh=SkeletalMesh'ahmad_ghazzawi.Mesh.ahmad_ghazzawi'

    CamOffset = (X=19, Y=15, Z=-22);
    //CamOffset = (X=6, Y=15, Z=-22);
    //x -> distance from camera
    //y -> horizontal position
    //z -> vertical position

    Drawscale=0.95
    Health=100
    HealthMax=100
    GroundSpeed=400.0

    bPhysRigidBodyOutOfWorldCheck=TRUE
    bRunPhysicsWithNoController=true

    LeftFootControlName=LeftFootControl
    RightFootControlName=RightFootControl
    bEnableFootPlacement=true
    MaxFootPlacementDistSquared=56250000.0 // 7500 squared

    bPushesRigidBodies=true
}

The best way to avoid problems when importing custom characters in UDK is to use the default UDK Skeleton (UT3). Aswell using the default AnimationTree. Anyway, you can always change (is what I have done). I created some custom animation trees, by changing the default AnimationTree instead of creating one from scratch.

But if you are facing problems when importing meshes to UDK, you must read this tutorial here:

https://docs.unrealengine.com/udk/Th…hPipeline.html

Thanks for info, I wanna ask about importing larger files to package.
I can’t import vehicles such as cars and motorcycles, I always get this message - UDK-Import-FBX-Error.png
Anyway, I don’t want decrease verticies from mesh I want keep details.

No man, I think you are not importing game ready content. If you are importing a high poly car you downloaded from Turbosquid, in example, if it is not a game-ready model, if it is too much high poly you wont be able to import in any game engine, as for games the model needs to be optimized.

You can keep the high poly details by baking normal maps, which will get all the surface details and render it to a texture (normal map), then you use this normal map on the material of the object, so you will have all the high poly detail on a low poly surface.

This is how 3d assets for games work. People begin by modeling a high poly and high detail model of a object (generally in Zbrush), then they extract normal maps from the high poly mesh, and then there is a lot of tools on 3d softwares (3dsmax in example), to reduce the number of polys without “breaking the mesh”.

I use ProOptimizer (https://knowledge.autodesk.com/suppo…39FB3-htm.html), which is a modifier (plugin) for 3dsmax and it does an excelent job for reducing polycount on models.