Principe

Données surfaciques en entrée :

  • Soit des Triangles, organisés en blocs. Les triangles ne sont pas copiés par RayBooster, c'est la base de données du logiciel hôte qui est utilisée au moyen de callbacks.

  • Soit des Instances : duplications d'une base de données RayBooster, ayant subit une transformation matricielle.

Manipulation des données surfaciques : les surfaces (triangles et instances) peuvent être ajoutées, modifiées, supprimées.

Définition d'un rayon (entrée):

  • origine, direction.

  • distances minimales et maximales de calcul d'impact.

  • précision : distance minimale entre 2 impacts consécutifs.

  • optionnel : identificateur de la surface de départ (permet d'éviter les auto-intersections).

Définition d'un impact (sortie) :

  • position, normale normée, coordonnées barycentriques.

  • distance sur le rayon.

  • identificateur de la surface.

Différents types d'intersection rayon / scène :

  • Calcul du premier impact le long d'un rayon.

  • Test d'occlusion : comme ci-dessus, mais en évitant le calcul de l'intersection.

  • Calcul des n premiers impacts le long d'un rayon.

Compatibilité Multi-thread : RayBooster est thread-safe. Plusieurs intersections rayon / scènes peuvent être faits simultanément dans différents threads.

Fonctionnalités avancées :

  • Childhood : organisation des bases de données en arborescence, pour calculer un rayon sur plusieurs scènes simultanément.

  • Définition de Surface : il y a possibilité d'ajouter n'importe quel type de surface.

 

 

    © RayBooster est un produit de HPC-SA.