AccueilAccueil  FAQFAQ  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  Connexion  
Le Deal du moment :
Cdiscount : -30€ dès 300€ ...
Voir le deal

 

 Faire un aimant qui attire les objets

Aller en bas 
+2
Termite
Térence
6 participants
AuteurMessage
Térence
Utilisateur confirmé: Rang *****
Térence


Messages : 2213
Localisation : Oui

Faire un aimant qui attire les objets Empty
MessageSujet: Faire un aimant qui attire les objets   Faire un aimant qui attire les objets EmptyMer 11 Juil 2012 - 9:02

Bonjour à tous, j'aurai besoin de faire une espèce d'aimant, qui attire des objets (des balles en l'occurence) à lui.
En gros, ca ressemble à un attractor (pour les particules) mais il attire des objet.
Voici le code qui est dans l'event step de l'objet qui doit être attiré.
L'objet aimant est vide.
Code:
nearest=instance_nearest(x,y,aimant)
if distance_to_object(nearest)<128
    {
    if direction<point_direction(nearest.x,nearest.y,x,y)
        {
        direction-=5
        }
    else
        {
        direction+=5
        }
    }

Ce n'est pas sensé être compliqué, et pourtant, une fois sur deux, il repousse la balle plutot que de l'attirer, alors si vous comprenez pourquoi ca beugue, merci d'avance pour votre aide.
Revenir en haut Aller en bas
Termite
Utilisateur confirmé: Rang ****
Termite


Messages : 1005
Localisation : Dans ta charpente !
Projet Actuel : RayEngine 5.0

Faire un aimant qui attire les objets Empty
MessageSujet: Re: Faire un aimant qui attire les objets   Faire un aimant qui attire les objets EmptyMer 11 Juil 2012 - 11:14

direction, c'est pas simplement l'angle ?

J'aurais fait comme ça :

Code:

nearest=instance_nearest(x,y,aimant)
if (distance_to_object(nearest)<128)
{
  var desired_rot = point_direction(x,y,nearest.x,nearest.y);
  direction += (desired_rot - direction)*0.2; // ou -= si ça marche pas :D le 0.2 est au pif, il changera l'accélération angulare
  speed+=point_distance(x,y,nearest.x,nearest.y)/128; // Plus on se rapproche, plus l'attraction est fort, 128 a été mis complètement au pif, change-le si tu  veux un truc moins fort.
}


C'est possible que ça ne marche pas, vu que j'ai pas fait de GML depuis 1901, mais grosso-modo c'est ça.

_________________
Because these are not the words of God, the same God that burnt the knowing.
Revenir en haut Aller en bas
Térence
Utilisateur confirmé: Rang *****
Térence


Messages : 2213
Localisation : Oui

Faire un aimant qui attire les objets Empty
MessageSujet: Re: Faire un aimant qui attire les objets   Faire un aimant qui attire les objets EmptyMer 11 Juil 2012 - 12:31

ok la je suis sur tablette, je peux pas essayer mais je te dirai si ca marche demain.
en tout cas merci
Revenir en haut Aller en bas
glcraft
Utilisateur confirmé: Rang *****
glcraft


Messages : 1698
Localisation : Entre l'Espagne, l'Italie, la Suisse, L'allemagne et le RU :P
Projet Actuel : Jeu de survie avancé
||--------

Faire un aimant qui attire les objets Empty
MessageSujet: Re: Faire un aimant qui attire les objets   Faire un aimant qui attire les objets EmptyMer 11 Juil 2012 - 19:02

Térence68 a écrit:
ok la je suis sur tablette, je peux pas essayer mais je te dirai si ca marche demain.
en tout cas merci
une tablette windows peut lancer GM gnii
"direction += (desired_rot - direction)*0.2; // ou -= si ça marche pas Very Happy le 0.2 est au pif, il changera l'accélération angulare "
le mieux pour un effet aimant ce serai pas directement direction=desired_rot ?
Revenir en haut Aller en bas
http://gameblog49.skyblog.com/
Térence
Utilisateur confirmé: Rang *****
Térence


Messages : 2213
Localisation : Oui

Faire un aimant qui attire les objets Empty
MessageSujet: Re: Faire un aimant qui attire les objets   Faire un aimant qui attire les objets EmptyMer 11 Juil 2012 - 19:06

Bah j'essaierai les deux demain et on verra bien gnii
Et j'ai une asus eeepad transformer avec android donc ia pas gm (et pourtant j'ai cherché....)
Revenir en haut Aller en bas
glcraft
Utilisateur confirmé: Rang *****
glcraft


