Non c'est quand deux collider se touche
exemple le collider du Joueur et le collider d'un arbre et bah quand les deux se rencontre c'est une collision
Je pense que Ressource devrait hériter de ScriptableObject (ça te permet de modifier une classe dans l'Editeur d'Unity). Tu créais une fonction OnColliderEnter() qui ne fait rien.
Ensuite, tu créés une classe CollisionItem, qui hérite de Component, et qui a un attribut Item. Quand une collision est détecté, elle appelle la fonction OnColliderEnter de son attribut.
PS : Il y a d'autres méthodes possibles.
Le 26 janvier 2019 à 08:14:30 MrAnge a écrit :
Bonjour a tousJe suis bloqué sur un problème de conception, je voudrais créer un class Item générique qui aurais un identifiant un nom.. etc et une class Ressource qui hériterais de la class Item pour pouvoir override des fonctions, le tout serializable pour pouvoir faire mes config dans l'éditeur d'UNITY.
Bref jusque la rien de bien compliquer ça marche. La ou j'ai un problème c'est que maintenant je voudrais que ma class Item soit capable de détécter les collision (d'après la doc il faut hériter de la class Component) le soucis c'est que si je la fait hériter de Component je perd la possibilité de configurer mes variables dans l'éditeur
Une idée de comment garder la config dans l'éditeur tout en détectant les collision ?
Merci par avance de votre aide je vais continuer mes recherches en attendant une réponse
Bonjour, je ne comprends pas vraiment ton problème...
Si ta classe de base hérite de MonoBehaviour il n'existe aucune raison de ne pas détecter les collision dans les classes descendantes ainsi que les champs sérialisables existant dans leurs ancêtres.
/// <summary>
/// Composant de base.
/// </summary>
public abstract class AbstractItem : MonoBehaviour
{
public string Name;
//...
// Autres déclarations public , protected , abstract ...
//...
}
/// <summary>
/// Autre composant descendant de AbstractItem.
/// </summary>
public class Component_000 : AbstractItem
{
/// <summary>
/// Traitement de la collision de Component_000.
/// </summary>
/// <param name="collision"></param>
private void OnCollisionEnter(Collision collision)
{
//...
}
}
/// <summary>
/// Autre composant descendant de AbstractItem.
/// </summary>
public class Component_001 : AbstractItem
{
/// <summary>
/// Traitement de la collision de Component_000.
/// </summary>
/// <param name="collision"></param>
private void OnCollisionEnter(Collision collision)
{
//...
}
}
Je ne comprends pas pquoi tu parle d'héritage avec Component ?
Quel est le but ?
A+
c'est un fonctionnement un peu plus complexe que sa mais j'arriverais pas a le montrer sur un forum vas y avoir trop de ligne
Je suis finalement passer (temporairement) sur une class dédié au collision de mes objets que j'ajoute à la génération de ces dit objets (a voir si cela est convenable)
Le 28 janvier 2019 à 20:10:08 MrAnge a écrit :
c'est un fonctionnement un peu plus complexe que sa mais j'arriverais pas a le montrer sur un forum vas y avoir trop de ligne
Je suis finalement passer (temporairement) sur une class dédié au collision de mes objets que j'ajoute à la génération de ces dit objets (a voir si cela est convenable)
Une simple présentation de ton code hierarchique sur le rapport entres tes classes peut permettre d'apporter une éventuelle réponse.
Un exemple simple sans toutes les fonctionnalités par exemple...
Peut être aussi, tu t'embourbe en utilisant un concept de prog POO au lieu d'utiliser correctement le concept avantageux de la prog Orienté Composant.
Je reste à ton écoute au cas ou.
A+
Bon je vais essayé alors
J'aurais une classe d'objet standard et une autre un peu plus spécifiqueGenericItem : MonoBehaviour {
foo
}
[Serializable]
Item : GenericItem
{
foo2, foo3
}
Maintenant j'ai une classe me permettant de gérer l’environnement de mon jeu (arbres, cailloux etc)
doncTreeManager{
Item tree[]
some_fonction()
}
Et si je fais ça alors j'ai pas accès au variable (foo2, foo3) de la class Item dans l'éditeur mais je peu y mettre un gameObject Item
En soi pour la fin du projet c'est pas un problème car tout seras renseigné par script mais pour mes tests bah ce serais quand même vachement plus pratique de pouvoir les setter dans l'éditeur
Bon je sais pas si c'est vraiment plus claire
bonjour
Toujours dans la transition UnityScript>C# : après avoir corrigé 20k bugs il semblerait que je sois à présent obligé de rajouter StartCoroutine devant mes 5000 appels de fonctions très diverses et variées devenues IEnumerator par convention. Concernant leur majorité je suis obligé de passer par là manuellement j'imagine ? Je mets "leur majorité" parce que je peux automatiser un peu mais une majorité de leurs noms sont différents et pareils pour les arguments qui varient beaucoup. C'est juste pour une simple confirmation :0
au revoir
Hello @olololo,
Comme précisé maintes fois auparavant.
Si tu peux échanger ton code avec moi....
Sans contrepartie, et en fonction de mon temps dispo, je te dépanne sur transfert UnityScript => C# .
C'est un exercice de style qui m'intéresse sans plus.
À toi la main.
Le 05 février 2019 à 16:25:19 olololo a écrit :
bonjour
Toujours dans la transition UnityScript>C# : après avoir corrigé 20k bugs il semblerait que je sois à présent obligé de rajouter StartCoroutine devant mes 5000 appels de fonctions très diverses et variées devenues IEnumerator par convention. Concernant leur majorité je suis obligé de passer par là manuellement j'imagine ? Je mets "leur majorité" parce que je peux automatiser un peu mais une majorité de leurs noms sont différents et pareils pour les arguments qui varient beaucoup. C'est juste pour une simple confirmation :0
au revoir
Difficile de te répondre sans voir ton code. Si tu veux que toutes ces classes s'exécutent en parallèle oui.
bonjour les pilliers actuels du topic,
UnityCoder j'ai plus d'erreur dans la console en fait, j'ai pu lancer le jeu et je me suis rendu compte que rien ne fonctionnait car les fonctions se lançaient pas... jusqu'à ce que je comprenne qu'ils fallait rajouter StartCoroutine quasiment partout suite aux ajouts d'IEnumerator obligés en C# si y'a le moindre yield dans une fonction (je déteste tous ces nouveaux trucs dont l'unityscript se passait sans souci ).
Donc comme prévu c'est du pur bourrinage manuel, je ne compte pas infliger ce fardeau à quelqu'un d'autre. Je vais me faire une petite de séries de 20 ajouts de StartCoroutine par jour et ça finira par avancer :stickerorcquilèvelesbrasavecsahache:
par contre à la fin tu voulais dire "en plus" au lieu de "sans plus" j'imagine ?
TheRealMarco ouais ok c'est bien ce qui me semblait... je sais pas ce que j'attendais, une recette miracle qui n'existe pas, j'ai paniqué dans l'enfer de ces conventions de codes
merci pour les réponses
Bonjour, je fais un jeu 2D pour un projet, j'ai une scène vue de haut et mon personnage se déplace à l'aide du clique de la souris, j'aimerais faire rotate mon personnage vers le clic de la souris mais je bloque là dessus, j'ai essayé plusieurs méthode différentes (Quaternion.Slerp, Quaterinion.LookRotation, etc...) Mais je galère un peu là-dessus.
Merci et bonne soirée
Re-bonjour, j'ai à moitié réussi quand je clique le personnage rotate mais pas du bon sens, il rotate un peu à des endroits random j'ai l'impression, je vous montre le code ça sera plus simple
PS: J'ai des lignes en commentaires c'était mes test qui n'ont pas fonctionnées.
https://www.youtube.com/watch?v=_XdqA3xbP2A
regarde le résultat à la fin de la vidéo peut etre que c'est ça que tu veux faire
Le 08 février 2019 à 18:28:43 olololo a écrit :
https://www.youtube.com/watch?v=_XdqA3xbP2A
regarde le résultat à la fin de la vidéo peut etre que c'est ça que tu veux faire
Merci beaucoup ça a marché ;)
Bonjour, j'ai retrouvé sur un de mes anciens ordis mon tout premier jeu unity 3d, j'l avais pas fini et je l'avais fait en Javascript, comme j'update pas Unity sur cet ordinateur, je peux coder en JS et ça m'embêterai de recoder en C# sur un jeu fait en JS...
Bref du coup j voudrais savoir s'il y avait un moyen de télécharger le Doc d'unity ou du moins d'avoir de tout temps (dans 10 ans par exemple) encore accès à la documentation d'Unity sur la version où il y avait encore le JS.
Merci
@ludoxe
juste a choisir ta version.
https://unity3d.com/get-unity/download/archive?_ga=2.55629039.573815304.1551080125-1519559176.1545322970
Le 26 février 2019 à 20:46:38 UnityCoder a écrit :
@ludoxe
juste a choisir ta version.
https://unity3d.com/get-unity/download/archive?_ga=2.55629039.573815304.1551080125-1519559176.1545322970
Je ne peux pas télécharger la documentation d'unity dessus
Ce que je veux en fait, c'est sauvegarder ça ou telecharger ça quelque part
https://docs.unity3d.com/2017.1/Documentation/ScriptReference/index.html
@ludoxe
As tu tenté par le biais de l'appliq Hub Unity sur une version type 5.xx par exemple en utilisant le link load par le hub ?
Pas testé de mon coté bien sur mais fo tenter.
Autrement la doc existe pour le Jvs sur leur serveur.
Le lien peut te le retrouver.
Un simple prog aspirateur basique de site peut te faire le boulot.
Bon plus simple encore, fait une annonce générale, y'a bien un mec ici qui possède le dossier Html correspondant.
Quoi que ici maintenant, ya plus personne en fait...
Le forum est essoufflé et on sait pquoi.
Si j'ai une piste claire, je t'informe en MP.
Un truc qui peut t'aider en attendant...
https://docs.unity3d.com/Manual/SwitchingDocumentationVersions.html
Autant refaire ton jeu en C# Si il est vraiment intéressant. Faut savoir s'adapter dans ce domaine.