AccueilAccueil  FAQFAQ  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  Connexion  
Le Deal du moment : -20%
Ecran PC GIGABYTE 28″ LED M28U 4K ( IPS, 1 ms, ...
Voir le deal
399 €

 

 [Resolu]Problème avec collision _ line avec mur entre 2 obj

Aller en bas 
+5
Rom's
jo
Pepsy
Innoson
loucheman
9 participants
AuteurMessage
loucheman
Très bonne participation
loucheman


Messages : 115

[Resolu]Problème avec collision _ line avec mur entre 2 obj Empty
MessageSujet: [Resolu]Problème avec collision _ line avec mur entre 2 obj   [Resolu]Problème avec collision _ line avec mur entre 2 obj EmptyDim 15 Avr 2007 - 15:49

Bonjour à tous !

J'ai un problème avec la fonction collision_line. Je l'utilise pour voir si 2 objets se voient, mais le problème est que quand je me déplace avec mon avion et que j'arrive à la hauteur de mon ennemie mon avion ne détecte pas le mur entre les 2 avions pendant un court laps de temps...

J'ai mis un exemple...

aviontestvue2objets.gm6 - 0.01MB

Merci à l'avance...

Loucheman


Dernière édition par le Lun 16 Avr 2007 - 4:18, édité 1 fois
Revenir en haut Aller en bas
Innoson
Utilisateur confirmé: Rang ****



Messages : 927
Projet Actuel : Aller voir la bas si jy suis.

[Resolu]Problème avec collision _ line avec mur entre 2 obj Empty
MessageSujet: Re: [Resolu]Problème avec collision _ line avec mur entre 2 obj   [Resolu]Problème avec collision _ line avec mur entre 2 obj EmptyDim 15 Avr 2007 - 16:51

je vais voir sa super

_________________


tchou tchou motherfucker
Revenir en haut Aller en bas
Innoson
Utilisateur confirmé: Rang ****



Messages : 927
Projet Actuel : Aller voir la bas si jy suis.

[Resolu]Problème avec collision _ line avec mur entre 2 obj Empty
MessageSujet: Re: [Resolu]Problème avec collision _ line avec mur entre 2 obj   [Resolu]Problème avec collision _ line avec mur entre 2 obj EmptyDim 15 Avr 2007 - 16:58

a mais c'est simple voici le lien du gm6 réparer :
http://www.zshare.net/download/aviontestvue2objetsresolu-gm6.html
si le problème est pas résole reformule moi ta questions maiis normalement c'est sa.

PS: Qui a soif, rêve qu'il boit. ne rêve pas que tu noit, et essaye de résoudre les erreurs par toi même sinon tu apprend rien, dans se cas tu envérra toujour tes erreur a résoudre par les autre (comme tu le fait ici ou sur GameMakerZone)
C'est pas méchant, mais essayde chercher par toi-même, télécharge l'aide de gamemaker en francais si tu l'a pas.

_________________


tchou tchou motherfucker
Revenir en haut Aller en bas
loucheman
Très bonne participation
loucheman


Messages : 115

[Resolu]Problème avec collision _ line avec mur entre 2 obj Empty
MessageSujet: Re: [Resolu]Problème avec collision _ line avec mur entre 2 obj   [Resolu]Problème avec collision _ line avec mur entre 2 obj EmptyDim 15 Avr 2007 - 18:06

Salut Innoson,

Rien n'est résolu !

Il semble que la ligne de collision passe entre les 2 blocs sans leurs toucher... J'ai essayé la fonction collision_line avec precise = true ou precise=false, mais cela ne change rien...

j'ai changé la sprite du bloc pour y mettre un contour et j'ai fait un print screen de l'erreur :

[Resolu]Problème avec collision _ line avec mur entre 2 obj Collis11

Tu vois, les 2 avions se voient, mais il ne devrait pas : Il y a un mur entre les 2 avions !!!

Innoson a écrit:

PS: Qui a soif, rêve qu'il boit. ne rêve pas que tu noit, et essaye de résoudre les erreurs par toi même sinon tu apprend rien, dans se cas tu envérra toujour tes erreur a résoudre par les autre (comme tu le fait ici ou sur GameMakerZone)
C'est pas méchant, mais essayde chercher par toi-même, télécharge l'aide de gamemaker en francais si tu l'a pas.

Ne t'inquiète pas, je cherche par moi-même, dans l'aide anglaise, dans l'aide française et sur le forum avant de demander...

Merci à l'avance !

Loucheman
Revenir en haut Aller en bas
Pepsy
Utilisateur confirmé: Rang ***
Pepsy


Messages : 608
Localisation : Devant mon ordinateur à écrire des lignes de codes
Projet Actuel : RPG

[Resolu]Problème avec collision _ line avec mur entre 2 obj Empty
MessageSujet: Re: [Resolu]Problème avec collision _ line avec mur entre 2 obj   [Resolu]Problème avec collision _ line avec mur entre 2 obj EmptyDim 15 Avr 2007 - 18:37

lu
bon je regarde
Revenir en haut Aller en bas
http://creation-pepsy.ifrance.com
jo
*Excellent utilisateur*
jo


Messages : 4879
Localisation : CENSURE T_T
Projet Actuel : FAC

[Resolu]Problème avec collision _ line avec mur entre 2 obj Empty
MessageSujet: Re: [Resolu]Problème avec collision _ line avec mur entre 2 obj   [Resolu]Problème avec collision _ line avec mur entre 2 obj EmptyDim 15 Avr 2007 - 18:51

tiens innoson , je croyais que tu n'aimais pas ce fofo happy1

_________________
http://viciousslugs.sup.fr/ <- Des imbéciles en action. Venez visiter, on recherche des lecteurs, des auteurs, et ça paye mal. En fait ça paye pas, mais ya moyen de se marrer.
Revenir en haut Aller en bas
http://psyckho.skyrock.com/
Rom's
Utilisateur confirmé: Rang *****
Rom's


Messages : 1525
Localisation : non c'est pas moi!

[Resolu]Problème avec collision _ line avec mur entre 2 obj Empty
MessageSujet: Re: [Resolu]Problème avec collision _ line avec mur entre 2 obj   [Resolu]Problème avec collision _ line avec mur entre 2 obj EmptyDim 15 Avr 2007 - 19:04

Bah je crois qu'il a dit qu'il l'aimait ce fofo. :oui:

_________________
Comment vas-tu Invité ?
Rom's a écrit:
Comment vas tu edi9999?

edi9999 a écrit:
Tres bien merci roms,et toi ?

Ben je vais très bien merci à toi ^^
Revenir en haut Aller en bas
Innoson
Utilisateur confirmé: Rang ****



Messages : 927
Projet Actuel : Aller voir la bas si jy suis.

[Resolu]Problème avec collision _ line avec mur entre 2 obj Empty
MessageSujet: Re: [Resolu]Problème avec collision _ line avec mur entre 2 obj   [Resolu]Problème avec collision _ line avec mur entre 2 obj EmptyDim 15 Avr 2007 - 21:06

jo a écrit:
tiens innoson , je croyais que tu n'aimais pas ce fofo happy1
comme le dit mon amis de date romain, j'ai dis une fois en public ici que j'aimais le cbna, quand je suis arriver ici, et j'ai dit seulement que il y avais des gens irréspéctueuc sur se forum, pas que jje l'imais pas,

>> loucheman je vais trouver une solution pas deproblème, car la fonction collision_line mas aussi souvent poser des problème.
aux pire des cas, DLL gnii je vais voir sa se soir

_________________


tchou tchou motherfucker
Revenir en haut Aller en bas
Innoson
Utilisateur confirmé: Rang ****



Messages : 927
Projet Actuel : Aller voir la bas si jy suis.

[Resolu]Problème avec collision _ line avec mur entre 2 obj Empty
MessageSujet: Re: [Resolu]Problème avec collision _ line avec mur entre 2 obj   [Resolu]Problème avec collision _ line avec mur entre 2 obj EmptyDim 15 Avr 2007 - 21:58

j'ai fait une engine de collision_line_direction,
gm6:
http://www.zshare.net/download/nouveau-collision_line-gm6.html
aucun problème, si tu en a encore un, contact moi et reformule ta question très clairement et en détails.
sa pourait aider des personnese système de collision line, essayez le.
merci.

_________________


tchou tchou motherfucker
Revenir en haut Aller en bas
Topaze22
*Excellent utilisateur*
Topaze22


Messages : 6213
Localisation : Sur la Lune
Projet Actuel : Projet HELLO/TOPAZE22 Mario Bros World

[Resolu]Problème avec collision _ line avec mur entre 2 obj Empty
MessageSujet: Re: [Resolu]Problème avec collision _ line avec mur entre 2 obj   [Resolu]Problème avec collision _ line avec mur entre 2 obj EmptyDim 15 Avr 2007 - 22:08

Citation :
Ne t'inquiète pas, je cherche par moi-même, dans l'aide anglaise, dans l'aide française et sur le forum avant de demander...
Excélent, tu as fais un bon pas pour t'améliorer alors Hat Le CBNA

_________________
Topique pour le Projet Hello Mario en préparation.
Sorti du topique lorsque la première démo sera disponible.
[Resolu]Problème avec collision _ line avec mur entre 2 obj Projet13
Revenir en haut Aller en bas
jo
*Excellent utilisateur*
jo


Messages : 4879
Localisation : CENSURE T_T
Projet Actuel : FAC

[Resolu]Problème avec collision _ line avec mur entre 2 obj Empty
MessageSujet: Re: [Resolu]Problème avec collision _ line avec mur entre 2 obj   [Resolu]Problème avec collision _ line avec mur entre 2 obj EmptyDim 15 Avr 2007 - 22:40

ok super

_________________
http://viciousslugs.sup.fr/ <- Des imbéciles en action. Venez visiter, on recherche des lecteurs, des auteurs, et ça paye mal. En fait ça paye pas, mais ya moyen de se marrer.
Revenir en haut Aller en bas
http://psyckho.skyrock.com/
loucheman
Très bonne participation
loucheman


Messages : 115

[Resolu]Problème avec collision _ line avec mur entre 2 obj Empty
MessageSujet: Re: [Resolu]Problème avec collision _ line avec mur entre 2 obj   [Resolu]Problème avec collision _ line avec mur entre 2 obj EmptyLun 16 Avr 2007 - 4:17

Merci Innoson,

Ton script m'a été très utile...

Cependant, il contenait une petite erreur que j'ai corrigée... le test de collision fesait une ligne droite vers la coordonnée désirée mais continuait par la suite son chemin si l'objet de la collision n'était pas rencontré...

Dans mon cas, tout étais ok quand un mur était entre mes 2 avions : elles ne se voyaient pas... mais si mes 2 avions étaient une à côté de l'autre et qu'un mur se trouvait derrière l'avion ennemie, le mur était détecté et mes avions ne se voyaient plus même s'il n'y avait pas d'obstacles entre eux...

Pour corriger le problème, au lieu d'utiliser maxDist = sqrt(sqr(view_wview[0])+sqr(view_hview[0])) (longueur de la diagonale de la view 0), j'ai ajouté un nouvel argument (argument4) à la fonction qui sert à définir le déplacement maximal pour la collision. Normalement, comme argument4, j'utiliserai point_distance(x,y,SonAvion.x,SonAvion.Y)...


Pour tous ceux qui voudraient bénéficier du script corrigé, le voici :
(Un gros merci bien spécial à Innoson !)

Script:
Code:
//Script collision_line_direction

// Argument0 = x
// Argument1 = y
// Argument2 = objet a collisoner
// Argument3 = direction de la line a collision
// Argument4 = Distance Maximum à parcourir
i=0// i est la distance qui s'épare l'avion d'une collision
for(i=0;i<argument4;i+=1)
    {
    xPoint=argument0+lengthdir_x(i,argument3)
    yPoint=argument1+lengthdir_y(i,argument3)
    Collision=collision_point(xPoint,yPoint,argument2,false,true)
    if Collision{return Collision break} // si il y a une collision on arrete de fair avancer la line et on retourn au collisions
    }
 /* // si tu veut que si il y est quelque chose qui touche et que l'on fasse une action c'est comme sa :
 else{ // si il y a une collision
  if Collision.object_index==objEnemy{objCollide.myHealth-=1}
 }*/

Exemple d'appel du script:
Code:
if collision_line_direction(x,y,SBlock,point_direction(x,y,SonAvion.x,SonAvion.y),point_distance(x,y,SonAvion.x,SonAvion.y))

Voici le lien de l'exemple corrigé...
nouveau collision_line2.gm6 - 0.01MB

Encore Merci !

Loucheman
Revenir en haut Aller en bas
Invité
Invité




[Resolu]Problème avec collision _ line avec mur entre 2 obj Empty
MessageSujet: Re: [Resolu]Problème avec collision _ line avec mur entre 2 obj   [Resolu]Problème avec collision _ line avec mur entre 2 obj EmptyLun 14 Mai 2007 - 13:58

tient je crois que ce truc va m'être utile super
Revenir en haut Aller en bas
Wargamer
*Excellent utilisateur*
Wargamer


Messages : 6938
Projet Actuel : Bataille de cake au fruits

[Resolu]Problème avec collision _ line avec mur entre 2 obj Empty
MessageSujet: Re: [Resolu]Problème avec collision _ line avec mur entre 2 obj   [Resolu]Problème avec collision _ line avec mur entre 2 obj EmptyMar 15 Mai 2007 - 14:18

ouai c util pour une IA de platforme Very Happy

_________________
[Resolu]Problème avec collision _ line avec mur entre 2 obj Wargamer3
Règle #1 du CBNA, ne pas chercher à faire dans la subtilité; personne comprend
Revenir en haut Aller en bas
loucheman
Très bonne participation
loucheman


Messages : 115

[Resolu]Problème avec collision _ line avec mur entre 2 obj Empty
MessageSujet: Re: [Resolu]Problème avec collision _ line avec mur entre 2 obj   [Resolu]Problème avec collision _ line avec mur entre 2 obj EmptyMar 15 Mai 2007 - 23:44

Je travaille sur autre chose : une fonction qui détecte s'il y a collision et si la collision s'est produite du côté gauche,droite,haut ou bas...

je vous revient là dessus quand cela sera prêt...

Loucheman
Revenir en haut Aller en bas
M@d_Doc
Modérateur
M@d_Doc


Messages : 6600
Localisation : 47°44'8.04
Projet Actuel : aucun

[Resolu]Problème avec collision _ line avec mur entre 2 obj Empty
MessageSujet: Re: [Resolu]Problème avec collision _ line avec mur entre 2 obj   [Resolu]Problème avec collision _ line avec mur entre 2 obj EmptyMer 16 Mai 2007 - 14:24

je ne sais plus ou, mais j'avais vu un exemple qui donnait la position de la collision au pixel pret.....

_________________
[Resolu]Problème avec collision _ line avec mur entre 2 obj Control-commentTous les icones de gm utilisables sur le cbna ICI  [Resolu]Problème avec collision _ line avec mur entre 2 obj Main1-change-sprite
Revenir en haut Aller en bas
http://www.lecbna.org
notiz85
Utilisateur confirmé: Rang *****
notiz85


Messages : 2004
Localisation : Vendée
Projet Actuel : Moteur d'ombre pour un projet plateforme 2D...

[Resolu]Problème avec collision _ line avec mur entre 2 obj Empty
MessageSujet: Re: [Resolu]Problème avec collision _ line avec mur entre 2 obj   [Resolu]Problème avec collision _ line avec mur entre 2 obj EmptyMer 16 Mai 2007 - 17:28

loucheman a écrit:
Je travaille sur autre chose : une fonction qui détecte s'il y a collision et si la collision s'est produite du côté gauche,droite,haut ou bas...

je vous revient là dessus quand cela sera prêt...

Loucheman
Au pire tu demande à Adamo car il a fait un genre SimCity et on peut
pour le moment créer des routes et il vérifie justement s'il y a collision à
droite, gauche, en haut, en bas... super

_________________
[Resolu]Problème avec collision _ line avec mur entre 2 obj 577128485
Revenir en haut Aller en bas
http://gmnotiz.fr.nf/
loucheman
Très bonne participation
loucheman


Messages : 115

[Resolu]Problème avec collision _ line avec mur entre 2 obj Empty
MessageSujet: Re: [Resolu]Problème avec collision _ line avec mur entre 2 obj   [Resolu]Problème avec collision _ line avec mur entre 2 obj EmptySam 19 Mai 2007 - 16:57

Tel que promis!

Script de collision avec direction (gauche,droite,haut bas)

Code:
//Script : CheckCollision
//Par Loucheman, Crédit apprécié si vous utilisez ce script !

//Verifie s'il y a collision avec un objet dans une direction précise
//Retourne l'ID de l'instance entrant en collision, noone si aucune collision

//argument0 : Position X à vérifier : normalement X de l'objet mais peut être différent si pour vérifier un futur mouvement par exemple
//argument1 : Position Y à vérifier
//argument2 : direction à vérifier
//            1 = droite
//            2 = haut
//            3 = gauche
//            4 = bas
//argument3 : objet à vérifier si collision
//argument4 : precice
//            true = vérification précise de la collision
//            false = vérification non précise de la collision

var ObjectCollision,X,Y;

X = argument0
Y = argument1

switch (argument2)
    {
    case 1://droite
        {
        x1 = X - sprite_xoffset + sprite_get_bbox_right(sprite_index)  + 1
        y1 = Y - sprite_yoffset + sprite_get_bbox_top(sprite_index)   
        x2 = X - sprite_xoffset + sprite_get_bbox_right(sprite_index)  + 1
        y2 = Y - sprite_yoffset + sprite_get_bbox_bottom(sprite_index)
        return collision_line(x1,y1,x2,y2,argument3,argument4,true)
        break
        }
    case 2://haut
        {
        x1 = X - sprite_xoffset + sprite_get_bbox_left(sprite_index) 
        y1 = Y - sprite_yoffset + sprite_get_bbox_top(sprite_index)    - 1
        x2 = X - sprite_xoffset + sprite_get_bbox_right(sprite_index) 
        y2 = Y - sprite_yoffset + sprite_get_bbox_top(sprite_index)    - 1
        return collision_line(x1,y1,x2,y2,argument3,argument4,true)
        break
        }
    case 3://gauche
        {
        x1 = X - sprite_xoffset + sprite_get_bbox_left(sprite_index)  - 1
        y1 = Y - sprite_yoffset + sprite_get_bbox_top(sprite_index)   
        x2 = X - sprite_xoffset + sprite_get_bbox_left(sprite_index)  - 1
        y2 = Y - sprite_yoffset + sprite_get_bbox_bottom(sprite_index)
        return collision_line(x1,y1,x2,y2,argument3,argument4,true)
        break
        }
    case 4://bas
        {
        x1 = X - sprite_xoffset + sprite_get_bbox_left(sprite_index) 
        y1 = Y - sprite_yoffset + sprite_get_bbox_bottom(sprite_index) + 1
        x2 = X - sprite_xoffset + sprite_get_bbox_right(sprite_index) 
        y2 = Y - sprite_yoffset + sprite_get_bbox_bottom(sprite_index) + 1
        return collision_line(x1,y1,x2,y2,argument3,argument4,true)
        break
        }
    default :
        {
        show_message("Mauvaise utilisation de la fonction CheckCollision!!!")
        }
    }

Exemple d'utilisation de la fonction :
Code:
if keyboard_check_direct(vk_up) and CheckCollision(x,y+1,4,VPlancher,false) then
//Si la touche flèche haut est pesée et que le perso est sur un mur JUMP!
    {   
    vspeed=-5
    }

"x" veut dire x de mon objet
"y+1" veut dire 1 pixel en dessous de mon objet
"4" veut dire détection en bas du sprite de mon objet
***en donnant y+1 comme paramètre j'effectue un test de collision
1 pixel en dessous de bbox_bottom...
"VPlancher" est l'objet avec lequel je veut tester s'il y a une collision
"false" veut dire détection non précise de la collision avec VPlancher
***Donc en utilisant la bounding box de VPlancher...

J'espère que cela vous sera utile !

Loucheman
Revenir en haut Aller en bas
Contenu sponsorisé





[Resolu]Problème avec collision _ line avec mur entre 2 obj Empty
MessageSujet: Re: [Resolu]Problème avec collision _ line avec mur entre 2 obj   [Resolu]Problème avec collision _ line avec mur entre 2 obj Empty

Revenir en haut Aller en bas
 
[Resolu]Problème avec collision _ line avec mur entre 2 obj
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» [Résolu] Position en X d'une collision entre deux objet
» problème avec gravité [résolu] - problème avec mouvements
» Problème collision avec 3D
» Problème avec bbox et collision
» probleme de collision avec objet sol/mur

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Forum Le CBNA :: Développement :: Entraide débutants-
Sauter vers: