Zobrazit předchozí téma :: Zobrazit následující téma |
Autor |
Zpráva |
Deloix
Založen: 24. 02. 2010 Příspěvky: 2
|
Zaslal: 25. únor 2010, 07:42:11 Předmět: UDK - Unreal Development Kit |
|
|
Chtěl bych se zeptat zda v tom někdo nedělá, potřeboval bych pomoct s jednoduchým scriptem (jednoduchý pro někoho kdo s tim umí) a na oplátku jsem ochoten pomoci s 3D grafikou v přbližně podobné časové náročnosti.
Skoro celý jsem to už udělal sám, ale potřebuju vychytat pár much.
jde mi o 2D kameru a aby se postava neovládala myší. Ted jsem docílil toho že mám kameru zafixovanou na ose X a může se hýbat jen v ose Z a Y, stejně tak postava. odstarnit potřebuji otáčení postavy pomocí myši a aby kamera neskákala spolu s postavou, i když to asi zvládnu snad sám.
tady je poslepovanej kod z dalších asi 3.
kód: |
class mypawn extends GamePawn placeable;
enum Ecamerastyle
{
Fixed,
ThirdPerson,
FreeCam,
FreeCam_Default,
FirstPerson
};
var() Ecamerastyle camerastyle;
simulated function bool CalcCamera( float fDeltaTime, out vector out_CamLoc, out rotator out_CamRot, out float out_FOV )
{
local vector CameraStart;
local vector newLocation;
//Start at the player's location.
CameraStart = Location;
newLocation = Location;
//Set the Z Offset how high or low the camera is.
// CameraZOffset = GetPawnViewLocation().Z;
//Set the Camera Z Offset
CameraStart.Z += 100;
//Since we want to look down the Positive X axis lets move
//away from our player down the negitive X axis
CameraStart.X += -512;
//Set final location
out_CamLoc = CameraStart;
//setting the Yaw to -90 rotated the camera to look down the x axis
out_CamRot.Yaw = -90;
//Setting the Pitch to 90 locked the camera so it doesn't rotate up and down.
out_CamRot.Pitch = 90;
newLocation.X = 0; //Makes sure the player never leaves the x origin.
SetLocation(newLocation);
return true;
}
defaultproperties
{
Begin Object Class=DynamicLightEnvironmentComponent Name=MyLightEnvironment
ModShadowFadeoutTime=0.25
MinTimeBetweenFullUpdates=0.2
AmbientGlow=(R=.01,G=.01,B=.01,A=1)
AmbientShadowColor=(R=0.15,G=0.15,B=0.15)
LightShadowMode=LightShadow_ModulateBetter
ShadowFilterQuality=SFQ_High
bSynthesizeSHLight=TRUE
End Object
Components.Add(MyLightEnvironment)
Begin Object Class=SkeletalMeshComponent Name=InitialSkeletalMesh
CastShadow=true
bCastDynamicShadow=true
bOwnerNoSee=false
LightEnvironment=MyLightEnvironment;
CollideActors=true;
BlockZeroExtent=true;
PhysicsAsset=PhysicsAsset'CH_AnimCorrupt.Mesh.SK_CH_Corrupt_Male_Physics'
AnimSets(0)=AnimSet'CH_AnimHuman.Anims.K_AnimHuman_AimOffset'
AnimSets(1)=AnimSet'CH_AnimHuman.Anims.K_AnimHuman_BaseMale'
AnimTreeTemplate=AnimTree'CH_AnimHuman_Tree.AT_CH_Human'
SkeletalMesh=SkeletalMesh'CH_LIAM_Cathode.Mesh.SK_CH_LIAM_Cathode'
RBCollideWithChannels=(Default=true,GameplayPhysics=true,Pawn=true)
bHasPhysicsAssetInstance=true
PhysicsWeight=1.0f
BlockRigidBody=true;
End Object
Mesh=InitialSkeletalMesh;
Components.Add(InitialSkeletalMesh);
CollisionType=COLLIDE_BlockAll
// added to stop the pawn from floating in the air.. not sure why it does.
Begin Object Name=CollisionCylinder
CollisionRadius=+0021.000000
CollisionHeight=+0048.000000
End Object
CylinderComponent=CollisionCylinder
camerastyle=thirdperson;
}
|
a vypadá to zatím takhle....
až vyřešim ovládání, tak tam začnu dávat svoje modely |
|
Návrat nahoru |
|
 |
KoudyDev
Založen: 19. 08. 2008 Příspěvky: 14 Bydliště: Hradec Králové
|
Zaslal: 25. únor 2010, 20:00:39 Předmět: |
|
|
Koukni do PlayerController.uc řádek 4384 ... řeší se tam ta rotace postavy. Osobně bych si vytvořil třídu "MyPlayerController" a výše zmíněnou funkci "UpdateRotation" bych přepsal ...
Jinak doporučuji používat program UnCodeX pomůže ti s hledáním a orientací ve skriptech. |
|
Návrat nahoru |
|
 |
|
|
Nemůžete odesílat nové téma do tohoto fóra Nemůžete odpovídat na témata v tomto fóru Nemůžete upravovat své příspěvky v tomto fóru Nemůžete mazat své příspěvky v tomto fóru Nemůžete hlasovat v tomto fóru
|
Powered by phpBB © 2001, 2005 phpBB Group
Vzhled udelal powermac
Styl "vykraden" z phpBB stylu MonkiDream - upraveno by rezna