Take the 2-minute tour ×
Game Development Stack Exchange is a question and answer site for professional and independent game developers. It's 100% free, no registration required.

They say naming things is one of the hardest problems in computer programming. They were right.

Given the pseudocode below, what is a more appropriate name for this collection of properties? "Course", "Route", "Heading", "Orientation" all don't capture it.

class NewtonianStuff { // <-- Needs a better name
  vec3 position, velocity, acceleration; // <-- What is this group called
  quat rotation;
};

class SpaceShip {
    NewtonianStuff xxxxxx; // <-- What do you call that
};

Perhaps that collection is too abstract. What is the formal name for this collection of properties?

vec3 position, velocity, acceleration;

The best I can come up with is "PositionAndDerivatives", which doesn't really flow.

share|improve this question
    
how about "point", assuming that the class is in sort of physics namespace, so it'd look like physics::point. You may also consider physics::motion, physics::object, and "xxxxxx" would be simply "state". –  Devdalus Aug 16 '12 at 22:02
    
Just go with dXYZThetaT. (Excedrin not included.) –  David Lively Aug 17 '12 at 3:09

2 Answers 2

up vote 10 down vote accepted

The position and rotation (and scale) are generally referred to as the transform.

Velocity, acceleration, force, impulse, etc are usually just lumped together as "physics state" or "body" (which might also have handles to the shape of the physical object or any bounding shapes, or those might be part of a separate "collider"). I don't believe there is a formal name used in games for this collection of properties, especially as the properties used varies for each game / physics engines.

share|improve this answer
    
Scale, Rotation, Translation are from the computer graphics / linear algebra point of view. While Position and Translation here are equal, Translation has no interest in Velocity and Acceleration, like Position does. –  EnabrenTane Aug 16 '12 at 22:23
    
+1 If you can't find a proper name, that's because you need to organize your stuff in parts that do have proper names. –  Laurent Couvidou Aug 16 '12 at 22:34
    
+1 I have an abstract class called BasePhysicalBody that contains all these properties and some operations on them. –  Marton Aug 17 '12 at 8:03

Like Sean said, position and rotation are usually referred to as the object's transform.

Velocity and angular velocity can be called the "kinematic state" or "kinematic properties" of your object.

Force, torque, and impulse can be called the "dynamic state" or "dynamic properties" of your object.

("Dynamics" and "kinematics" come from two sub-fields of classical mechanics that deal with motion with respect to forces and without respect to forces, respectively.)

share|improve this answer
1  
+1 for being "physically correct" :) –  teodron Aug 17 '12 at 7:59

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.