Messages : 1698
Localisation : Entre l'Espagne, l'Italie, la Suisse, L'allemagne et le RU :P
Projet Actuel : Jeu de survie avancé
||--------

Faire un aimant qui attire les objets Empty
MessageSujet: Re: Faire un aimant qui attire les objets   Faire un aimant qui attire les objets EmptyMer 11 Juil 2012 - 19:12

[HS]il me semble qu'il y a que le MSI qui le fait[/HS]
Revenir en haut Aller en bas
http://gameblog49.skyblog.com/
Térence
Utilisateur confirmé: Rang *****
Térence


Messages : 2213
Localisation : Oui

Faire un aimant qui attire les objets Empty
MessageSujet: Re: Faire un aimant qui attire les objets   Faire un aimant qui attire les objets EmptyMer 11 Juil 2012 - 19:15

Si j'ai bien compris tu veux que je rachète une nouvelle tablette Windows pour avoir gm dessus ?? ouh
Revenir en haut Aller en bas
Termite
Utilisateur confirmé: Rang ****
Termite


Messages : 1005
Localisation : Dans ta charpente !
Projet Actuel : RayEngine 5.0

Faire un aimant qui attire les objets Empty
MessageSujet: Re: Faire un aimant qui attire les objets   Faire un aimant qui attire les objets EmptyMer 11 Juil 2012 - 21:13

gabin49 a écrit:
Térence68 a écrit:
ok la je suis sur tablette, je peux pas essayer mais je te dirai si ca marche demain.
en tout cas merci
une tablette windows peut lancer GM gnii
"direction += (desired_rot - direction)*0.2; // ou -= si ça marche pas Very Happy le 0.2 est au pif, il changera l'accélération angulare "
le mieux pour un effet aimant ce serai pas directement direction=desired_rot ?
Moui, mais dans ce cas le mouvement sera ptet moins lisse, à tenter quand même s'il préfère mrgreen2

_________________
Because these are not the words of God, the same God that burnt the knowing.
Revenir en haut Aller en bas
glcraft
Utilisateur confirmé: Rang *****
glcraft


Messages : 1698
Localisation : Entre l'Espagne, l'Italie, la Suisse, L'allemagne et le RU :P
Projet Actuel : Jeu de survie avancé
||--------

Faire un aimant qui attire les objets Empty
MessageSujet: Re: Faire un aimant qui attire les objets   Faire un aimant qui attire les objets EmptyMer 11 Juil 2012 - 22:42

Térence68 a écrit:
Si j'ai bien compris tu veux que je rachète une nouvelle tablette Windows pour avoir gm dessus ?? ouh
nan, attend encore un peu, elle n'est pas puissante celle ci, mais à l'arrivée de Windows 8, le nombre de tablette windows vont grimper en fleche. Ce moment sera puissant : la capacité de creer des applications facilement sur tablette et DIRECTEMENT sur tablette sans passer par le LUA ou un code tierce de haut-niveau.
Citation :
Moui, mais dans ce cas le mouvement sera ptet moins lisse, à tenter quand même s'il préfère mrgreen2
dans le cas ou la boule lui tourne le dos, ca ferai pas bizarre ? C'est pour ca. un aimant ou une force attractive ne pose pas de question, c'est toujours la meme direction Objet->Aimant
Revenir en haut Aller en bas
http://gameblog49.skyblog.com/
Térence
Utilisateur confirmé: Rang *****
Térence


Messages : 2213
Localisation : Oui

Faire un aimant qui attire les objets Empty
MessageSujet: Re: Faire un aimant qui attire les objets   Faire un aimant qui attire les objets EmptyMer 11 Juil 2012 - 23:03

j'ai testé windows 8 en develloper previous, c'est beau mais c'est plus fait pour tablette que pour ordi, et vu qu'une tablette est moins puissante qu'un ordi je me demande comment ils vont gérer la compatibilité niveau puissance...
Et écrire sur tablette c'est ******, même avec le clavier.... donc pour écrire des centaines de lignes de codes... en plus lancer toute les 5 minutes sur tablette... aie aie aie...
Revenir en haut Aller en bas
Termite
Utilisateur confirmé: Rang ****
Termite


Messages : 1005
Localisation : Dans ta charpente !
Projet Actuel : RayEngine 5.0

