[3D] Collision

Généralités sur la programmation 3D
Avatar de l’utilisateur
blendman
Messages : 2017
Inscription : sam. 19/févr./2011 12:46

[3D] Collision

Message par blendman »

salut

J'ai plusieurs questions concernant la 3D (avec le merveilleux nouveau Purebasic 4.60 :))

Comment gère t-on les collisions en pb et avec la 3D ?

Merci bien les z'amis :D
Dernière modification par blendman le lun. 11/avr./2011 14:03, modifié 2 fois.
Avatar de l’utilisateur
Cool Dji
Messages : 1126
Inscription : ven. 05/sept./2008 11:42
Localisation : Besançon
Contact :

Re: [3D] Collision et shaders

Message par Cool Dji »

Salut Blendman,

J'essaye de gérer en utilisant au maximum les volumes (x,y,z) des mesh.
C'est ce qui prends le moins de temps-machine.

Après, il existe des fonctions dans PB mais je ne sais pas vraiment ce qu'elles valent sur des formes de mesh complexes (hors formes géométriques de type cube, sphere...).
Regarde le code sur les Hinge Joints de Kelebrindae et joue sur la valeur de 0.25 des targets (mets les à 100, par exemple)
EntityPhysicBody(temp, #PB_Entity_BoxBody, 0.25)

Ces collisions se gèrent toutes seules. Je ne sais pas vraiment si on peut savoir quelles collisions se sont produites (nécessaires pour savoir si le joueur reçoit un projectile dans le corps, par exemple)=> ça, le calcul de collisions par coordonnées le gère très bien...

Je pense, qu'il faut utiliser les 2 types de collisions à bon escient...
Only PureBasic makes it possible
Avatar de l’utilisateur
blendman
Messages : 2017
Inscription : sam. 19/févr./2011 12:46

Re: [3D] Collision et shaders

Message par blendman »

Cool Dji a écrit :Salut Blendman,

J'essaye de gérer en utilisant au maximum les volumes (x,y,z) des mesh.
C'est ce qui prends le moins de temps-machine.

Après, il existe des fonctions dans PB mais je ne sais pas vraiment ce qu'elles valent sur des formes de mesh complexes (hors formes géométriques de type cube, sphere...).
Regarde le code sur les Hinge Joints de Kelebrindae et joue sur la valeur de 0.25 des targets (mets les à 100, par exemple)
EntityPhysicBody(temp, #PB_Entity_BoxBody, 0.25)

Ces collisions se gèrent toutes seules. Je ne sais pas vraiment si on peut savoir quelles collisions se sont produites (nécessaires pour savoir si le joueur reçoit un projectile dans le corps, par exemple)=> ça, le calcul de collisions par coordonnées le gère très bien...

Je pense, qu'il faut utiliser les 2 types de collisions à bon escient...
yep, j'ai fait quelques tests et les "collisions" par coordonnées (ou position) me semble le plus rapide et le plus performant :)
Répondre