SonicGDK 1.30.000

Discussion in 'Fangaming Discussion' started by Xaklse, Feb 10, 2010.

  1. You're welcome people. I'll keep improving the documentation of the wiki, and updating the first post with playable levels.

    Btw, my first decent full game has been released for iOS devices for FREE! So I hope you give it a try; go HERE or THERE for more info.

    Matinee can only be used to animate the camera, disabling the controls is optional. You can animate a CameraInfo with Matinee and activate it when exactly needed.

    The orientation of the "Player" object determines the controls, use my "Set Rotation" Kismet node and enable the "Target Is Controller" checkbox.

    That's more complex, yeah. You could attach a snowboard mesh to a socket of the character, force a looping animation for the character ("Start Animation" Kismet) and use several ForceVolumes to constantly push the player.
  2. Andrew75


    Technical Artist Member
    Project AXSX(Sonic Xtreme) + Misc Projects
    I second that, SGDK is really impressive especially that its done using just unrealscript.
  3. Amnimator


    Seriously, this engine is amazing. The game controls really well, even with just a controller. This is surprising because in other 3D Sonic fan engines, the controls are like a butter stick on ice (eg. the hundreds of Blitz Sonic edits) . It's well done, stable, but it's a shame not too many people use it as it could be used. I give you some serious props for saying that you don't recommend people to use rips for this. That by itself is a very high percentage of stage mods in general. It was only a matter of time before everyone ripped everything out of, well, everything. It's nice to see this engine getting quality original content. Hopefully the pacing keeps up and this thing gets the recognition it deserves. I suppose that the reason that not as much people use this as it should is because of Generations modding. Most people would rather do something in Generations where they are more likely to get hits than in GDK. Also, they wouldn't have to worry about making Badniks. Really, I prefer this over Generations in a few ways; the camera and physics allow for much more open levels.
  4. 11 levels inside!

  5. New SonicGDK version is up, it only includes bug fixes due to SAGE (fixes for special stage, save slot #3, and BumperActor), thanks for reporting them.
    Source Code Patch (1.20.066 to 1.20.072): LINK
    Source Code Full (requires UDK July 2013): LINK


    Anybody here has a Mac? Could you please test THIS?
  6. Ell678


    Am I Annoying You? Member
    Barrow, England
    Sonic Incursion
    I recorded a short video detailing how to make one way collision platforms for Sonic GDK. I hope you can forgive my slightly nervous disposition, it's the first time I've recorded something like this! I know there are a few ways to do this, but this is the way I do it :)
  7. Andrew75


    Technical Artist Member
    Project AXSX(Sonic Xtreme) + Misc Projects
    I skipped around the tutorial, you didn't sound nervous one bit. ( well from what I saw anyways ) I wanted to make some tutorials but lack the time. Got a lot of nice stuff that could be shared although a few of the tuts would probably take 2 hours or more to watch ,like some advanced sprite badnik setup complete with AI threw kismet, also advanced materials.
    Anyhow I'm glad to see someone is making Tuts for all the SGDK users out there. Keep up the good work and Support SGDK ! its a great engine , but people may be overwhelmed with all that can be done. and get scared away because they don't know where to start.
  8. Aerosol


    Not here. Moderator
    Not where I want to be.
    Sonic (?): Coming summer of 2055...?
    I know that's why I didn't bother with it. It's too much all at once and I just didn't feel like breaking it down.
  9. Ell678


    Am I Annoying You? Member
    Barrow, England
    Sonic Incursion
    Yeah, there is a tonne of things to learn and when you just start it is bewildering. I thought these niche issues, like one way collision, would be good to document because the solution can then be applied to other problems. In the case of that video, knowing how to attach actors together is crucial for SGDK, and I know I was utterly lost before I learned about it. It makes me chuckle when I remember trying to make a spike pillar move without attaching everything together (there were about 4 actors). It was a mess!

    There is so much you can do a tutorials for. I'm still learning myself, so there's not much I'm entirely confident in trying to teach, in case it's wrong.
  10. Ell678


    Am I Annoying You? Member
    Barrow, England
    Sonic Incursion
    I'm sorry for the double post. While I was searching for something unrelated, I came across an interesting post regarding multimonitor support in UDK based games. So, I popped this little fix in and tried it out.

    It does work, but there are issues. The FOV is unsuitable for 2D, but it's not too bad for 3D. The menus are a little borked, and the HUD doesn't centre (although, not many games do this in surround anyway). I bet with some real work it would function well. Screens (beware, large)

  11. It's great, I added it to my tutorials list. Alternatively, you can also use the "Change World Collision" Kismet node from "SGDK" actions, and manipulate Sonic interaction with the world. This is useful if you have a moving badnik on the platform and you don't want it to fall.


    I finally decided to create a site for people to keep track for updates, and I hope it becomes a hub to gather news and information. I chose IndieDB because it's a great place for all the features it offers and the community. If SonicGDK catched your interest, drop by and say hi in the new forums, or visit the page dedicated to fangames. SAGE 2014 Act 2 is almost upon us, so new playable versions will be available to download.
  12. Atendega


    Lesser Sea Sponge Member
    Comfy couch
    Collecting insults
    Congratulations on making the most fully-featured and comprehensive 3D Sonic code-base in existence!
    I've noticed a bug though. Just messing around with the test level, I've noticed that if I enter the Special Stage at all, when I am returned to the level there is no air drag, even if I have it explicitly enabled.

    EDIT: I've noticed, upon furthur testing, that the air drag effect just randomly deactivates all the time, not working until you die or restart. I don't know WHAT specifically triggers it, but I know it happens.
  13. Unfortunately, I can't reproduce the problem. Did you change the value of "Air Drag Factor"? What are you using? Can you record the game?
    Thanks for the report; I noticed it's being applied while playing in the special stage, which is very bad.
  14. Atendega


    Lesser Sea Sponge Member
    Comfy couch
    Collecting insults
    You'll notice that, at around 2:30, the air drag just disappears.

    Here is my PawnSonic Properties:

    Code (Text):
    2. Begin Object Class=PawnSonic Name=PawnSonic_0
    3.    Begin Object Class=DynamicLightEnvironmentComponent Name=MyLightEnvironment ObjName=DynamicLightEnvironmentComponent_4 Archetype=DynamicLightEnvironmentComponent'sonicgdk.Default__PawnSonic:MyLightEnvironment'
    4.       InvisibleUpdateTime=1.000000
    5.       MinTimeBetweenFullUpdates=0.200000
    6.       bUseBooleanEnvironmentShadowing=False
    7.       bSynthesizeSHLight=True
    8.       bIsCharacterLightEnvironment=True
    9.       Name="DynamicLightEnvironmentComponent_4"
    10.       ObjectArchetype=DynamicLightEnvironmentComponent'sonicgdk.Default__PawnSonic:MyLightEnvironment'
    11.    End Object
    12.    Begin Object Class=SkeletalMeshComponent Name=WPawnSkeletalMeshComponent ObjName=SkeletalMeshComponent_0 Archetype=SkeletalMeshComponent'sonicgdk.Default__PawnSonic:WPawnSkeletalMeshComponent'
    13.       SkeletalMesh=SkeletalMesh'SonicGDKPackSkeletalMeshes.SkeletalMeshes.SonicColorsSkeletalMesh'
    14.       AnimTreeTemplate=AnimTree'SonicGDKPackSkeletalMeshes.animation.SonicColorsAnimTree'
    15.       PhysicsAsset=PhysicsAsset'SonicGDKPackSkeletalMeshes.PhysicsAssets.SonicColorsPhysicsAsset'
    16.       AnimSets(0)=AnimSet'SonicGDKPackSkeletalMeshes.animation.SonicColorsAnimset'
    17.       ForcedLodModel=1
    18.       MinDistFactorForKinematicUpdate=0.200000
    19.       bUpdateSkelWhenNotRendered=False
    20.       bIgnoreControllersWhenNotRendered=True
    21.       bNotUpdatingKinematicDueToDistance=True
    22.       bHasPhysicsAssetInstance=True
    23.       bPerBoneMotionBlur=True
    24.       bOverrideAttachmentOwnerVisibility=True
    25.       bChartDistanceFactor=True
    26.       bCacheAnimSequenceNodes=False
    27.       ReplacementPrimitive=None
    28.       LightEnvironment=DynamicLightEnvironmentComponent'DynamicLightEnvironmentComponent_4'
    29.       RBChannel=RBCC_Untitled3
    30.       RBDominanceGroup=20
    31.       bUseOnePassLightingOnTranslucency=True
    32.       BlockRigidBody=True
    33.       AbsoluteRotation=True
    34.       LightingChannels=(bInitialized=True,Dynamic=True)
    35.       RBCollideWithChannels=(Untitled3=True)
    36.       Scale=3.250000
    37.       Name="SkeletalMeshComponent_0"
    38.       ObjectArchetype=SkeletalMeshComponent'sonicgdk.Default__PawnSonic:WPawnSkeletalMeshComponent'
    39.    End Object
    40.    Begin Object Class=AudioComponent Name=MachDashAudioComponent ObjName=AudioComponent_0 Archetype=AudioComponent'sonicgdk.Default__PawnSonic:MachDashAudioComponent'
    41.       bAllowSpatialization=False
    42.       Name="AudioComponent_0"
    43.       ObjectArchetype=AudioComponent'sonicgdk.Default__PawnSonic:MachDashAudioComponent'
    44.    End Object
    45.    Begin Object Class=SkeletalMeshComponent Name=Ghost1SkeletalComponent ObjName=SkeletalMeshComponent_4 Archetype=SkeletalMeshComponent'sonicgdk.Default__PawnSonic:Ghost1SkeletalComponent'
    46.       ParentAnimComponent=SkeletalMeshComponent'SkeletalMeshComponent_0'
    47.       bTransformFromAnimParent=0
    48.       bUseBoundsFromParentAnimComponent=True
    49.       bUpdateSkelWhenNotRendered=False
    50.       bIgnoreControllersWhenNotRendered=True
    51.       bCacheAnimSequenceNodes=False
    52.       ReplacementPrimitive=None
    53.       HiddenGame=True
    54.       CastShadow=False
    55.       bCastDynamicShadow=False
    56.       bUseOnePassLightingOnTranslucency=True
    57.       AbsoluteRotation=True
    58.       Name="SkeletalMeshComponent_4"
    59.       ObjectArchetype=SkeletalMeshComponent'sonicgdk.Default__PawnSonic:Ghost1SkeletalComponent'
    60.    End Object
    61.    Begin Object Class=SkeletalMeshComponent Name=Ghost2SkeletalComponent ObjName=SkeletalMeshComponent_5 Archetype=SkeletalMeshComponent'sonicgdk.Default__PawnSonic:Ghost2SkeletalComponent'
    62.       ParentAnimComponent=SkeletalMeshComponent'SkeletalMeshComponent_0'
    63.       bTransformFromAnimParent=0
    64.       bUseBoundsFromParentAnimComponent=True
    65.       bUpdateSkelWhenNotRendered=False
    66.       bIgnoreControllersWhenNotRendered=True
    67.       bCacheAnimSequenceNodes=False
    68.       ReplacementPrimitive=None
    69.       HiddenGame=True
    70.       CastShadow=False
    71.       bCastDynamicShadow=False
    72.       bUseOnePassLightingOnTranslucency=True
    73.       AbsoluteRotation=True
    74.       Name="SkeletalMeshComponent_5"
    75.       ObjectArchetype=SkeletalMeshComponent'sonicgdk.Default__PawnSonic:Ghost2SkeletalComponent'
    76.    End Object
    77.    Begin Object Class=UTAmbientSoundComponent Name=AmbientSoundComponent ObjName=UTAmbientSoundComponent_0 Archetype=UTAmbientSoundComponent'sonicgdk.Default__PawnSonic:AmbientSoundComponent'
    78.       OcclusionCheckInterval=0.000000
    79.       Name="UTAmbientSoundComponent_0"
    80.       ObjectArchetype=UTAmbientSoundComponent'sonicgdk.Default__PawnSonic:AmbientSoundComponent'
    81.    End Object
    82.    Begin Object Class=UTAmbientSoundComponent Name=AmbientSoundComponent2 ObjName=UTAmbientSoundComponent_1 Archetype=UTAmbientSoundComponent'sonicgdk.Default__PawnSonic:AmbientSoundComponent2'
    83.       OcclusionCheckInterval=0.000000
    84.       Name="UTAmbientSoundComponent_1"
    85.       ObjectArchetype=UTAmbientSoundComponent'sonicgdk.Default__PawnSonic:AmbientSoundComponent2'
    86.    End Object
    87.    Begin Object Class=SkeletalMeshComponent Name=OverlayMeshComponent0 ObjName=SkeletalMeshComponent_1 Archetype=SkeletalMeshComponent'sonicgdk.Default__PawnSonic:OverlayMeshComponent0'
    88.       bUpdateSkelWhenNotRendered=False
    89.       bPerBoneMotionBlur=True
    90.       bOverrideAttachmentOwnerVisibility=True
    91.       ReplacementPrimitive=None
    92.       bOwnerNoSee=True
    93.       CastShadow=False
    94.       Scale=1.015000
    95.       TickGroup=TG_PostAsyncWork
    96.       Name="SkeletalMeshComponent_1"
    97.       ObjectArchetype=SkeletalMeshComponent'sonicgdk.Default__PawnSonic:OverlayMeshComponent0'
    98.    End Object
    99.    Begin Object Class=UDKSkeletalMeshComponent Name=FirstPersonArms ObjName=UDKSkeletalMeshComponent_0 Archetype=UDKSkeletalMeshComponent'sonicgdk.Default__PawnSonic:FirstPersonArms'
    100.       Begin Object Class=AnimNodeSequence Name=AnimNodeSequence_0 Archetype=AnimNodeSequence'sonicgdk.Default__PawnSonic:FirstPersonArms.MeshSequenceA'
    101.          Name="AnimNodeSequence_0"
    102.          ObjectArchetype=AnimNodeSequence'sonicgdk.Default__PawnSonic:FirstPersonArms.MeshSequenceA'
    103.       End Object
    104.       FOV=55.000000
    105.       Animations=AnimNodeSequence'AnimNodeSequence_0'
    106.       bUpdateSkelWhenNotRendered=False
    107.       bIgnoreControllersWhenNotRendered=True
    108.       bSyncActorLocationToRootRigidBody=False
    109.       bOverrideAttachmentOwnerVisibility=True
    110.       ReplacementPrimitive=None
    111.       DepthPriorityGroup=SDPG_Foreground
    112.       bOnlyOwnerSee=True
    113.       CastShadow=False
    114.       AbsoluteRotation=True
    115.       AbsoluteScale=True
    116.       TickGroup=TG_DuringAsyncWork
    117.       Name="UDKSkeletalMeshComponent_0"
    118.       ObjectArchetype=UDKSkeletalMeshComponent'sonicgdk.Default__PawnSonic:FirstPersonArms'
    119.    End Object
    120.    Begin Object Class=UDKSkeletalMeshComponent Name=FirstPersonArms2 ObjName=UDKSkeletalMeshComponent_1 Archetype=UDKSkeletalMeshComponent'sonicgdk.Default__PawnSonic:FirstPersonArms2'
    121.       Begin Object Class=AnimNodeSequence Name=AnimNodeSequence_1 Archetype=AnimNodeSequence'sonicgdk.Default__PawnSonic:FirstPersonArms2.MeshSequenceB'
    122.          Name="AnimNodeSequence_1"
    123.          ObjectArchetype=AnimNodeSequence'sonicgdk.Default__PawnSonic:FirstPersonArms2.MeshSequenceB'
    124.       End Object
    125.       FOV=55.000000
    126.       Animations=AnimNodeSequence'AnimNodeSequence_1'
    127.       bUpdateSkelWhenNotRendered=False
    128.       bIgnoreControllersWhenNotRendered=True
    129.       bSyncActorLocationToRootRigidBody=False
    130.       bOverrideAttachmentOwnerVisibility=True
    131.       ReplacementPrimitive=None
    132.       DepthPriorityGroup=SDPG_Foreground
    133.       HiddenGame=True
    134.       bOnlyOwnerSee=True
    135.       CastShadow=False
    136.       AbsoluteRotation=True
    137.       AbsoluteScale=True
    138.       Scale3D=(X=1.000000,Y=-1.000000,Z=1.000000)
    139.       TickGroup=TG_DuringAsyncWork
    140.       Name="UDKSkeletalMeshComponent_1"
    141.       ObjectArchetype=UDKSkeletalMeshComponent'sonicgdk.Default__PawnSonic:FirstPersonArms2'
    142.    End Object
    143.    Begin Object Class=CylinderComponent Name=CollisionCylinder ObjName=CylinderComponent_0 Archetype=CylinderComponent'sonicgdk.Default__PawnSonic:CollisionCylinder'
    144.       CollisionHeight=32.000000
    145.       CollisionRadius=20.000000
    146.       CylinderColor=(B=0,G=255,R=0,A=255)
    147.       bDrawBoundingBox=False
    148.       bAlwaysRenderIfSelected=True
    149.       ReplacementPrimitive=None
    150.       CollideActors=True
    151.       BlockActors=True
    152.       LightingChannels=(bInitialized=True,Dynamic=True)
    153.       Name="CylinderComponent_0"
    154.       ObjectArchetype=CylinderComponent'sonicgdk.Default__PawnSonic:CollisionCylinder'
    155.    End Object
    156.    Begin Object Class=ArrowComponent Name=Arrow ObjName=ArrowComponent_5 Archetype=ArrowComponent'sonicgdk.Default__PawnSonic:Arrow'
    157.       ArrowColor=(B=255,G=200,R=150,A=255)
    158.       bTreatAsASprite=True
    159.       SpriteCategoryName="Pawns"
    160.       ReplacementPrimitive=None
    161.       LightingChannels=(bInitialized=True,Dynamic=True)
    162.       Name="ArrowComponent_5"
    163.       ObjectArchetype=ArrowComponent'sonicgdk.Default__PawnSonic:Arrow'
    164.    End Object
    165.    bCanMachDash=False
    166.    bCanSpeedDash=False
    167.    bCanStomp=False
    168.    bHomingDashNeedsJump=False
    169.    bJumpDashHalvesSpeed=False
    170.    bJumpDashNeedsJump=False
    171.    DashGravityScale=1.500000
    172.    HomingDashRadius=1000.000000
    173.    HomingDashSpeed=4000.000000
    174.    JumpDashDurationTime=0.300000
    175.    JumpDashSpeed=1750.000000
    176.    PhysicsData(0)=(RunningAcceleration=1250.000000,RunningGroundFriction=3000.000000,RunningReferenceSpeed=2000.000000,RunningSlopeBonus=150.000000,RunningTopSpeed=3000.000000,RollingTopSpeed=3000.000000,FallingAirAcceleration=3000.000000,FallingReferenceSpeed=1000.000000,JumpingNormalStrength=800.000000,JumpingTopStrength=1200.000000)
    177.    PhysicsData(1)=()
    178.    PhysicsData(2)=()
    179.    PhysicsData(3)=()
    180.    PhysicsData(4)=()
    181.    PhysicsData(5)=()
    182.    bDefaultPawnClass=True
    183.    bLimitRollingJump=False
    184.    bCanUnRoll=True
    185.    bMeshAlignToGravity=True
    186.    bDisableBlobShadows=True
    187.    VisibleMesh=SkeletalMeshComponent'SonicGDKTestMap.TheWorld:PersistentLevel.PawnSonic_0.SkeletalMeshComponent_0'
    188.    MaxJumpImpulseTime=0.500000
    189.    SpinDashSpeedPct=1.250000
    190.    AirDragFactor=0.985000
    191.    SmoothRotationRate=0.000000
    192.    HyperSkeletalGhosts(0)=SkeletalMeshComponent'SonicGDKTestMap.TheWorld:PersistentLevel.PawnSonic_0.SkeletalMeshComponent_4'
    193.    HyperSkeletalGhosts(1)=SkeletalMeshComponent'SonicGDKTestMap.TheWorld:PersistentLevel.PawnSonic_0.SkeletalMeshComponent_5'
    194.    PawnAmbientSound=UTAmbientSoundComponent'SonicGDKTestMap.TheWorld:PersistentLevel.PawnSonic_0.UTAmbientSoundComponent_0'
    195.    WeaponAmbientSound=UTAmbientSoundComponent'SonicGDKTestMap.TheWorld:PersistentLevel.PawnSonic_0.UTAmbientSoundComponent_1'
    196.    OverlayMesh=SkeletalMeshComponent'SonicGDKTestMap.TheWorld:PersistentLevel.PawnSonic_0.SkeletalMeshComponent_1'
    197.    ArmsMesh(0)=UDKSkeletalMeshComponent'SonicGDKTestMap.TheWorld:PersistentLevel.PawnSonic_0.UDKSkeletalMeshComponent_0'
    198.    ArmsMesh(1)=UDKSkeletalMeshComponent'SonicGDKTestMap.TheWorld:PersistentLevel.PawnSonic_0.UDKSkeletalMeshComponent_1'
    199.    bPushesRigidBodies=False
    200.    Mesh=SkeletalMeshComponent'SonicGDKTestMap.TheWorld:PersistentLevel.PawnSonic_0.SkeletalMeshComponent_0'
    201.    CylinderComponent=CylinderComponent'SonicGDKTestMap.TheWorld:PersistentLevel.PawnSonic_0.CylinderComponent_0'
    202.    Components(0)=CylinderComponent'SonicGDKTestMap.TheWorld:PersistentLevel.PawnSonic_0.CylinderComponent_0'
    203.    Components(1)=ArrowComponent'SonicGDKTestMap.TheWorld:PersistentLevel.PawnSonic_0.ArrowComponent_5'
    204.    Components(2)=()
    205.    Components(3)=SkeletalMeshComponent'SonicGDKTestMap.TheWorld:PersistentLevel.PawnSonic_0.SkeletalMeshComponent_0'
    206.    Components(4)=UTAmbientSoundComponent'SonicGDKTestMap.TheWorld:PersistentLevel.PawnSonic_0.UTAmbientSoundComponent_0'
    207.    Components(5)=UTAmbientSoundComponent'SonicGDKTestMap.TheWorld:PersistentLevel.PawnSonic_0.UTAmbientSoundComponent_1'
    208.    Components(6)=()
    209.    Location=(X=1900.000000,Y=1152.000000,Z=4692.000000)
    210.    Tag="PawnSonic"
    211.    CollisionComponent=CylinderComponent'SonicGDKTestMap.TheWorld:PersistentLevel.PawnSonic_0.CylinderComponent_0'
    212.    Name="PawnSonic_0"
    213.    ObjectArchetype=PawnSonic'sonicgdk.Default__PawnSonic'
    214. End Object
    216. Begin Object Class=AudioComponent Name=AudioComponent_0 Archetype=AudioComponent'sonicgdk.Default__PawnSonic:MachDashAudioComponent'
    217.    bAllowSpatialization=False
    218.    Name="AudioComponent_0"
    219.    ObjectArchetype=AudioComponent'sonicgdk.Default__PawnSonic:MachDashAudioComponent'
    220. End Object
    222. Begin Object Class=SkeletalMeshComponent Name=SkeletalMeshComponent_0 Archetype=SkeletalMeshComponent'sonicgdk.Default__PawnSonic:WPawnSkeletalMeshComponent'
    223.    SkeletalMesh=SkeletalMesh'SonicGDKPackSkeletalMeshes.SkeletalMeshes.SonicColorsSkeletalMesh'
    224.    AnimTreeTemplate=AnimTree'SonicGDKPackSkeletalMeshes.animation.SonicColorsAnimTree'
    225.    PhysicsAsset=PhysicsAsset'SonicGDKPackSkeletalMeshes.PhysicsAssets.SonicColorsPhysicsAsset'
    226.    AnimSets(0)=AnimSet'SonicGDKPackSkeletalMeshes.animation.SonicColorsAnimset'
    227.    ForcedLodModel=1
    228.    MinDistFactorForKinematicUpdate=0.200000
    229.    bUpdateSkelWhenNotRendered=False
    230.    bIgnoreControllersWhenNotRendered=True
    231.    bNotUpdatingKinematicDueToDistance=True
    232.    bHasPhysicsAssetInstance=True
    233.    bPerBoneMotionBlur=True
    234.    bOverrideAttachmentOwnerVisibility=True
    235.    bChartDistanceFactor=True
    236.    bCacheAnimSequenceNodes=False
    237.    ReplacementPrimitive=None
    238.    LightEnvironment=DynamicLightEnvironmentComponent'SonicGDKTestMap.TheWorld:PersistentLevel.PawnSonic_0.DynamicLightEnvironmentComponent_4'
    239.    RBChannel=RBCC_Untitled3
    240.    RBDominanceGroup=20
    241.    bUseOnePassLightingOnTranslucency=True
    242.    BlockRigidBody=True
    243.    AbsoluteRotation=True
    244.    LightingChannels=(bInitialized=True,Dynamic=True)
    245.    RBCollideWithChannels=(Untitled3=True)
    246.    Scale=3.250000
    247.    Name="SkeletalMeshComponent_0"
    248.    ObjectArchetype=SkeletalMeshComponent'sonicgdk.Default__PawnSonic:WPawnSkeletalMeshComponent'
    249. End Object
    251. Begin Object Class=SkeletalMeshComponent Name=SkeletalMeshComponent_4 Archetype=SkeletalMeshComponent'sonicgdk.Default__PawnSonic:Ghost1SkeletalComponent'
    252.    ParentAnimComponent=SkeletalMeshComponent'SonicGDKTestMap.TheWorld:PersistentLevel.PawnSonic_0.SkeletalMeshComponent_0'
    253.    bTransformFromAnimParent=0
    254.    bUseBoundsFromParentAnimComponent=True
    255.    bUpdateSkelWhenNotRendered=False
    256.    bIgnoreControllersWhenNotRendered=True
    257.    bCacheAnimSequenceNodes=False
    258.    ReplacementPrimitive=None
    259.    HiddenGame=True
    260.    CastShadow=False
    261.    bCastDynamicShadow=False
    262.    bUseOnePassLightingOnTranslucency=True
    263.    AbsoluteRotation=True
    264.    Name="SkeletalMeshComponent_4"
    265.    ObjectArchetype=SkeletalMeshComponent'sonicgdk.Default__PawnSonic:Ghost1SkeletalComponent'
    266. End Object
    268. Begin Object Class=DynamicLightEnvironmentComponent Name=DynamicLightEnvironmentComponent_4 Archetype=DynamicLightEnvironmentComponent'sonicgdk.Default__PawnSonic:MyLightEnvironment'
    269.    InvisibleUpdateTime=1.000000
    270.    MinTimeBetweenFullUpdates=0.200000
    271.    bUseBooleanEnvironmentShadowing=False
    272.    bSynthesizeSHLight=True
    273.    bIsCharacterLightEnvironment=True
    274.    Name="DynamicLightEnvironmentComponent_4"
    275.    ObjectArchetype=DynamicLightEnvironmentComponent'sonicgdk.Default__PawnSonic:MyLightEnvironment'
    276. End Object
    278. Begin Object Class=UTAmbientSoundComponent Name=UTAmbientSoundComponent_0 Archetype=UTAmbientSoundComponent'sonicgdk.Default__PawnSonic:AmbientSoundComponent'
    279.    OcclusionCheckInterval=0.000000
    280.    Name="UTAmbientSoundComponent_0"
    281.    ObjectArchetype=UTAmbientSoundComponent'sonicgdk.Default__PawnSonic:AmbientSoundComponent'
    282. End Object
    284. Begin Object Class=UTAmbientSoundComponent Name=UTAmbientSoundComponent_1 Archetype=UTAmbientSoundComponent'sonicgdk.Default__PawnSonic:AmbientSoundComponent2'
    285.    OcclusionCheckInterval=0.000000
    286.    Name="UTAmbientSoundComponent_1"
    287.    ObjectArchetype=UTAmbientSoundComponent'sonicgdk.Default__PawnSonic:AmbientSoundComponent2'
    288. End Object
    290. Begin Object Class=SkeletalMeshComponent Name=SkeletalMeshComponent_1 Archetype=SkeletalMeshComponent'sonicgdk.Default__PawnSonic:OverlayMeshComponent0'
    291.    bUpdateSkelWhenNotRendered=False
    292.    bPerBoneMotionBlur=True
    293.    bOverrideAttachmentOwnerVisibility=True
    294.    ReplacementPrimitive=None
    295.    bOwnerNoSee=True
    296.    CastShadow=False
    297.    Scale=1.015000
    298.    TickGroup=TG_PostAsyncWork
    299.    Name="SkeletalMeshComponent_1"
    300.    ObjectArchetype=SkeletalMeshComponent'sonicgdk.Default__PawnSonic:OverlayMeshComponent0'
    301. End Object
    303. Begin Object Class=UDKSkeletalMeshComponent Name=UDKSkeletalMeshComponent_0 Archetype=UDKSkeletalMeshComponent'sonicgdk.Default__PawnSonic:FirstPersonArms'
    304.    Begin Object Class=AnimNodeSequence Name=AnimNodeSequence_0 Archetype=AnimNodeSequence'sonicgdk.Default__PawnSonic:FirstPersonArms.MeshSequenceA'
    305.       Name="AnimNodeSequence_0"
    306.       ObjectArchetype=AnimNodeSequence'sonicgdk.Default__PawnSonic:FirstPersonArms.MeshSequenceA'
    307.    End Object
    308.    FOV=55.000000
    309.    Animations=AnimNodeSequence'SonicGDKTestMap.TheWorld:PersistentLevel.PawnSonic_0.UDKSkeletalMeshComponent_0.AnimNodeSequence_0'
    310.    bUpdateSkelWhenNotRendered=False
    311.    bIgnoreControllersWhenNotRendered=True
    312.    bSyncActorLocationToRootRigidBody=False
    313.    bOverrideAttachmentOwnerVisibility=True
    314.    ReplacementPrimitive=None
    315.    DepthPriorityGroup=SDPG_Foreground
    316.    bOnlyOwnerSee=True
    317.    CastShadow=False
    318.    AbsoluteRotation=True
    319.    AbsoluteScale=True
    320.    TickGroup=TG_DuringAsyncWork
    321.    Name="UDKSkeletalMeshComponent_0"
    322.    ObjectArchetype=UDKSkeletalMeshComponent'sonicgdk.Default__PawnSonic:FirstPersonArms'
    323. End Object
    325. Begin Object Class=CylinderComponent Name=CylinderComponent_0 Archetype=CylinderComponent'sonicgdk.Default__PawnSonic:CollisionCylinder'
    326.    CollisionHeight=32.000000
    327.    CollisionRadius=20.000000
    328.    CylinderColor=(B=0,G=255,R=0,A=255)
    329.    bDrawBoundingBox=False
    330.    bAlwaysRenderIfSelected=True
    331.    ReplacementPrimitive=None
    332.    CollideActors=True
    333.    BlockActors=True
    334.    LightingChannels=(bInitialized=True,Dynamic=True)
    335.    Name="CylinderComponent_0"
    336.    ObjectArchetype=CylinderComponent'sonicgdk.Default__PawnSonic:CollisionCylinder'
    337. End Object
    339. Begin Object Class=AnimNodeSequence Name=AnimNodeSequence_0 Archetype=AnimNodeSequence'sonicgdk.Default__PawnSonic:FirstPersonArms.MeshSequenceA'
    340.    Name="AnimNodeSequence_0"
    341.    ObjectArchetype=AnimNodeSequence'sonicgdk.Default__PawnSonic:FirstPersonArms.MeshSequenceA'
    342. End Object

    The only thing I've changed in the .uc file is allowing input during jump dashes. Hope this info helps.
  15. I could reproduce the problem and fixed it, thank you; air drag was removed by the chained springs.


    SOURCE CODE -- 1.20.109 -- 09/Nov/2014 -- (requires UDK July 2013)
    Sponsored by Andrew75 from Project AXSX
    Improves stuff for Sonic Incursion and Sonic Souls

    This release has better AI and shooting options for enemies, more configurable properties for GenericProjectile, new Kismet nodes, dummy classes for characters, unlockable levels and other fixes/improvements; check the readme file for more technical details.
  16. TheActualKK


    Accept no substitutes. Member
    The Funk Dimension
    Sonic GDK - Green Hill Paradise
    Hey all, long time no see eh? Hope everyone has been achieving good success with their projects.

    I'm running into some issues (perhaps not just with GDK) that I can't find solutions for online.

    The materials for my meshes (models created in and exported from blender 2.71 as .FBX files) do not show up on the mesh. When I import the meshes, they appear in the content browser, and it looks like the materials show up for a split-second but then vanish. Does anyone have any experience with this issue?

    The other problem I'm running into involves the meshes themselves. When put into a level environment in UDK, the objects don't have visible backfaces. If anyone can give advice on this or my other problem I'd greatly appreciate it.
  17. Andrew75


    Technical Artist Member
    Project AXSX(Sonic Xtreme) + Misc Projects
    You mean they vanish from content browser or from the mesh?
    Maybe right click the folder (the upk) in the content browser and select load.( this will let you see all materials in the content browser)
    If you mean the mesh than you need to manually assign the material to your mesh by double clicking on the mesh in the content browser to open the model viewer and assign the material there.

    For the object that you want to see the back side of ( you need to edit the material for that object in the material editor) and select the option for 2 sided. (put a check in its box.)

    would be nice to see a video of your problem....
  18. TheActualKK


    Accept no substitutes. Member
    The Funk Dimension
    Sonic GDK - Green Hill Paradise
    Sorry, not sure of how to record the footage of the content browser. What happens is this:

    1. using content browser, import fbx (with mesh and material) into udk
    2. open the package into which it was imported in the content browser
    3. package contents are shown
    4. meshes appear and stay as is normal
    5. materials appear very briefly (less than half a second) and then disappear
    6. no amount of opening and closing different packages or the content browser will make them appear again
    7. restarting the editor allows you to see the materials again, but once again it is only for a split second and then the materials disappear again in the same fashion

    I'm fairly certain that since I've only imported these FBX into that package, it must contain the materials. They just don't appear for some reason.

    If you know a screen recorder that allows recording of any window, let me know what it is, and I'll make a video of the problem.

    Thanks for the 'two sided' tip. My craptop didn't like doing the math on it, but it works.
  19. TheActualKK


    Accept no substitutes. Member
    The Funk Dimension
    Sonic GDK - Green Hill Paradise
    Also, is there a 'best' way to handle collisions on imported meshes of complex shapes? For example, I'm making a cave that will need a complex collision mesh. I've tried using one of the content browser's options, like 'simple rigid body' or 'line-based collision' but it doesn't work well for those complex shapes like the cave. Maybe smoothing the mesh would help? It's currently only at a few hundred faces.
  20. Andrew75


    Technical Artist Member
    Project AXSX(Sonic Xtreme) + Misc Projects
    Best collision is by checking per poly collision in the model viewer and disable the other collision types.
    also you did try to right click the package and load correct ? ( for the vanishing materials)
    If that does not do it, than I would recommend bringing the topic up over on the unreal forums.