Faire un aimant qui attire les objets Empty
MessageSujet: Re: Faire un aimant qui attire les objets   Faire un aimant qui attire les objets EmptyMer 11 Juil 2012 - 23:59

gabin49 a écrit:
Térence68 a écrit:
Si j'ai bien compris tu veux que je rachète une nouvelle tablette Windows pour avoir gm dessus ?? ouh
nan, attend encore un peu, elle n'est pas puissante celle ci, mais à l'arrivée de Windows 8, le nombre de tablette windows vont grimper en fleche. Ce moment sera puissant : la capacité de creer des applications facilement sur tablette et DIRECTEMENT sur tablette sans passer par le LUA ou un code tierce de haut-niveau.
Citation :
Moui, mais dans ce cas le mouvement sera ptet moins lisse, à tenter quand même s'il préfère mrgreen2
dans le cas ou la boule lui tourne le dos, ca ferai pas bizarre ? C'est pour ca. un aimant ou une force attractive ne pose pas de question, c'est toujours la meme direction Objet->Aimant
Ouais, pas faux, j'avais pas vu ça comme ça Mr. Green

_________________
Because these are not the words of God, the same God that burnt the knowing.
Revenir en haut Aller en bas
arthuro
Utilisateur confirmé: Rang ****
arthuro


Messages : 1483
Localisation : Paris
Projet Actuel : Diagon https://arthursonzogni.com/Diagon

Faire un aimant qui attire les objets Empty
MessageSujet: Re: Faire un aimant qui attire les objets   Faire un aimant qui attire les objets EmptyJeu 12 Juil 2012 - 0:24

with( <objets a attirer> )
{
dd=point_direction(x,y,other.x,other.y);
power=<constante> / sqrt ( point_distance(x,y,other.x,other.y));

// je ne suis pas certain de la fonction suivante
motion_add(power,direction);

// sinon
// hspeed+=length_xdir(power,direction);
// vspeed+=length_ydir(power,direction);
}

Edit: ceci ne marche pas.

utiliser plutôt cela:
Code:
with( <objets a attirer> )
{
dd=point_direction(x,y,other.x,other.y);
power=<constante> / sqr ( point_distance(x,y,other.x,other.y));
motion_add(dd,power);
}

_________________
Faire un aimant qui attire les objets PochetteFaire un aimant qui attire les objets Signature.php?gid=588
D'autres jeux :
In The Cube
In the cube 2


Dernière édition par arthuro le Jeu 12 Juil 2012 - 14:00, édité 1 fois
Revenir en haut Aller en bas
Térence
Utilisateur confirmé: Rang *****
Térence


Messages : 2213
Localisation : Oui

Faire un aimant qui attire les objets Empty
MessageSujet: Re: Faire un aimant qui attire les objets   Faire un aimant qui attire les objets EmptyJeu 12 Juil 2012 - 7:37

j'essairais tout cela ! En tout cas merci à tous pour vos réponses !
Revenir en haut Aller en bas
Térence
Utilisateur confirmé: Rang *****
Térence


Messages : 2213
Localisation : Oui

Faire un aimant qui attire les objets Empty
MessageSujet: Re: Faire un aimant qui attire les objets   Faire un aimant qui attire les objets EmptyJeu 12 Juil 2012 - 9:58

J'ai essayé vos propositions, et malheureusement, aucune ne marche complètement :
Termite : au début, la balle est attirée, puis elle est éjectée en faisant une forme bizzare ; et si je fais direction = desired_rot, les balles sont attirées vers l'aimant puis elle reste dessus en clignotant.... Moi je veux qu'elle soient déviées, pas qu'elle restent sur l'aimant.... mrgreen2
Arthuro : les balles sont attirées très rapidement vers la droite, peut importe la valeur de la constante.... snif
Revenir en haut Aller en bas
onilink_
Modérateur
onilink_


Messages : 9180
Localisation : Montpellier
Projet Actuel : Planet Centauri
OniDev

Faire un aimant qui attire les objets Empty
MessageSujet: Re: Faire un aimant qui attire les objets   Faire un aimant qui attire les objets EmptyJeu 12 Juil 2012 - 11:23

Tu peut toujours utiliser la formule de la gravité sinon, ça devrais faire un truc qui ressemble a ce que tu veux :p

_________________
Faire un aimant qui attire les objets Runningpotato1Faire un aimant qui attire les objets TvF6GED Faire un aimant qui attire les objets MdetltS
Revenir en haut Aller en bas
Térence
Utilisateur confirmé: Rang *****
Térence


