Announcement

Collapse
No announcement yet.

Floating, walking vehicles?

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Floating, walking vehicles?

    Is it possible to attach joints and ligaments to a floating vehicle to make it look like it's walking?

    The idea would be to have mechanical arms and legs that are controlled by karma (and attached to an animating bone), that lift and drop at certain intervals according to the vehicle's status (driving, parked, turning, dying etc) and the karma legs simply stop when they hit the ground, allowing it to walk up and down slopes.

    To make it simple, the hip joint moves up and down, and the attached leg part stops when it collides with a surface, since it is controlled by Karma.

    Of course, some kind of "solid" crushing volume will be attached to the animating bone, and move up and down, regardless of the Karma leg's position.

    Can something like this be done?

    #2
    Somone made a SpiderMech that was animated depending on it's state (this led to animated legs etc), sort of like how the Tank treads just pan the texture according to vec state. It looked mostly good, though realy steep incline changes cause some of the mesh to sink into the ground

    Comment


      #3
      I'd love to see that mech! I coded a Spider Mech and a couple of other mechs myself. They are karma vehicles (like all ONSVehicles), but they do not use karma for animation. I'm not even sure that is possible. I'm not so good with karma, currently.

      The mechs are ONSHoverCraft with animations stuck on. The speed of the walking animation is matched to the vehicle's step size and velocity. I still have many issues with animation blending, realism and step sounds, but the mechs manage to fake a basic level of realism.

      I'd love to take this to the next level with someone who knows more about karma.

      Comment


        #4
        Hmm, ok. Yeah, I saw the thread with the spider. It looked neat - I'll look at it ingame.

        Im unclear whether it's possible to link a karma leg to an animated bone, and have the leg collide with the ground though.

        Can this be done? Basically, the animation pushes the leg down, then the leg collides and stops moving downward.

        Upon the next step, the animation raises the karma leg again before crashing it back down.

        The whole idea is to allow each leg to plant firmly onto ANY elevation of terrain, while keeping the body of the vehicle straight.

        If you step off a cliff, the vehicle will detect that one of the legs is not colliding, then let the vehicle drop in that direction until either the foot plants on something, or the vehicle tilts more than 45 degrees; whichever comes first.

        This allows a little bit of recovery in case you almost fall, and allows the vehicle to fall off a cliff or down a steep slope if the vehicle cannot recover in a natural way.

        Can that be done? A Karma leg attached to an animation bone?

        Comment


          #5
          What is a "karma leg"? An actor with karma properties?

          There must be something that can be done here. Worst case scenario is that the bones have to be rotated by code, like the Cicada rudder.

          Comment


            #6
            Because of the way Karma works onlie (ie it doesn't, even good Karma, the net frinedly karma actors only suppots a basic actor (like a ball or log rolling), no joints), you would have to update al the rotations in script which would probably not work too well (since UScript execution time is so slow)

            I can't even get a simple "follow the lead car" train system to work online, well it looks great single player, it breaks apart in multiplayer (and the absolute barest amount f code possible)


            What 'might' work is to attach the legs to an invisible animation, and heave them stop/detach themselves when they hit the ground, then when the bone of the animation comes back to the original pivot, rejoin themselves... you might even get away going that completey client side, don't expect the vec to give **** what happens to the leg though (ie if it's higher it's not going to lift that side of the vec up any)

            Comment


              #7
              Because of the way Karma works onlie (ie it doesn't, even good Karma, the net frinedly karma actors only suppots a basic actor (like a ball or log rolling), no joints), you would have to update al the rotations in script which would probably not work too well (since UScript execution time is so slow)
              Could it be done client-side though? If it's not important to gameplay where the legs actually are then I don't see a reason why their position would actually need to be replicated. Similar to they way ragdoll bodies are done client-side only.

              I'm not very good with replication so I could be totally wrong here.

              Comment


                #8
                You could get that to work if you a. Did not care if anything interacted withthe legs (pawns/projectiles/shots would all pass through) and I'm not sure if the vehicle paramaters you would movie it off of would replicate correctly...

                hmmm

                Comment


                  #9
                  Clientside would be fine. Hitboxes won't move with animations anyway, it seems.

                  Comment


                    #10
                    Yeah thats what I was thinking. If the collision is done with a hitbox that covers an area large enough to cover wherever the legs would be then it wouldn't be a problem. It's not ideal but it's probably the best bet.

                    Comment


                      #11
                      In the first post I mentioned:
                      Of course, some kind of "solid" crushing volume will be *attached to the animating bone*, and move up and down, regardless of the Karma leg's position.
                      This will *appear* to make the leg "crush". The volume AND the karma leg are linked to the animation.

                      The only difference between the leg and the volume, is that the leg collides and stops on the terrain, and the volume goes right through it... but you can't see that.

                      So the leg is client-side Karma, but collision still works online because it's handled by a volume that moves in the same path as the Karma leg. Again, the only different is that it doesnt collide with the ground.

                      It would probably take some beefy coding, but you think it could be done? I know some games like MechWarrior have figured out how to get this kind of thing working online, just with animation+code.

                      Comment


                        #12
                        I'd be happy to do the coding, but I'll need someone to help me out with the animations and someone to help with the karma. Any takers?

                        Comment


                          #13
                          You can feel free to get a rig working, but I won't be able to work on it until the second phase of my mod, for which I will need to make a very advanced, super-polished rig for one of the vehicles for the UT2007 version of the mod.

                          By that time we'll be working with Novodex physics, so... hopefuly it'll be better, and more flexible.

                          But until then, I would like it to work for the UT2004 version of the mod, if only to get the system working. It's a very complex design, but only needs simple mechanics to work,... then once it works, the vec abilities need to be replicated into several similar abilities.

                          For example, we need to strive to get a vehicle to move with legs attached... As soon as that's done, make it do other things, like jump, crouch, sprint, etc. The vehicle is very down to earth - nothing looney or "unreal" - but capable.

                          Comment


                            #14
                            Something that might work is to make our own vec based off of the xPawn code, it's easy to posses/unposses stuff, mind you the physics would be a little pooched...

                            Comment


                              #15
                              Extending xPawn merely replaces one set of problems with another. Having the ONSVehicle framework and interface is worth something too.

                              Comment

                              Working...
                              X