Menu
EtoileAbonnementRSS
jeuxvideo.com  /  Tous les forums  /  Forum principal Informatique  /  Forum Création de Jeux  /  Topic J'aide les gens dans Unity  / 

Topic J'aide les gens dans Unity - Page 8

Sujet : J'aide les gens dans Unity

DébutPage précedente
1  ... 345678910111213  ... 171»
Page suivanteFin
ahokaycaynotay
ahokaycaynotay
MP
23 février 2014 à 04:28:55

bonsoir, j'ai converti en mp3 même si c'est lourd dans les 2 sens du terme

Paxlord
Paxlord
MP
24 février 2014 à 11:56:13

Salut,
je (re)fais appel a vous car je rencontre un autre problème.
Je voudrais que quand mon personnage s'approche d'un objet (ici une torche) à l'appui d'une touche le prenne. J'ai juste fait un test de collision (trigger/character) et ça marche bien. Mais dès que j’appelle l'appui d'une touche l'action ne se fait plus.
Voila mon code : http://pastebin.com/wVcb85DQ
Merci d'avance :)

-Adridu84-
-Adridu84-
MP
24 février 2014 à 12:34:47

Il faut que le script soit assigné au perso et pas à la sphère, fait donc if(coll.tag == "Sphere")

Et n'oublie pas de mettre la sphère en Trigger :ok:

_Azerty777
_Azerty777
MP
24 février 2014 à 15:44:37

Est-ce qu'il est possible de faire un "Volume" à la UDK dans Unity ? En gros, une zone (dont un peu changer la taille et la forme) avec une fonction qui permet de dire si un objet est "à l'intérieur". Par exemple, pour faire une zone où les unités perdent des points de vie à chaque seconde (pour prendre un exemple très simple).
Ca doit être possible en utilisant des tricks via les collisions mais c'est moche et j'imagine qu'il doit y avoir un moyen plus propre.

_Azerty777
_Azerty777
MP
24 février 2014 à 15:44:54

+ Bonjour et merci d'avance, où sont mes manières ? :honte:

Rempli
Rempli
MP
24 février 2014 à 15:55:36