Messages : 2213
Localisation : Oui

Faire un aimant qui attire les objets Empty
MessageSujet: Re: Faire un aimant qui attire les objets   Faire un aimant qui attire les objets EmptyJeu 12 Juil 2012 - 11:45

Merci onilink_ ! C'était tellement con que j'y avait pas pensé !
Voici le code, il marche à merveille :
Code:
nearest=instance_nearest(x,y,aimant)
if distance_to_object(nearest)<128
    {
    gravity_direction=point_direction(x,y,nearest.x,nearest.y)
    gravity=(128-distance_to_object(nearest))/100
    }
else
    {
    gravity=0
    }
Revenir en haut Aller en bas
arthuro
Utilisateur confirmé: Rang ****
arthuro


Messages : 1483
Localisation : Paris
Projet Actuel : Diagon https://arthursonzogni.com/Diagon

Faire un aimant qui attire les objets Empty
MessageSujet: Re: Faire un aimant qui attire les objets   Faire un aimant qui attire les objets EmptyJeu 12 Juil 2012 - 12:11

une petite rectification dans mon code ( une lettre qui changeait tout sqrt->sqr)

De plus je n'utilisait pas dd mais direction, ce qui explique le non fonctionnement précédent (ceci devrait marcher)
Code:

with( <objets a attirer> )
{
dd=point_direction(x,y,other.x,other.y);
power=<constante> / sqr ( point_distance(x,y,other.x,other.y));

// je ne suis pas certain de la fonction suivante
motion_add(power,dd);

// sinon
// hspeed+=length_xdir(power,dd);
// vspeed+=length_ydir(power,dd);
}

_________________
Faire un aimant qui attire les objets PochetteFaire un aimant qui attire les objets Signature.php?gid=588
D'autres jeux :
In The Cube
In the cube 2
Revenir en haut Aller en bas
Térence
Utilisateur confirmé: Rang *****
Térence


Messages : 2213
Localisation : Oui

Faire un aimant qui attire les objets Empty
MessageSujet: Re: Faire un aimant qui attire les objets   Faire un aimant qui attire les objets EmptyJeu 12 Juil 2012 - 12:52

Désolé, mais ca ne marche touours pas, la balle est toujours attirée vers la droite... clinoeuil merci quand même !
Revenir en haut Aller en bas
arthuro
Utilisateur confirmé: Rang ****
arthuro


Messages : 1483
Localisation : Paris
Projet Actuel : Diagon https://arthursonzogni.com/Diagon

Faire un aimant qui attire les objets Empty
MessageSujet: Re: Faire un aimant qui attire les objets   Faire un aimant qui attire les objets EmptyJeu 12 Juil 2012 - 13:59

C'est que je me souvenais plus de motion_add.
il faut inverser les deux arguments:

tu obtiendra :

Code:
with( <objets a attirer> )
{
dd=point_direction(x,y,other.x,other.y);
power=<constante> / sqr ( point_distance(x,y,other.x,other.y));
motion_add(dd,power);
}


Ca devrait marcher maintenant

_________________
Faire un aimant qui attire les objets PochetteFaire un aimant qui attire les objets Signature.php?gid=588
D'autres jeux :
In The Cube
In the cube 2
Revenir en haut Aller en bas
Oculus
Utilisateur confirmé: Rang *****



Messages : 1688

Faire un aimant qui attire les objets Empty
MessageSujet: Re: Faire un aimant qui attire les objets   Faire un aimant qui attire les objets EmptyJeu 12 Juil 2012 - 14:48

Térence68 a écrit:
j'ai testé windows 8 en develloper previous, c'est beau mais c'est plus fait pour tablette que pour ordi, et vu qu'une tablette est moins puissante qu'un ordi je me demande comment ils vont gérer la compatibilité niveau puissance...
Et écrire sur tablette c'est ******, même avec le clavier.... donc pour écrire des centaines de lignes de codes... en plus lancer toute les 5 minutes sur tablette... aie aie aie...

Franchement on s'y fait ça va faire 3 mois que je suis complétement sous Windows 8, et une fois qu'on la en main aucun problème, on peut faire sans problème ce qu'on faisait sous Windows 7 avec en plus les nouveautés de W8 cool
Revenir en haut Aller en bas
Térence
Utilisateur confirmé: Rang *****
Térence


Messages : 2213
Localisation : Oui

