Jump to content

tjheldna

Members
  • Posts

    938
  • Joined

  • Last visited

Posts posted by tjheldna

  1. Hi neseir,

     

    Ok I purchased a sensor and the Fastmocap program. I played around for a very short time capturing animaions in fastmocap.

     

    The room I did it in was not 100% ideal so that is a factor in this. Fastmocap appeared to capture animations ok. HOWEVER, when I exported to character studio the animations were all garbled every time and could not get it to work. I lodged a support case with them around 5 days about this and haven't heard back. So not happy at all with Fastmocap currently and wouldn't recommend it to date, hopefully it can change my mind. A tutorial would be nice on the import process.

     

    Brekel worked a lot nicer and is more feature packed than Fastmocap, animations came through a bit funny in Max also (distorting bones), but better than Fastmocap. Maybe I'm missing something on the import?

     

    I can't test any other exports for any other program program.

     

    Let me know how you go with your tests.

  2. Hi Cassius

     

    Here is something Ive adapted from the lua code...

     

    
    void GameCharacter::SetAnimationSequence(float blendTime)
    {
    blendStart = Time::GetCurrent();
    
    blendFinish = blendStart + blendTime;
    }
    
    
    

     

     

     

    
    if(characterState != prevCharacterState)
    {
    SetAnimationSequence(500); //This only gets hit once.
    }
    
    sequence = 1; // or whatever
    
    float animSpeed = 0.04F;
    float blend = (Time::GetCurrent() - blendStart) / (blendFinish - blendStart);
    
    blend = Math::Min(1.0, blend);
    frame = (Time::GetCurrent() - blendStart) * animSpeed;
    
    float length = entity->GetAnimationLength(sequence, true);
    
    if(frame >= (length - 1))
    {
    frame = length -1;
    
    characterState = kStateIdle;
    }
    
    entity->SetAnimationFrame(frame, blend, sequence, true);
    

     

    Hope this helps

  3. Hi YouGroove

     

    In the Entities SetInput(-character->GetYaw(), character->GetMove(), 0.0F, character->GetJump(), 0.8, 0.8)

     

    Its for 4th parameter which applies a jump force. I've set it on a timer so the force is applied for a fraction of a second when you hit a key.

     

    hope this helps.

    • Upvote 1
  4. Hi Neseir, I couldn't help myself and purchased fastmocap. The software seems ok, I've tried to export out to biped bvh and it produced garbage for the biped animation although played as captured in their software. It's too early to sledge them yet, I really haven't had much time to play, and haven't had a response back about the export issues. I'll keep you posted.

  5. Right, so I picked up an XBox Kinect with power supply and I tested it last night with Brekel (the setup was very easy). It was only a quick test as the room I tested in had too much visual noise and I couldn't position it very well on the desk (It tried to pick up the book case as a user lol).

     

    Anyway it did pickup me and created a skeleton from it and seemed to handle movement quite well. I haven't exported any animations yet and I'm going to set something up a bit more appropriate in the back shed so It can pick movement up better.

     

    I must say this does have the potential to be a real time saver, not to mention better and more fluent results. I understand that there will be the need for manual editing, but it will provide a nice base animation for you to tweak.

     

    I'm considering buying fast mocap as it looks quite a nice piece of software, we shall see.

  6. Hi Andy

     

     

    Try this in your entities physics update to keep it on the z axis...

     

    Vec3 pos = entity->GetPosition();

     

    pos.x = 0.0F;

     

    entity->PhysicsSetPosition(pos.x, pos.y, pos.z, 0.01F);

     

     

    This works on all physics apart from a character controller, I still haven't found a way to restrict an axis for a character.

    • Upvote 1
  7. I have created an entity, and called it's member EmitSound(sound)

     

     

    The emitted sound plays however it does not follow the entity that called it and remains stays at it's creation point. Setting the sound to loop is a good test.

     

    Also

     

    Set the Draw stats to 1.

     

    keep emitting a sound.

     

    Watch your memory usage go up and up. It says in the doc's the sound is supposed to be released after playing, but it doesn't look like it's happening to me. Memory usage goes up with the Play() function too.

     

    Cheers!

  8. While were on the topic does anyone have any experience with mocap with a Kinect sensor?

     

    http://www.fastmocap.com/

     

    If it's any good, you could potentially create some semi decent mocap animations for around the $300 - $500 mark. Obviously it's not going to do the job like in a pro studio, but if it could give you a good head start it may be worth it.....

     

    I'm almost considering trying out the fastmocap and picking up a sensor......

     

    Any thoughts before I blindly spend the cash?

  9. enum

    {

     

    kCollisionProjectile = 6,

    kCollisionEnemyAI = 7,

    kCollisionCorpse = 8

    };

     

    PhysicsDriver::GetCurrent()->SetCollisionResponse(kCollisionProjectile, Collision::Scene, 1);

    PhysicsDriver::GetCurrent()->SetCollisionResponse(kCollisionProjectile, Collision::Prop, 1);

    PhysicsDriver::GetCurrent()->SetCollisionResponse(kCollisionProjectile, kCollisionEnemyAI, 1);

    PhysicsDriver::GetCurrent()->SetCollisionResponse(kCollisionProjectile, Collision::Trigger, 0);

    PhysicsDriver::GetCurrent()->SetCollisionResponse(kCollisionProjectile, Collision::Character, 0);

    PhysicsDriver::GetCurrent()->SetCollisionResponse(kCollisionProjectile, kCollisionProjectile, 0);

     

    done =)

  10. Hi Rick

     

    This does it it's pretty much a cut and paste from my code so just let me know if you need any help as some bit's wont make sense. I also created a custom collision type too if you are wondering....

     

    //Get the projectile direction

    Mat4 matrix = character->GetTargetEntity()->GetMatrix();

     

    projectileVelocity = character->GetTargetEntity()->GetMatrix()[2].xyz() * 900;

     

     

     

    //Create the bulllet

     

    Shape* shape = Shape::Box(0.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.1F, 0.1F);

    GetTargetEntity()->SetShape(shape);

    shape->Release();

     

     

    GetTargetEntity()->SetPhysicsMode(Entity::RigidBodyPhysics);

     

    GetTargetEntity()->SetMass(1);

     

    GetTargetEntity()->SetCollisionType(kCollisionProjectile);

     

    GetTargetEntity()->SetGravityMode(0);

     

    GetTargetEntity()->AddForce(projectileVelocity);

     

    GetTargetEntity()->AddHook(Entity::CollisionHook, (void*)ProjectileCollisionHook);

     

    GetTargetEntity()->AddHook(Entity::UpdatePhysicsHook, (void*)ProjectilePhysicsHook);

     

    Hope this helps!

×
×
  • Create New...