RENDER


    Documentation











[revenir à la page d'accueil]

RENDER est un simple conteneur permettant de manipuler et d'accéder facilement à son contenu :

    modèle 3D, render_get_model(), voir l'interface de MODEL.
    camera, render_get_camera(), voir l'interface de CAMERA.
    sources de lumières, render_sample_light_Le()


Un objet RENDER est créé et détruit par le couple de fonctions :

extern RENDER *render_new(MODEL *scene, char *light_material_name);
    crée un object render à partir d'un modèle déja chargé et du nom des matières permettant de repérer les sources de lumières dans le modèle

extern void render_free(RENDER *render);
    détruit un objet render.


Le reste de son interface est minimale :

extern MODEL *render_get_model(RENDER *render);
    renvoie le modèle 3D associé à l'objet render, voir l'interface de MODEL.

extern CAMERA *render_get_camera(RENDER *render);
    renvoie la camera associée à l'objet render, voir l'interface de CAMERA.


Les fonctions les plus importantes sont celles ci :

extern void render_sample_light_Le(RENDER *render, int *light_id, DPOINT *point, float *pa);
    renvoie un point à la surface d'une source de lumière. Le point et la source de lumière sont choisits aléatoirement. La probabilité associée au point est renvoyée dans pa (probabilité exprimé sur la mesure des aires). Le numéro de la source choisie est renvoyée dans light_id.

extern float render_get_light_emission(RENDER *render, int light_id, DPOINT *p, DPOINT *q);
    renvoie l'enérgie émise par un point q sur une source de lumière vers le point p. La source est désignée par son numéro, généralement obtenu par render_sample_light_Le().

extern float render_get_Le(RENDER *render, DPOINT *p);
    renvoie l'énergie émise par le point p s'il se trouve sur la surface d'une source de lumière.


extern int render_material_is_light(RENDER *render, int material_id);
    compare l'identifiant de matière à celui utilisé pour indiquer une source de lumière.

extern float render_face_get_area(RENDER *render, int face_id);
    renvoie l'aire d'une face du modèle. La face est identifiée par son numéro.





Exemples d'utilisation de RENDER :

...