Faire un aimant qui attire les objets Empty
MessageSujet: Re: Faire un aimant qui attire les objets   Faire un aimant qui attire les objets EmptyJeu 12 Juil 2012 - 14:50

ben la il se passe rien, la balle ne devie pas d'un pouce...
Mais te fatigue pas, c'est plus la peine, la gravité marche très bien. (meric onlink_ !!!)
Revenir en haut Aller en bas
Térence
Utilisateur confirmé: Rang *****
Térence


Messages : 2213
Localisation : Oui

Faire un aimant qui attire les objets Empty
MessageSujet: Re: Faire un aimant qui attire les objets   Faire un aimant qui attire les objets EmptyJeu 12 Juil 2012 - 22:08

C'est clair, windows 8 est bien mais plus orienté tablette !
Et programmer sur tablette c'est fatiguant.... (je dis plus le mot qui commence par "ch" et qui finit par "iant" parce qu'il me le remplace tout seul par des astérisques... gnii )
Revenir en haut Aller en bas
glcraft
Utilisateur confirmé: Rang *****
glcraft


Messages : 1698
Localisation : Entre l'Espagne, l'Italie, la Suisse, L'allemagne et le RU :P
Projet Actuel : Jeu de survie avancé
||--------

Faire un aimant qui attire les objets Empty
MessageSujet: Re: Faire un aimant qui attire les objets   Faire un aimant qui attire les objets EmptyJeu 12 Juil 2012 - 23:28

Térence68 a écrit:
je dis plus le mot qui commence par "ch" et qui finit par "iant" parce qu'il me le remplace tout seul par des astérisques... gnii
C'est bien de prendre les bonnes habitudes sur le forums rire2
j'aurais une tablette pour y programmer dessus, j'en serais ravie ! surtout en C++, c'est tres ouvert ^^
Revenir en haut Aller en bas
http://gameblog49.skyblog.com/
Térence
Utilisateur confirmé: Rang *****
Térence


Messages : 2213
Localisation : Oui

Faire un aimant qui attire les objets Empty
MessageSujet: Re: Faire un aimant qui attire les objets   Faire un aimant qui attire les objets EmptyVen 13 Juil 2012 - 8:23

J'ai regardé sur le play store, il y a des applis pour programmer mais j'y capte rien et comme ia pas beaucoup de téléchargements, j'évite de télécharger pour pas avoir de virus... gnii
Revenir en haut Aller en bas
arthuro
Utilisateur confirmé: Rang ****
arthuro


Messages : 1483
Localisation : Paris
Projet Actuel : Diagon https://arthursonzogni.com/Diagon

Faire un aimant qui attire les objets Empty
MessageSujet: Re: Faire un aimant qui attire les objets   Faire un aimant qui attire les objets EmptyVen 13 Juil 2012 - 18:29

Térence68 a écrit:
ben la il se passe rien, la balle ne devie pas d'un pouce...
Mais te fatigue pas, c'est plus la peine, la gravité marche très bien. (meric onlink_ !!!)

En faite, pour que ça marche, la constante devra être très grande.
Si tu veux attirer les pixels à 128 pixel de loin, il faudra que la constante vaille : 16 384 ( pour une accélération de 1px/step)

L'accélération que je t'ai donner est l'attraction terrestre

_________________
Faire un aimant qui attire les objets PochetteFaire un aimant qui attire les objets Signature.php?gid=588
D'autres jeux :
In The Cube
In the cube 2
Revenir en haut Aller en bas
Térence
Utilisateur confirmé: Rang *****
Térence


Messages : 2213
Localisation : Oui

Faire un aimant qui attire les objets Empty
MessageSujet: Re: Faire un aimant qui attire les objets   Faire un aimant qui attire les objets EmptyVen 13 Juil 2012 - 18:37

ah ok c'est vrai que j'ai pas essayé cette valeur... mrgreen2
je te dirai si ca marche, merci
Revenir en haut Aller en bas
Contenu sponsorisé





Faire un aimant qui attire les objets Empty
MessageSujet: Re: Faire un aimant qui attire les objets   Faire un aimant qui attire les objets Empty

Revenir en haut Aller en bas
 
Faire un aimant qui attire les objets
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» [Résolu] Plusieurs objets d'un objet en plusieurs objets
» Vie des objets
» Faire tourner des objets autour d'un autre
» Faire apparaitre un ou plusieurs objets aleatoirement
» comment faire pour que les objets te suive aléatoirement?

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: