O3D_COLLISION()

O3D_COLLISION(N1,N2)

RETOURNE 1 SI LES OBJETS 3D NUMÉROS N1 ET N2 SONT EN COLLISION, 0 SINON

  • Type: Fonction
  • Paramètre: 1
  • Groupe: Objets 3D

ACTION

La fonction O3D_COLLISION(N1,N2) retourne 1 si les objets 3D numéros N1 et N2 sont en collision, 0 sinon.

SYNTAXE : Resultat=O3D_COLLISION(N1,N2)

  • N1 = numéro d'objet 3D (entier ou réel). Doit être plus grand que 0 et inférieur ou égal au nombre maximum permis d'objets 3D.
  • N2 = numéro d'objet 3D (entier ou réel). Doit être plus grand que 0 et inférieur ou égal au nombre maximum permis d'objets 3D.

UTILISATION

  • La fonction O3D_COLLISION() est utilisée pour savoir si des objets 3D sont en collision.

ERREUR

  • Si le numéro N1 n'est pas une expression correcte.
  • Si le numéro N1 excède le nombre maximum permis d'objets 3D.
  • Si le numéro N1 est inférieur ou égal à 0.
  • Si l'objet 3D numéro N1 n'existe pas.
  • Si le numéro N2 n'est pas une expression correcte.
  • Si le numéro N2 excède le nombre maximum permis d'objets 3D.
  • Si le numéro N2 est inférieur ou égal à 0.
  • Si l'objet 3D numéro N2 n'existe pas.

EXEMPLE

label move

scene3D 1:full_space 1

3d_sphere 1,0.5

3d_color 1,0,0,0

3d_position 1,-1.5,0,0

3d_collision_as_sphere 1

3d_sphere 2,0.5

3d_color 2,0,0,0

3d_position 2,0.9,0,0

3d_collision_as_sphere 2

timer 2

timer_interval 2,100

timer_on 2

on_timer 2,bouge

3D_point_object 1,2

end

move:

3d_move 1,0.1

if O3D_collision(1,2)=1

caption 0,"COLLISION"

color 1,0,0,0

3d_color 1,255,255,255

3d_color 2,255,255,255

wait 100

color 1,255,255,255

3d_color 1,0,0,0

3d_color 2,0,0,0

timer_off 2

end_if

return

EN RAPPORT

3D_COLLISION_AS_SPHERE

3D_COLLISION_AS_CUBE

3D_COLLISION_AS_ELLIPSOID

3D_COLLISION_AS_POINT

3D_COLLISION_AS_FACES