_Azerty777 :d) Les colliders :( Box Collider, Sphere Collider :( et tu les mets en Trigger et puis tu code OnTriggerEnter ou OnTriggerStay c'est des choses basiques ça tu peux trouver des tutos partout sur Youtube.

_Azerty777
_Azerty777
MP
24 février 2014 à 16:03:41

"OnTriggerStay is called almost all the frames for every Collider other that is touching the trigger." :( (tiré de la doc)
C'est pas vraiment ce que je cherche. Ce que je veux c'est pouvoir écrire un truc du genre (mix UnrealScript/pseudo-code incoming) :
if (volume.Encompasses(*objet en question*))
*Exécuter des instructions en rapport avec l'objet*

Peut-être que mon exemple était mal choisi vu qu'effectivement l'idée de perte des points de vie nécessite un check fréquent, j'aurais dû réfléchir plus longtemps. :hap: Je pensais plutôt à genre "A un point donné, je veux vérifier que mon objet se trouve toujours dans la zone", mais si ça balance des vérifications à chaque frame ça risque de devenir rapidement assez lourd, non ?

Donc tant qu'à faire autant donner le vrai exemple : je veux faire une zone spéciale qui permette de construire des bâtiments (genre le Creep des Zergs de Starcraft, ou la version Undead de Warcraft III). Du coup je veux vérifier que le joueur est en train de construire dans la zone, mais une fois que le bâtiment est construit j'ai plus besoin de vérifier, et surtout pas de le faire à chaque frame. :(

Mais bon ok, dans tous les cas il semblerait bien que je vais devoir utiliser un bon vieux Box Collider. Fuck. :(

Pseudo supprimé
24 février 2014 à 16:14:41

Bonjour,

Dans ta détection de collision, désactive le collider correspondant.
Collider.enabled
Enabled Colliders will collide with other colliders, disabled Colliders won't.

Pseudo supprimé
24 février 2014 à 16:18:56

void OnTriggerEnter(Collider other)
{
____other.enabled = false;
}

Paxlord
Paxlord
MP
24 février 2014 à 18:15:47

Merci Adridu84 ça marche, Est ce qu'il y a une commande pour passer un game object en Enfant d'un autre objet pendant le jeux ?

_Azerty777
_Azerty777
MP
24 février 2014 à 18:48:20

MediateurOfGame Voir le profil de MediateurOfGame Citer ce postCacher ce postCacher les posts de ce pseudo
Posté le 24 février 2014 à 16:18:56 Avertir un administrateur
void OnTriggerEnter(Collider other)
{
____other.enabled = false;
}

J'imagine que c'est pour moi. Le truc c'est que j'utilise pas les Colliders dans mon code. Les MeshAgents et MeshObstacles obtiennent le même résultat, donc mes unités n'ont même pas d'objet Collider et ça marche super bien pour le reste d'ailleurs. Et apparemment un BoxCollider peut pas réagir avec un MeshAgent ? Voilà une double dose d'emmerdement. :(

_Azerty777
_Azerty777
MP
24 février 2014 à 18:57:55

Aha, je pense avoir trouvé en fait. Avec le collider (que je désactive) je peux accéder à un objet Bounds, qui possède une fonction "Contains" qui est exactement ce que je recherchais, l'équivalent de "Encompasses" en UnrealScript. Juste que je dois faire une Box/Sphere au lieu de pouvoir accéder directement aux Bounds apparemment.

Pseudo supprimé
24 février 2014 à 20:37:54

Bin @_Azerty777:
Si tu gère ta physique toi même... Quoi de mieux pour être efficace (et tu as bien raison pour ce cas).

A bientôt.

Paxlord
Paxlord
MP
25 février 2014 à 03:09:33

Au final, j'ai trouvé tout seul :) Maintenant dernier problème qui se pose avec cette torche c'est que j'aimerais bien qu'on puisse la voire dans le fog (sachant qu'il est noir(jeux d'horreur)).
Merci pour votre aide :)

-Adridu84-
-Adridu84-
MP
26 février 2014 à 01:59:52

J'ai réussi à faire un générateur de terrain ! Je vous montre sa demain :hap:

SergeantCastlez
SergeantCastlez
MP
26 février 2014 à 03:08:57

Je veux bien voir ça !

-Adridu84-
-Adridu84-
MP
26 février 2014 à 09:20:28

Je t'envoie sa en vitesse, je doit y aller, à ce soir !

http://sdz.tdct.org/sdz/unity3d-creation-d-un-menu-avec-curseur-personnalise.html

kakashianbunoir
kakashianbunoir
MP
26 février 2014 à 10:57:20

Il me faillais en faite changer la ligne OnMouseUp par OnMouseDown , mon problème est résolu , merci tout de même pour ton intervention.

LECROU
LECROU
MP
26 février 2014 à 18:01:22

Salut tout le monde !
J'ai un petit soucis pour accéder à une variable d'un script à l'autre en C#...

J'ai un script avec un int nommé "waveCount" nommé GroundScript.cs et je tente d'y accéder dans mon autre script nommé "GameManager.cs"

Pour cela, j'ai procédé comme ceci : http://pastebin.com/HMCmhNAd

Cela fonctionne, mais j'ai deux soucis :

Pour pouvoir accéder à la variable sans erreurs, je dois utiliser GameObject.Find ("Ground"); (qui est mon GameObject avec le script).
Or, le problème est que je suis obligé d'utiliser cela à la ligne 30, dans OnGUI :(
De ce fait, je fais la recherche de gameobject à chaque frame de mon jeu c'est bien ça ? Je n'arrive pas à l'apeller dans Start par exemple... Sinon la variable n'est pas définie dans OnGUI.
Je sais pas si je suis très clair... :(

L'autre soucis est qu'avec cette méthode, la syntaxe est très lourde : groundScript.GetComponent<GroundScript>().waveCoun
t
pour accéder à la variable... :s

Est-ce que je m'y prends correctement ?

Merci par avance j'espère que vous avez réussi à comprendre :hap:

-Adridu84-
-Adridu84-
MP
26 février 2014 à 18:47:30

Générateur de map !

:d) https://googledrive.com/host/0B4VjzNB7vwpENzdGeWtqYUtLREU/generation.html

Je suis à un stade plus avancé (arbres, monstres, etc..) mais je n'ai mit dans cette démo que la génération du sol.

DébutPage précedente
1  ... 345678910111213  ... 171»
Page suivanteFin
Répondre
Prévisu
?
Victime de harcèlement en ligne : comment réagir ?