namespace pour regrouper les types et les fonctions. More...
Namespaces | |
namespace | OBJ |
Classes | |
class | App |
application de base SDL + openGL. consultez le libSDL Programming Guide More... | |
class | Point2 |
point en dimension 2, utilise pour representer les coordonnees de textures d'un sommet, par exemple. More... | |
class | Vector |
vecteur en dimension 3. More... | |
class | Color |
represente une quantite d'energie, un tuple <rgba>. More... | |
class | Point |
representation d'un point de dimension 3. More... | |
class | HPoint |
representation d'un point homogene de dimension 4, transformation d'un Point par une projection (cf Perspective() et Transform). More... | |
class | Normal |
representation d'une normale de dimension 3, cf. Vector pour la description des operations. More... | |
struct | Ray |
representation d'un rayon. More... | |
struct | Hit |
representation d'un point d'intersection rayon / objet. More... | |
class | BBox |
representation d'une boite englobante alignee sur les axes (aabox). More... | |
class | GLManager |
manager pour les ressources openGL crees directement par l'application. More... | |
class | GLResource |
classe de base des resources openGL, referencees par l'application, proprietes du contexte openGL. cf GLResource, gestion des objets openGL. More... | |
struct | Pixel |
representation d'un pixel 'classique' rgba. More... | |
struct | HDRPixel |
representation d'un pixel 'hdr' rgba. More... | |
class | TImage |
utilisation interne. More... | |
class | ImageIO |
operations d'entree/sortie sur les formats standards, jpg, bmp, png, tiff, etc. More... | |
class | HDRImageIO |
operations d'entree/sortie sur une image .hdr. More... | |
struct | IOFileSystem |
struct | IOName |
utilisation interne. nommage d'un objet importe. More... | |
class | IOManager |
manager pour les 'objets' importes a partir d'un fichier. More... | |
class | IOResource |
classe de base des resources importees depuis un fichier, referencees par l'application, proprietes du gk::IOManager. More... | |
struct | SubMesh |
representation d'une partie d'un maillage associee a une matiere unique identifiee par son indice 'material_id'. More... | |
struct | MeshBuffer |
representation d'un ensemble d'attributs generiques des sommets du maillage. equivalent a un GLBuffer. More... | |
class | Mesh |
representation d'un maillage triangule. More... | |
class | MeshIO |
manager pour importer des maillages. More... | |
struct | MeshMaterial |
representation d'une matiere. More... | |
class | MeshMaterialIO |
manager pour importer des matieres. More... | |
class | Name |
representation d'un identifiant par une chaine de caracteres et sa valeur de hachage. More... | |
struct | PNTriangle |
representation d'un triangle 'geometrique'. More... | |
class | ProfilerClock |
horloge systeme, duree mesuree en micro secondes. More... | |
class | StatsCounter |
stocke un historique de valeurs de mesures. More... | |
class | StatsCounterIO |
manager de compteurs : conserve l'ensemble des compteurs crees par l'application et ecrit leur historique dans des fichiers textes portant le nom es compteurs. More... | |
class | ScopedTimer |
mesure le temps d'execution d'un bloc et enregistre la mesure dans un compteur nomme. More... | |
class | ScopedCounter |
creation / acces simplifie a un compteur nomme, gk::StatsCounter. More... | |
class | TimerSummary |
retrouve un compteur gk::StatsCounter et renvoie un resume des mesures du compteur. les mesures sont interpretees comme des durees en micro-secondes. More... | |
class | CounterSummary |
retrouve un compteur et renvoie un resume des mesures du compteur. les mesures ne sont pas "interpretees", cf TimerSummary More... | |
class | ISceneObject |
classe de base d'un objet de la scene. More... | |
class | Scene |
representation d'une scene hierarchique. More... | |
struct | TextSection |
representation d'une section d'un fichier texte. More... | |
class | TextFile |
stockage et lecture d'un fichier texte, source de shader, etc. More... | |
class | TextFileIO |
manager pour importer des ficheirs textes, sources, shaders, etc. More... | |
struct | Matrix4x4 |
representation d'une matrice homogene 4x4. More... | |
class | Transform |
representation d'une transformation == un changement de repere, du repere '1' vers le repere '2'. More... | |
struct | Triangle |
representation d'un triangle 'geometrique'. More... | |
class | GLShaderObject |
utilisation interne. abstraction d'un shader object, ressource openGL. More... | |
class | GLVertexShader |
representation d'un vertex shader object, objet openGL. More... | |
class | GLFragmentShader |
representation d'un fragment shader object, objet openGL. More... | |
class | GLGeometryShader |
class | GLControlShader |
class | GLEvaluationShader |
class | GLVertexShaderIO |
class | GLFragmentShaderIO |
class | GLGeometryShaderIO |
class | GLControlShaderIO |
class | GLEvaluationShaderIO |
class | GLShaderProgram |
representation d'un shader program openGL. More... | |
class | GL2ShaderProgram |
shader program openGL2, compose de :
| |
class | GL3ShaderProgram |
shader program openGL 3, compose de :
| |
class | GL4ShaderProgram |
shader program openGL 4, compose de :
| |
Typedefs | |
typedef Vector | Vector3 |
par habitude, declare le type Vecteur3 | |
typedef Color | Energy |
declare une couleur, un tripet <rgb> comme une couleur. | |
typedef Normal | Tangent |
une tangente se transforme de la meme maniere qu'une normale. | |
typedef TImage< HDRPixel > | HDRImage |
declaration d'une image hdr, pixels rgba. | |
typedef TImage< Pixel > | Image |
declaration d'une image 'classique', avec pixels rgba. | |
Functions | |
BBox | Union (const BBox &b, const Point &p) |
ajoute un point a l'aabox et renvoie la nouvelle aabox. | |
BBox | Union (const BBox &b, const BBox &b2) |
ajoute une aabox dans une autre et renvoie la nouvelle aabox. | |
std::ostream & | operator<< (std::ostream &os, const Vector &v) |
Vector | operator* (float f, const Vector &v) |
float | Dot (const Vector &v1, const Vector &v2) |
produit scalaire de 2 vecteurs. | |
float | AbsDot (const Vector &v1, const Vector &v2) |
valeur absolue du produit scalaire de 2 vecteurs. | |
float | ZeroDot (const Vector &v1, const Vector &v2) |
max(0, dot) du produit scalaire de 2 vecteurs. | |
Vector | Cross (const Vector &v1, const Vector &v2) |
produit vectoriel de 2 vecteurs. | |
Vector | Cross (const Vector &v1, const Normal &v2) |
produit vectoriel d'un vecteur et d'une normale. | |
Vector | Cross (const Normal &v1, const Vector &v2) |
produit vectoriel d'une normale et d'un vecteur. | |
Vector | Normalize (const Vector &v) |
renvoie un vecteur de longueur 1 de meme direction que v. | |
void | CoordinateSystem (const Vector &v1, Vector *v2, Vector *v3) |
construit un repere orthogonal a partir d'un vecteur v1. | |
float | Distance (const Point &p1, const Point &p2) |
renvoie la distance entre 2 points. | |
float | DistanceSquared (const Point &p1, const Point &p2) |
renvoie le carre de la distance entre 2 points. | |
std::ostream & | operator<< (std::ostream &os, const Point &v) |
Point | operator* (float f, const Point &p) |
Normal | operator* (float f, const Normal &n) |
Normal | Normalize (const Normal &n) |
renvoie une normale de meme direction, mais de longeur 1. | |
float | Dot (const Normal &n1, const Vector &v2) |
produit scalaire d'une normale et d'un vecteur. | |
float | Dot (const Vector &v1, const Normal &n2) |
produit scalaire d'un vecteur et d'une normale. | |
float | Dot (const Normal &n1, const Normal &n2) |
produit scalaire de 2 normales. | |
float | AbsDot (const Normal &n1, const Vector &v2) |
valeur absolue du produit scalaire d'une normale et d'un vecteur. | |
float | AbsDot (const Vector &v1, const Normal &n2) |
valeur absolue du produit scalaire d'un vecteur et d'une normale. | |
float | AbsDot (const Normal &n1, const Normal &n2) |
valeur absolue du produit scalaire de 2 normales. | |
float | ZeroDot (const Normal &v1, const Vector &v2) |
max(0, dot) du produit scalaire de 2 vecteurs. | |
float | ZeroDot (const Vector &v1, const Normal &v2) |
max(0, dot) du produit scalaire de 2 vecteurs. | |
float | ZeroDot (const Normal &v1, const Normal &v2) |
max(0, dot) du produit scalaire de 2 vecteurs. | |
std::ostream & | operator<< (std::ostream &os, const Normal &v) |
std::ostream & | operator<< (std::ostream &os, Ray &r) |
std::ostream & | operator<< (std::ostream &os, const BBox &b) |
float | Lerp (const float t, const float v1, const float v2) |
interpolation lineaire entre 2 reels, x= (1 - t) v1 + t v2 | |
float | Clamp (const float value, const float low, const float high) |
limite une valeur entre un min et un max. | |
int | Clamp (const int value, const int low, const int high) |
limite une valeur entre un min et un max. | |
float | Radians (const float deg) |
conversion degres vers radians. | |
float | Degrees (const float rad) |
conversion radians vers degres. | |
Vector | SphericalDirection (float sintheta, float costheta, float phi) |
renvoie un vecteur dont la direction est representee en coordonness polaires. | |
Vector | SphericalDirection (float sintheta, float costheta, float phi, const Vector &x, const Vector &y, const Vector &z) |
renvoie les composantes d'un vecteur dont la direction est representee en coordonnees polaires. | |
float | SphericalTheta (const Vector &v) |
renvoie l'angle theta d'un vecteur avec la normale, l'axe Z, (utilisation dans un repere local). | |
float | SphericalPhi (const Vector &v) |
renvoie l'angle phi d'un vecteur avec un vecteur tangent, l'axe X, (utilisation dans un repere local). | |
int | MaterialLoadFromMTL (const std::string &filename) |
lit un fichier .mtl et renvoie la liste de matieres decrites dans le fichier. | |
int | MeshLoadFromOBJ (const std::string &filename, Mesh *mesh) |
charge un maillage triangule et ses matieres a partir d'un maya .obj et .mtl. | |
bool | operator== (const Name &a, const Name &b) |
bool | operator!= (const Name &a, const Name &b) |
bool | operator> (const Name &a, const Name &b) |
bool | operator< (const Name &a, const Name &b) |
int | compare (const Name &a, const Name &b) |
GLShaderProgram * | createShaderProgram (const std::string &vertex, const std::string &fragment) |
gestion 'auto' des ressources openGL : pour les shader programs opengl > 2. | |
GL3ShaderProgram * | createShaderProgram3 (const std::string &vertex, const std::string &geometry, const std::string &fragment) |
gestion 'auto' des ressources openGL : pour les shader programs opengl > 3. | |
GL4ShaderProgram * | createShaderProgram4 (const std::string &vertex, const std::string &control, const std::string &evaluation, const std::string &geometry, const std::string &fragment) |
gestion 'auto' des ressources openGL : pour les shader programs opengl > 4. | |
std::ostream & | operator<< (std::ostream &os, const Transform &t) |
Transform | Translate (const Vector &delta) |
renvoie la transformation associee a une translatation du vecteur delta. | |
Transform | Scale (float x, float y, float z) |
renvoie la transformation associee au changement d'echelle (x, y, z). | |
Transform | Scale (float v) |
renvoie la transformation associee au changement d'echelle (v, v, v). | |
Transform | RotateX (float angle) |
renvoie la transformation associee a une rotation autour de l'axe X, angle est en degres. | |
Transform | RotateY (float angle) |
renvoie la transformation associee a une rotation autour de l'axe Y, angle est en degres. | |
Transform | RotateZ (float angle) |
renvoie la transformation associee a une rotation autour de l'axe Z, angle est en degres. | |
Transform | Rotate (float angle, const Vector &axis) |
renvoie la transformation associee a une rotation autour d'un vecteur, angle est en degres. | |
Transform | LookAt (const Point &pos, const Point &look, const Vector &up) |
renvoie la transformation camera (View). | |
Transform | Orthographic (float znear, float zfar) |
renvoie la transformation associee a une camera orthographique (Projection) | |
Transform | Orthographic (const float left, const float right, const float bottom, const float top, const float znear, const float zfar) |
renvoie la transformation associee a une camera orthographique (Projection) | |
Transform | Perspective (float fov, float aspect, float znear, float zfar) |
renvoie la transformation associee a une camera perspective (Projection). | |
Transform | Viewport (float width, float height) |
renvoie la transformation entre le repere projectif de la camera et le repere fenetre (Viewport). |
namespace pour regrouper les types et les fonctions.
BBox gk::Union | ( | const BBox & | b, | |
const Point & | p | |||
) |
ajoute un point a l'aabox et renvoie la nouvelle aabox.
ajoute un point dans l'aabox.
References gk::BBox::pMin.
BBox gk::Union | ( | const BBox & | b, | |
const BBox & | b2 | |||
) |
ajoute une aabox dans une autre et renvoie la nouvelle aabox.
ajoute une autre aabox.
References gk::BBox::pMin.