Forum d'entraide à la création de jeux d'aventure
 
PortailPortail  AccueilAccueil  RechercherRechercher  S'enregistrerS'enregistrer  Connexion  
Le Deal du moment :
Cartes Pokémon 151 : où trouver le ...
Voir le deal

 

 Détection Objet "Sprité"

Aller en bas 
3 participants
AuteurMessage
Kitai
Délégué de la tasse bleue
Délégué de la tasse bleue
Kitai


Nombre de messages : 2907

Date d'inscription : 01/08/2006


Détection Objet "Sprité" Empty
MessageSujet: Détection Objet "Sprité"   Détection Objet "Sprité" EmptySam 2 Juin 2007 - 21:21

Alors voilà : les objets qu'on utilise dans AGS utilisent les sprites qu'on a importées dans le projet et les interactions que l'on programme à leur propos se déclenchent en considérant les parties "non-vides" de la sprite.

Je m'explique :
Si on a un objet "ballon" dont la sprite représente un rond sur un fond vert uni, l'interaction par exemple "Any click on object" se déclenchera lors de tout click sur le rond, mais ne se déclenchera pas pour un clic dans la partie "transparente" correspondant au fond vert uni.
La détection se fait donc bien sur la partie "pleine" de la sprite.

Là où ça se corse, c'est quand on souhaite utiliser les contours de l'objet en script. En effet, à ce moment-là, l'objet correspond au rectangle de dimensions de la sprite.

J'ai vérifié avec un code de ce genre :
Code:
if (oPinca.IsCollidingWithObject(oParc))
{
  cEgo.Say("Touche");
}
else
{
  cEgo.Say("Ne touche pas");
}

Donc voilà ma question :
Y aurait-il un moyen de détecter uniquement les parties pleines de la sprite ?
Je pensais à une fonction qui aurait permis de vérifier la couleur d'un pixel, quelque chose dans l'idée, mais j'ai rien trouvé de ce genre...

Si quelqu'un a une idée, merci de répondre ^^
Revenir en haut Aller en bas
http://admin.no.uchi.free.fr/dokuwiki-2008-05-05/doku.php
MilesMando
Cliqueur Amateur
Cliqueur Amateur
MilesMando


Nombre de messages : 310

Age : 43

Localisation : Paris

Date d'inscription : 08/08/2006


Détection Objet "Sprité" Empty
MessageSujet: Re: Détection Objet "Sprité"   Détection Objet "Sprité" EmptySam 2 Juin 2007 - 22:30

J'ai le même probleme et finalement j'utiliserais le module " Pixel-perfect collision detection ":

// Functions:
//
// The module allows you to use pixel-perfect collision detection
// instead of the default rectangle-based collisions of AGS
//
// PPColliding.CWithC(Character *a, Character *b);
// PPColliding.CWithO(Character *a, Object *b);
// PPColliding.OWithC(Object *a, Character *b);
// PPColliding.OWithO(Object *a, Object *b);
// Check if a and b are colliding, for different types
//
// PPColliding.CWithAnything(Character *a);
// PPColliding.OWithAnything(Object *a);
// Check if a is colliding with any object or character. Returns
// the value of GetLocationType for the first collision found, but there
// may be more than one collision.


T'as deja essayé?

_
Revenir en haut Aller en bas
Kitai
Délégué de la tasse bleue
Délégué de la tasse bleue
Kitai


Nombre de messages : 2907

Date d'inscription : 01/08/2006


Détection Objet "Sprité" Empty
MessageSujet: Re: Détection Objet "Sprité"   Détection Objet "Sprité" EmptySam 2 Juin 2007 - 23:30

Merci bien !

Non à vrai dire je ne connaissais même pas ce module, tu l'as trouvé sur le site officiel ?

Je m'en vais le tester de suite, encore merci

edit : Effectivement c'est très efficace et proprement codé !
Pour ceux qui seraient aussi intéressés, voilà le lien :
http://new.bigbluecup.com/yabb/index.php?topic=26307
Enjoy !
Revenir en haut Aller en bas
http://admin.no.uchi.free.fr/dokuwiki-2008-05-05/doku.php
Shai-la
Ouvrière en Chef de la Grande Tasse Bleue
Ouvrière en Chef de la Grande Tasse Bleue
Shai-la


Nombre de messages : 6018

Age : 45

Localisation : Montpellier

Date d'inscription : 17/04/2006


Détection Objet "Sprité" Empty
MessageSujet: Re: Détection Objet "Sprité"   Détection Objet "Sprité" EmptyDim 3 Juin 2007 - 14:43

Bon à savoir, je déplace dans Trucs & Astuces sourire
Revenir en haut Aller en bas
http://marionpoinsot.fr/video
Contenu sponsorisé





Détection Objet "Sprité" Empty
MessageSujet: Re: Détection Objet "Sprité"   Détection Objet "Sprité" Empty

Revenir en haut Aller en bas
 
Détection Objet "Sprité"
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Modifier le sprite "Inventory item cursor marker sprite"
» "l'épopé de Nicert IV" "Livre I"
»  MODULE: Pixel-perfect collision detection
» "Toon Boom Studio"un logiciel tres interessant
» Vous savez ou on peut trouver "Drascula "

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Adventure Games Studio fr :: CREATION DE JEUX :: Trucs & Astuces, Tutoriaux-
Sauter vers: