behavioral animation cse 3541 matt boggus. material recap and trajectory geometric – artist...

43
Behavioral animation CSE 3541 Matt Boggus

Upload: osborn-barnett

Post on 16-Dec-2015

229 views

Category:

Documents


6 download

TRANSCRIPT

Page 1: Behavioral animation CSE 3541 Matt Boggus. Material recap and trajectory Geometric – Artist specifies translation and rotation over time Physically based

Behavioral animation

CSE 3541Matt Boggus

Page 2: Behavioral animation CSE 3541 Matt Boggus. Material recap and trajectory Geometric – Artist specifies translation and rotation over time Physically based

Material recap and trajectory

• Geometric– Artist specifies translation and rotation over time

• Physically based– Artist specifies forces acting on objects– Motion equations dictate movement

• Behavioral– Artist directs autonomous agents

• Interpolation– Artist draws the scene at the beginning and end of a an

interval of time– Intermediate positions are calculated

Page 3: Behavioral animation CSE 3541 Matt Boggus. Material recap and trajectory Geometric – Artist specifies translation and rotation over time Physically based

Behavioral Animation

• Control the motion of one or more objects using virtual actors

• Goal: realistic or believable motion so that the object appears to be autonomous

• Matt Lewis’ page on BA http://accad.osu.edu/~mlewis/Class/behavior.html

Page 4: Behavioral animation CSE 3541 Matt Boggus. Material recap and trajectory Geometric – Artist specifies translation and rotation over time Physically based

Behavioral animation

• Character or object motion based on:

– Knowledge of the environment– Aggregate behavior– Primitive behavior– Intelligent behavior– Crowd management

Page 5: Behavioral animation CSE 3541 Matt Boggus. Material recap and trajectory Geometric – Artist specifies translation and rotation over time Physically based

Actor properties (position only)

Position (x, y)

Goal (xg, yg)

V = Goal - Position

Next Position = Position + V * dt

Page 6: Behavioral animation CSE 3541 Matt Boggus. Material recap and trajectory Geometric – Artist specifies translation and rotation over time Physically based

Actor properties (position and orientation)

Position (x, y)

Goal (xg, yg)

Vtarget = Goal - Position

Orientation (ox, oy) = transform.forward

Rotate(θ)

In Unity, you can use RotateTowards()

Rotate(-θ)Determine which rotation (±θ) orients the actor closer to the goal using dot product

Page 7: Behavioral animation CSE 3541 Matt Boggus. Material recap and trajectory Geometric – Artist specifies translation and rotation over time Physically based

Sample codeclass OrientedAgent2D {

// DataVector3 position;GameObject model; // Use this for geometry and orientation

// MethodsUpdate(float deltaTime);TurnLeft();TurnRight();MoveForward();MoveBackward();

};

Page 8: Behavioral animation CSE 3541 Matt Boggus. Material recap and trajectory Geometric – Artist specifies translation and rotation over time Physically based

Knowing the environment

•Vision and other senses– Information available now

•Memory– Information stored from the past

Page 9: Behavioral animation CSE 3541 Matt Boggus. Material recap and trajectory Geometric – Artist specifies translation and rotation over time Physically based

Vision

•General vision– What can the actor see? – What is everything in sight now?•Targeted vision– Can the actor see object X?

• Computation vs. accuracy– How much of an object needs to be seen to be

identified?– Do we need to model visual perception?

Page 10: Behavioral animation CSE 3541 Matt Boggus. Material recap and trajectory Geometric – Artist specifies translation and rotation over time Physically based

Omniscience

Everything in the scene is known

Page 11: Behavioral animation CSE 3541 Matt Boggus. Material recap and trajectory Geometric – Artist specifies translation and rotation over time Physically based

Field of view

Page 12: Behavioral animation CSE 3541 Matt Boggus. Material recap and trajectory Geometric – Artist specifies translation and rotation over time Physically based

Field of view – example

Orientation Vector (O)

Vector from agent to vertex (V)

Inside the cone when the angle between O and V is less then or equal to θ/2

Angle of cone = θ

Page 13: Behavioral animation CSE 3541 Matt Boggus. Material recap and trajectory Geometric – Artist specifies translation and rotation over time Physically based

Field of view – sample code

Vector3 agentPosition, orientation, objectPosition;float visionLimit;

Vector3 agentToVertex = objectPosition – agentPosition;

agentToVertex.Normalize();if(Vector3.Dot(agentToVertex,orientation) > visionLimit)

// agent can see object

Page 14: Behavioral animation CSE 3541 Matt Boggus. Material recap and trajectory Geometric – Artist specifies translation and rotation over time Physically based

Occluded Vision

Ray casting with collision detectionSample the environment

Page 15: Behavioral animation CSE 3541 Matt Boggus. Material recap and trajectory Geometric – Artist specifies translation and rotation over time Physically based

Target-testing vision (per object)

Can the actor see X?Cast a ray

How well can the actor see X?Use multiple rays

Page 16: Behavioral animation CSE 3541 Matt Boggus. Material recap and trajectory Geometric – Artist specifies translation and rotation over time Physically based

Target-testing vision (alternative)Sample the vision cone

Cast multiple rays

Page 17: Behavioral animation CSE 3541 Matt Boggus. Material recap and trajectory Geometric – Artist specifies translation and rotation over time Physically based

Lab4 – predator-prey simulation

•Unbalanced abilities– Vision

• Distance• Field of view

– Linear speed (moving forward)– Angular or rotational speed (turning)

Page 18: Behavioral animation CSE 3541 Matt Boggus. Material recap and trajectory Geometric – Artist specifies translation and rotation over time Physically based

Spatial Occupancy

Page 19: Behavioral animation CSE 3541 Matt Boggus. Material recap and trajectory Geometric – Artist specifies translation and rotation over time Physically based

Other senses

•Hearing•Smell

•Sensors & signal propagation•Spatial occupancy approach•Applications

Page 20: Behavioral animation CSE 3541 Matt Boggus. Material recap and trajectory Geometric – Artist specifies translation and rotation over time Physically based

Memory

•What is recorded about the environment

•Spatial occupancy

•Transience of objects: time-stamps

•Memory hierarchy: short-term, long-term

Page 21: Behavioral animation CSE 3541 Matt Boggus. Material recap and trajectory Geometric – Artist specifies translation and rotation over time Physically based

Spatial Occupancy

doorway

doorway

transiency

wal

l

Page 22: Behavioral animation CSE 3541 Matt Boggus. Material recap and trajectory Geometric – Artist specifies translation and rotation over time Physically based

Aggregate Behavior:Emergent Behavior

Type Elements Physics

Env/Others

Intelligence

Particles 102-104 Much/none None

Flocking 101-103 Some/some Limited

Crowds 101-102 Little/much Little-much

Typical qualities

Page 23: Behavioral animation CSE 3541 Matt Boggus. Material recap and trajectory Geometric – Artist specifies translation and rotation over time Physically based

Emergent behavior

• Complex systems and patterns arising out of simple rules

• Aints – AI ants http://www.youtube.com/watch?v=rsqsZCH36Hk

Page 24: Behavioral animation CSE 3541 Matt Boggus. Material recap and trajectory Geometric – Artist specifies translation and rotation over time Physically based

Predator Prey vision anatomy

Page 25: Behavioral animation CSE 3541 Matt Boggus. Material recap and trajectory Geometric – Artist specifies translation and rotation over time Physically based

Prey-Predator (vision)

Page 26: Behavioral animation CSE 3541 Matt Boggus. Material recap and trajectory Geometric – Artist specifies translation and rotation over time Physically based

Prey-Predator (movement – speed and turning)

Page 27: Behavioral animation CSE 3541 Matt Boggus. Material recap and trajectory Geometric – Artist specifies translation and rotation over time Physically based

Motion – force based

Apply a force on the predator towards the prey when in view

Force = c * posprey - pospred

Page 28: Behavioral animation CSE 3541 Matt Boggus. Material recap and trajectory Geometric – Artist specifies translation and rotation over time Physically based

Motion – kinematic based

