Création sur une ligne Hitskin_logo Hitskin.com

Ceci est une prévisualisation d'un thème de Hitskin.com
Installer le thèmeRetourner sur la fiche du thème



AccueilAccueil  FAQFAQ  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  ConnexionConnexion  
Le deal à ne pas rater :
Sortie PlayStation 5 Pro : où précommander la console PS5 Pro ?
Voir le deal

 

 Création sur une ligne

Aller en bas 
3 participants
AuteurMessage
OKSYD
Utilisateur confirmé: Rang *****
OKSYD


Messages : 2302
Localisation : Pioneer 2
Projet Actuel : Hard Pac III

Création sur une ligne Empty
MessageSujet: Création sur une ligne   Création sur une ligne EmptyDim 21 Mai 2006 - 16:15

:p_hello: Je voudrais bien savoir comment créer un objet aléatoirement sur la longueur d'une ligne (entre 2 points).

par exemple:

Je voudrais que l'objet x de crée soit là:
Code:
A-------------------------x--B

ou là.
Code:
A
  \
  \
    \
    x
      \
      \
        \
        \
          \
          B

etc...

Merci, @+

_________________
Création sur une ligne Hardpac3uv4
Revenir en haut Aller en bas
Kryptos
Utilisateur confirmé: Rang ****
Kryptos


Messages : 1058
Localisation : très loin dans un univers étrange
Projet Actuel : Space Racer, un jeu multijoueur en ligne réalisé avec Unity 3D.

Création sur une ligne Empty
MessageSujet: Re: Création sur une ligne   Création sur une ligne EmptyDim 21 Mai 2006 - 16:42

Supposons que les coordonnées de A sont xa et ya. De même les coordonnées de B sont xb et yb.
Nous allons créer un point C dont les coordonnées sont xc et yc.
Code:
xc = random(xb-xa) + xa;
yc = random(yb-ya) + ya;
Mais cela suppose que l'on a obligatoirement xb > xa et yb > ya. Dans le cas contraire, on peut adapter notre code quelque soit xa,xb,ya et yb.
Code:
xc = random(abs(xb-xa)) + min(xb,xa);
yc = random(abs(yb-ya)) + min(yb,ya);
CQFD

_________________
Création sur une ligne Gmq5
Venez tester la beta de notre jeu de course Space Racer (conçu avec Unity 3D)
Revenir en haut Aller en bas
http://s150319444.onlinehome.fr
Gab666
Modérateur 'Zut'
Gab666


Messages : 5340
Localisation : **I move away from the mic to breathe in

Création sur une ligne Empty
MessageSujet: Re: Création sur une ligne   Création sur une ligne EmptyDim 21 Mai 2006 - 16:57

pour une ligne horizontale c'est assez facile happy1 :
Code:
x = point_a+random(pointb-pointa);

pour une diagonale faut faire un peu de maths

Code:
point_ax = 0;
point_bx = 100;
point_ay = 0;
point_by = 1000;
x = point_ax;
y = point_ay;
posi = random(sqrt(sqr(point_bx+point_ax)+sqr(point_by+point_ay)));
move_snap((point_bx-point_ax)/posi,(point_by-point_ay)/posi);
x += posi;
y += posi;

ce code devrait fonctionner clinoeuil

_________________
PIS MANIAC PREND DES BAINS !


Dernière édition par le Dim 21 Mai 2006 - 17:03, édité 2 fois
Revenir en haut Aller en bas
http://www.dermanium-online.webou.net/
Kryptos
Utilisateur confirmé: Rang ****
Kryptos


Messages : 1058
Localisation : très loin dans un univers étrange
Projet Actuel : Space Racer, un jeu multijoueur en ligne réalisé avec Unity 3D.

Création sur une ligne Empty
MessageSujet: Re: Création sur une ligne   Création sur une ligne EmptyDim 21 Mai 2006 - 17:01

Ma solution est quand même beaucoup plus simple, non ?

_________________
Création sur une ligne Gmq5
Venez tester la beta de notre jeu de course Space Racer (conçu avec Unity 3D)
Revenir en haut Aller en bas
http://s150319444.onlinehome.fr
Gab666
Modérateur 'Zut'
Gab666


Messages : 5340
Localisation : **I move away from the mic to breathe in

Création sur une ligne Empty
MessageSujet: Re: Création sur une ligne   Création sur une ligne EmptyDim 21 Mai 2006 - 17:01

en effet mais j'était en train de tester mon code quand tu as posté rouge

_________________
PIS MANIAC PREND DES BAINS !
Revenir en haut Aller en bas
http://www.dermanium-online.webou.net/
Kryptos
Utilisateur confirmé: Rang ****
Kryptos


Messages : 1058
Localisation : très loin dans un univers étrange
Projet Actuel : Space Racer, un jeu multijoueur en ligne réalisé avec Unity 3D.

Création sur une ligne Empty
MessageSujet: Re: Création sur une ligne   Création sur une ligne EmptyDim 21 Mai 2006 - 17:03

En plus tu te compliques la vie avec ta structure repeat. Elle est équivalente à
Code:
x += posi;
y += posi;
ce qui est quand même plus simple !

_________________
Création sur une ligne Gmq5
Venez tester la beta de notre jeu de course Space Racer (conçu avec Unity 3D)
Revenir en haut Aller en bas
http://s150319444.onlinehome.fr
Gab666
Modérateur 'Zut'
Gab666


Messages : 5340
Localisation : **I move away from the mic to breathe in

Création sur une ligne Empty
MessageSujet: Re: Création sur une ligne   Création sur une ligne EmptyDim 21 Mai 2006 - 17:04

Ah oui aussi voilà c'est ccorrigé :fier:

_________________
PIS MANIAC PREND DES BAINS !
Revenir en haut Aller en bas
http://www.dermanium-online.webou.net/
OKSYD
Utilisateur confirmé: Rang *****
OKSYD


Messages : 2302
Localisation : Pioneer 2
Projet Actuel : Hard Pac III

Création sur une ligne Empty
MessageSujet: Re: Création sur une ligne   Création sur une ligne EmptyDim 21 Mai 2006 - 18:58

Kryptos, ta technique ne marchait pas. L'objet se créait comme si on avair mis:
Citation :
xc = xa + random(xb)
yc = ya + random(yb)

Mais c'est bon, j'ai réussi! super Ma technique du debut marchait toujours mais mon objet avait pas de sprite car j'en avait loadé un qui n'exeistait pas rire Merci quand même!

_________________
Création sur une ligne Hardpac3uv4
Revenir en haut Aller en bas
Kryptos
Utilisateur confirmé: Rang ****
Kryptos


Messages : 1058
Localisation : très loin dans un univers étrange
Projet Actuel : Space Racer, un jeu multijoueur en ligne réalisé avec Unity 3D.

Création sur une ligne Empty
MessageSujet: Re: Création sur une ligne   Création sur une ligne EmptyLun 22 Mai 2006 - 1:11

Je t'assure que ma technique fonctionne chez moi.
Le calcul xb-xa permet de calculer la distance entre A et B, au niveau des abscisses. La fonction random() retourne une valeur entre 0 et cette distance. En supposant que xa est la plus petite abscisse, on l'ajoute pour se trouver à la bonne position : c'est un changement de repère.
On procède de même pour l'ordonnée y.

edit: effectivement, mon code est incomplet puisque le random() effectué sur les abscisses et les ordonnées n'est pas le même.

_________________
Création sur une ligne Gmq5
Venez tester la beta de notre jeu de course Space Racer (conçu avec Unity 3D)
Revenir en haut Aller en bas
http://s150319444.onlinehome.fr
Contenu sponsorisé





Création sur une ligne Empty
MessageSujet: Re: Création sur une ligne   Création sur une ligne Empty

Revenir en haut Aller en bas
 
Création sur une ligne
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» BackGround remplacement BG vers autres BG ligne par ligne
» Hightscore en ligne
» RPG en ligne
» Ligne de vue
» FPS (en ligne ?)

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