libdms Classes
dms::Vector3
#include <dmsVector3.h>
dms::Vector3 vec(1,0,0);
Major features:
- Add/subtract two vectors with +, -, +=, and -=
- Multiply/divide by scale with *, /, *=, and /=
- length(), lengthSquared()
- normalize()
- dot(vector2)
- cross(vector2)
- distance(vector2), distanceSquared(vector2)
- drawLine()
dms::Vector4
#include <dmsVector4.h>
dms::Vector3 red(1,0,0,1);
Major features:
- Add/subtract two vectors with +, -, +=, and -=
- Multiply/divide by scale with *, /, *=, and /=
- length(), lengthSquared()
- normalize()
- dot(vector2)
- distance(vector2), distanceSquared(vector2)
dms::Camera
#include <dmsCamera.h>
dms::Camera camera(40, 1, 0.1, 100);
...
camera.apply();
Major features:
- Set/get FOVY, aspect, near, far, position, rotations
- turn(angle)
- pitch(angle)
- zoom(angle)
- moveForward(distance), moveLeft(distance), moveUp(distance)
- move(vector)
- forward(), left(), up()
dms::Light
#include <dmsLight.h>
dms::Light light;
...
light.setInfinitePosition(1, 1, 0.5);
...
light.apply();
Major features:
- setAmbient(color), setDiffuse(color), setSpecular(color)
- setPosition(pos), setInfinitePosition(pos), setLocalPosition(pos)
- setAttenuation(k, l, q)
- setSpotDirection(dir)
- setSpotCutoff(cutoff)
- setSpotExponent(exponent)
dms::Material
#include <dmsMaterial.h>
dms::Vector4 red(1, 0, 0, 1);
dms::Material redMaterial(red);
...
redMaterial.apply();
Major features:
- setAmbient(color), setDiffuse(color), setSpecular(color), setEmission(color)
- setAmbientAndDiffuse(color)
- setShininess(shininess)