Determine the closest prey in view then turn towards it and increase forward velocity

voldvnew

Page 29: Behavioral animation CSE 3541 Matt Boggus. Material recap and trajectory Geometric – Artist specifies translation and rotation over time Physically based

Prey-Predator – environment forces

Using pure forcesMay not prevent object penetrationPrey can be ‘hidden’ by environmental repulsive forces

Page 30: Behavioral animation CSE 3541 Matt Boggus. Material recap and trajectory Geometric – Artist specifies translation and rotation over time Physically based

Flocking, Swarming, Flying

Boidshttp://www.red3d.com/cwr/boids/

Page 31: Behavioral animation CSE 3541 Matt Boggus. Material recap and trajectory Geometric – Artist specifies translation and rotation over time Physically based

Local control

Rules defined to stay with friends, but avoid bumping into each other

Need additional rules for collision avoidance with obstacles

Page 32: Behavioral animation CSE 3541 Matt Boggus. Material recap and trajectory Geometric – Artist specifies translation and rotation over time Physically based

Local information

Page 33: Behavioral animation CSE 3541 Matt Boggus. Material recap and trajectory Geometric – Artist specifies translation and rotation over time Physically based

Other flocking issues•Global control– script flock leader– global migratory urge

•Negotiating the motion– Separation, alignment, and cohesion may compete/contradict

•Collision avoidance– Once an object is in sight, start steering to avoid

•Splitting and rejoining (difficult)– Collision avoidance too strong – flock may never rejoin after split– Flock membership too strong – flock does not split and formation changes

•Modeling flight

Page 34: Behavioral animation CSE 3541 Matt Boggus. Material recap and trajectory Geometric – Artist specifies translation and rotation over time Physically based

Negotiating the motion

ForcesOr “Reasoning”(e.g. rule-based)

Page 35: Behavioral animation CSE 3541 Matt Boggus. Material recap and trajectory Geometric – Artist specifies translation and rotation over time Physically based

Navigating obstacles

Problems with repulsive forces

Page 36: Behavioral animation CSE 3541 Matt Boggus. Material recap and trajectory Geometric – Artist specifies translation and rotation over time Physically based

Navigating using bounding sphere

Page 37: Behavioral animation CSE 3541 Matt Boggus. Material recap and trajectory Geometric – Artist specifies translation and rotation over time Physically based

NavigatingTesting for being on a collision path with

(bounding) sphere

rt

kst

PCs

V

VPCk

22

)(

Given: P, V, C, r

Page 38: Behavioral animation CSE 3541 Matt Boggus. Material recap and trajectory Geometric – Artist specifies translation and rotation over time Physically based

Finding closest non-colliding point

sWUtPCPB

UVU

UVUW

PC

PCU

trs

PC

PCrkt

ttPCPCtrk

tPCsk

tsr

rPCk

)(

2

2

)(

22

222

22222

222

222

22

Calculate s,t

Page 39: Behavioral animation CSE 3541 Matt Boggus. Material recap and trajectory Geometric – Artist specifies translation and rotation over time Physically based

Modeling flight – common in flocking

Page 40: Behavioral animation CSE 3541 Matt Boggus. Material recap and trajectory Geometric – Artist specifies translation and rotation over time Physically based

Modeling flight

Geometric flight – dynamic, incremental rigid transformation of an object moving along a tangent to a three dimensional curve

Page 41: Behavioral animation CSE 3541 Matt Boggus. Material recap and trajectory Geometric – Artist specifies translation and rotation over time Physically based

Modeling Flight – Lift

Air passing above wing most travel longer than air below it. Less pressure above wing = lift

Page 42: Behavioral animation CSE 3541 Matt Boggus. Material recap and trajectory Geometric – Artist specifies translation and rotation over time Physically based

Modeling Flight – turn by rolling

Page 43: Behavioral animation CSE 3541 Matt Boggus. Material recap and trajectory Geometric – Artist specifies translation and rotation over time Physically based

Modeling Flight – summary

• Turning is effected by horizontal lift

• Increasing pitch increases drag

• Increasing speed increases lift