#include <cfloat>
#include "defines.h"
#include "TexCoordinate.h"
#include "Vec3f.h"
#include "RGBAColor.h"
Include dependency graph for defines.cpp:
Go to the source code of this file.
Functions | |
float | frand () |
float | lerp (float a, float b, float f) |
Vec3f | lerp (const Vec3f &a, const Vec3f &b, float f) |
RGBAColor | lerp (const RGBAColor &a, const RGBAColor &b, float f) |
Variables | |
const float | EPSILON = 1e-6f |
Some global constants float comparision constant. | |
const int | RESX = 800 |
default x resolution | |
const int | RESY = 600 |
default y resolution | |
const float | MIN_INFLUENCE = 1.0f/256.0f |
lowest boundary for adaptive recursion termination | |
const int | MAX_RECURSION_DEEP = 100 |
maximum recursion depth for recursion | |
const unsigned int | FRAMES = 24*6 |
maximum default number of threads | |
const float | BALL_RADIUS = 0.034f |
radius of the balls | |
const Vec3f | WORLD_UP = Vec3f(0, 1, 0) |
Global up vector. | |
const Vec3f | WORLD_UP_MASK = Vec3f(1, 0, 1) |
Vector to mask the up direction. | |
const Vec3f | TABLE_MIN = Vec3f(-0.701, 1.0, -1.452) |
Lower left corner of the table plate. | |
const Vec3f | TABLE_MAX = Vec3f( 0.679, 1.0 + 2*BALL_RADIUS, 1.438) |
Upper right corner of the table plate. | |
const float | PHYS_EPS = 0.00005 |
Independent epsilon for physics. | |
const float | MUE_SLIDING = 0.3f |
Sliding friction factor between ball and table. | |
const float | MUE_ROLLING = 0.01f |
Rolling friction factor between ball and table. | |
const float | MUE_BALLS = 0.1f |
Friction factor between balls. | |
const float | COLLISION_LOSS = 0.99f |
Factor of energy loss during a collision. | |
const float | T_IMPULSE = 0.005 |
Collision impulse length. | |
const float | GRAVITY = 9.81f |
Gravity constant. | |
const float | CONTACT_RADIUS = 0.005f |
Radius of the contact circle between ball and table. | |
const float | BALL_MASS = 0.16f |
Ball mass. | |
const float | SPREAD_POW = 0.6f |
Spread factor. | |
const float | SPREAD_MAX_V = 2.0f |
Maximal spread velocity. | |
const float | FRAME_LENGTH = 1.0f/24 |
Frame length. |
float frand | ( | ) |
Generate a pseudorandom number uniformly distributed between [0.0, 1.0)
Definition at line 46 of file defines.cpp.
Referenced by QuadAreaLight::illuminate(), DepthOfFieldCamera::initRay(), StratifiedSampleGenerator::samples(), and RandomSampleGenerator::samples().
Linearly interpolate 2 colors
a | First value | |
b | Second value | |
f | Transmission coefficient |
Definition at line 90 of file defines.cpp.
References RGBAColor::a(), RGBAColor::b(), RGBAColor::g(), and RGBAColor::r().
Linearly interpolate 2 vectors
a | First value | |
b | Second value | |
f | Transmission coefficient |
Definition at line 75 of file defines.cpp.
float lerp | ( | float | a, | |
float | b, | |||
float | f | |||
) |
Linearly interpolate 2 float values
a | First value | |
b | Second value | |
f | Transmission coefficient |
Definition at line 62 of file defines.cpp.
Referenced by PerlinNoise::interpolatedNoise3D(), WoodShader::shade(), TransparentShader::shade(), RefractiveShader::shade(), PhongShader::shade(), MirrorShader::shade(), and CombineShader::shade().
const float BALL_MASS = 0.16f |
Ball mass.
Definition at line 36 of file defines.cpp.
Referenced by BilliardPhysics::BilliardPhysics(), BilliardPhysics::dumpToFile(), BilliardPhysics::loadFromFile(), and SphereObject::SphereObject().
const float BALL_RADIUS = 0.034f |
radius of the balls
Definition at line 21 of file defines.cpp.
Referenced by BorderCollision::collide(), BallCollision::collide(), BilliardPhysics::dumpToFile(), BilliardPhysics::loadFromFile(), PhysicalObject::updateProperties(), BilliardPhysics::willCollide(), and BilliardPhysics::willHitBorder().
const float COLLISION_LOSS = 0.99f |
Factor of energy loss during a collision.
Definition at line 32 of file defines.cpp.
Referenced by BilliardPhysics::BilliardPhysics(), BorderCollision::collide(), BallCollision::collide(), BilliardPhysics::dumpToFile(), and BilliardPhysics::loadFromFile().
const float CONTACT_RADIUS = 0.005f |
Radius of the contact circle between ball and table.
Definition at line 35 of file defines.cpp.
Referenced by BilliardPhysics::BilliardPhysics(), BilliardPhysics::dumpToFile(), BilliardPhysics::loadFromFile(), and PhysicalObject::updateProperties().
const float EPSILON = 1e-6f |
Some global constants float comparision constant.
Definition at line 11 of file defines.cpp.
Referenced by Sphere::axes(), BilliardPhysics::BilliardPhysics(), BorderCollision::collide(), BallCollision::collide(), CameraInstructionMove::execute(), Box::extend(), SAHKDTree::findBestPlane(), SAHKDTree::generateEvents(), QuadAreaLight::illuminate(), PointLight::illuminate(), Ray::init(), Triangle::intersect(), Sphere::intersect(), KDTree::intersect(), Box::intersect(), Node::leafIntersect(), BilliardPhysics::loadFromFile(), Vec3f::normal(), TexCoordinate::normal(), Vec3f::normalize(), TexCoordinate::normalize(), SplitPlane::operator<(), Vec3f::operator==(), PhysicalObject::rotate(), WoodShader::shade(), TransparentShader::shade(), RefractiveShader::shade(), PhongShader::shade(), MirrorShader::shade(), Box::split(), BilliardPhysics::step(), PhysicalObject::updateProperties(), BilliardPhysics::willCollide(), and BilliardPhysics::willHitBorder().
const float FRAME_LENGTH = 1.0f/24 |
Frame length.
Definition at line 39 of file defines.cpp.
Referenced by BilliardPhysics::BilliardPhysics(), BilliardPhysics::dumpToFile(), BilliardPhysics::loadFromFile(), BilliardPhysics::step(), BilliardPhysics::willCollide(), and BilliardPhysics::willHitBorder().
const unsigned int FRAMES = 24*6 |
const float GRAVITY = 9.81f |
Gravity constant.
Definition at line 34 of file defines.cpp.
Referenced by BilliardPhysics::BilliardPhysics(), BilliardPhysics::dumpToFile(), BilliardPhysics::loadFromFile(), and PhysicalObject::updateProperties().
const int MAX_RECURSION_DEEP = 100 |
maximum recursion depth for recursion
Definition at line 17 of file defines.cpp.
Referenced by Scene::rayTrace(), RefractiveShader::shade(), and MirrorShader::shade().
const float MIN_INFLUENCE = 1.0f/256.0f |
lowest boundary for adaptive recursion termination
Definition at line 16 of file defines.cpp.
Referenced by RefractiveShader::shade(), and MirrorShader::shade().
const float MUE_BALLS = 0.1f |
Friction factor between balls.
Definition at line 31 of file defines.cpp.
Referenced by BilliardPhysics::BilliardPhysics(), BallCollision::collide(), BilliardPhysics::dumpToFile(), and BilliardPhysics::loadFromFile().
const float MUE_ROLLING = 0.01f |
Rolling friction factor between ball and table.
Definition at line 30 of file defines.cpp.
Referenced by BilliardPhysics::BilliardPhysics(), BilliardPhysics::dumpToFile(), BilliardPhysics::loadFromFile(), and PhysicalObject::updateProperties().
const float MUE_SLIDING = 0.3f |
Sliding friction factor between ball and table.
Definition at line 29 of file defines.cpp.
Referenced by BilliardPhysics::BilliardPhysics(), BorderCollision::collide(), BilliardPhysics::dumpToFile(), BilliardPhysics::loadFromFile(), and PhysicalObject::updateProperties().
const float PHYS_EPS = 0.00005 |
Independent epsilon for physics.
Definition at line 28 of file defines.cpp.
Referenced by BilliardPhysics::BilliardPhysics(), BallCollision::collide(), BilliardPhysics::dumpToFile(), BilliardPhysics::loadFromFile(), PhysicalObject::updateProperties(), and BilliardPhysics::willHitBorder().
const int RESX = 800 |
const int RESY = 600 |
const float SPREAD_MAX_V = 2.0f |
Maximal spread velocity.
Definition at line 38 of file defines.cpp.
Referenced by BallCollision::collide(), BilliardPhysics::dumpToFile(), and BilliardPhysics::loadFromFile().
const float SPREAD_POW = 0.6f |
Spread factor.
Definition at line 37 of file defines.cpp.
Referenced by BallCollision::collide(), BilliardPhysics::dumpToFile(), and BilliardPhysics::loadFromFile().
const float T_IMPULSE = 0.005 |
Collision impulse length.
Definition at line 33 of file defines.cpp.
Referenced by BilliardPhysics::BilliardPhysics(), BorderCollision::collide(), BallCollision::collide(), BilliardPhysics::dumpToFile(), and BilliardPhysics::loadFromFile().
const Vec3f TABLE_MAX = Vec3f( 0.679, 1.0 + 2*BALL_RADIUS, 1.438) |
Upper right corner of the table plate.
Definition at line 25 of file defines.cpp.
Referenced by BilliardPhysics::BilliardPhysics().
Lower left corner of the table plate.
Definition at line 24 of file defines.cpp.
Referenced by BilliardPhysics::BilliardPhysics().
Global up vector.
Definition at line 22 of file defines.cpp.
Referenced by PhysicalObject::updateProperties().
const Vec3f WORLD_UP_MASK = Vec3f(1, 0, 1) |
Vector to mask the up direction.
Definition at line 23 of file defines.cpp.
Referenced by PhysicalObject::updateProperties().