Bonjour !
-
- Messages : 5
- Inscription : 21 Juil 2010 06:46
- Localisation : Montréal
- Contact :
Bonjour !
Je me présente ! francois , enchanter de vous connaitre !
J'ai une petite question car je suis une recrue du scripting ,
j'ai attacher une image montrant l'exemple donc je veut réussir
voila , j'ai une urne comme vous voyez avec un mesh collider ..
j'ai utiliser le prefab venant avec unity , le first person controller pour mon personnage ,
ce que je veut obtenir en script est un guitexture qui décrit l'objet en appuyant sur le bouton droit de la souris lorsque je suis en collision avec l'urne !
merci !
J'ai une petite question car je suis une recrue du scripting ,
j'ai attacher une image montrant l'exemple donc je veut réussir
voila , j'ai une urne comme vous voyez avec un mesh collider ..
j'ai utiliser le prefab venant avec unity , le first person controller pour mon personnage ,
ce que je veut obtenir en script est un guitexture qui décrit l'objet en appuyant sur le bouton droit de la souris lorsque je suis en collision avec l'urne !
merci !
Re: Bonjour !
Salut,
Tu crées un GUI.Textarea ->
tu initialises text avec "" (champs vide).
Dans une fonction OnMouseDown tu donnes à text la valeur : "ta description" et dans une fonction OnMouseOut tu fais un petit text = "".
Tu crées un GUI.Textarea ->
Code : Tout sélectionner
TextArea (position : Rect, text : string) : string
Dans une fonction OnMouseDown tu donnes à text la valeur : "ta description" et dans une fonction OnMouseOut tu fais un petit text = "".
Il 10 types de personnes, ceux qui comprennent le binaire, et ceux qui ne le comprennent pas.
-
- Messages : 5
- Inscription : 21 Juil 2010 06:46
- Localisation : Montréal
- Contact :
Re: Bonjour !
J'ai tester le script en vain ,
j'ai expérimenté avec succès un script qui permettais de faire apparaitre un GUITEXTURE et un son lors d'une collision par trigger , tout sa détruit avec un yeild de 5 secondes .. ,
alors je me suis pencher sur un code me permettant d'appuyer sur une touche du clavier pour en faire le meme effet .. sans que sa pop d'un seul coup ..
voici mon script .. mais il me disent .. Update() can not be a coroutine .. et je suis bloquer depuis ..
var showgui = false;
var playClip : AudioClip;
var textureToDisplay : Texture2D;
function OnGUI () {
if (showgui) {
GUI.Label (Rect (150, 50, textureToDisplay.width, textureToDisplay.height),
textureToDisplay);
}
}
function Update () {
if (Input.GetKeyDown ("Fire1")){
showgui = true;
audio.clip = playClip;
audio.Play();
yield WaitForSeconds (5);
showgui = false;
}
}
j'ai expérimenté avec succès un script qui permettais de faire apparaitre un GUITEXTURE et un son lors d'une collision par trigger , tout sa détruit avec un yeild de 5 secondes .. ,
alors je me suis pencher sur un code me permettant d'appuyer sur une touche du clavier pour en faire le meme effet .. sans que sa pop d'un seul coup ..
voici mon script .. mais il me disent .. Update() can not be a coroutine .. et je suis bloquer depuis ..
var showgui = false;
var playClip : AudioClip;
var textureToDisplay : Texture2D;
function OnGUI () {
if (showgui) {
GUI.Label (Rect (150, 50, textureToDisplay.width, textureToDisplay.height),
textureToDisplay);
}
}
function Update () {
if (Input.GetKeyDown ("Fire1")){
showgui = true;
audio.clip = playClip;
audio.Play();
yield WaitForSeconds (5);
showgui = false;
}
}
Re: Bonjour !
Faut pas mettre de yield dans un update. Ça vient de là ton message d'erreur.
Il 10 types de personnes, ceux qui comprennent le binaire, et ceux qui ne le comprennent pas.
Re: Bonjour !
Salut Fazeonne
Moi j'ai pas tout compris aux explications du dessus.
Cependant, je suis intéressé par ta version du code :
en cliquant sur un objet on fait apparaitre un texte ( ou une image avec le texte).
Peux tu le publier ici STP?
Meci
Moi j'ai pas tout compris aux explications du dessus.
Cependant, je suis intéressé par ta version du code :
en cliquant sur un objet on fait apparaitre un texte ( ou une image avec le texte).
Peux tu le publier ici STP?
Meci
-
- Messages : 5
- Inscription : 21 Juil 2010 06:46
- Localisation : Montréal
- Contact :
Re: Bonjour !
Voici le code fonctionnel pour un évènement de GUI en texture lors d une collision avec l objet par un joueur ..
tu peu mettre un clip audio et une texture de ton choix , tout disparait après le nombre de secondes voulu par le yield ..
var showgui = false;
var playClip : AudioClip;
var textureToDisplay : Texture2D;
function OnGUI () {
if (showgui) {
GUI.Label (Rect (150, 50, textureToDisplay.width, textureToDisplay.height),
textureToDisplay);
}
}
function OnTriggerEnter(){
showgui = true;
audio.clip = playClip;
audio.Play();
yield WaitForSeconds (5);
showgui = false;
}
p.s ,, j ai enlever le yield pour une fonction onkeydown mais sa ne fonctionne pas .. , unity lance une erreur comme quoi que Fire1 est une touche inexistante .
tu peu mettre un clip audio et une texture de ton choix , tout disparait après le nombre de secondes voulu par le yield ..
var showgui = false;
var playClip : AudioClip;
var textureToDisplay : Texture2D;
function OnGUI () {
if (showgui) {
GUI.Label (Rect (150, 50, textureToDisplay.width, textureToDisplay.height),
textureToDisplay);
}
}
function OnTriggerEnter(){
showgui = true;
audio.clip = playClip;
audio.Play();
yield WaitForSeconds (5);
showgui = false;
}
p.s ,, j ai enlever le yield pour une fonction onkeydown mais sa ne fonctionne pas .. , unity lance une erreur comme quoi que Fire1 est une touche inexistante .
-
- Messages : 5
- Inscription : 21 Juil 2010 06:46
- Localisation : Montréal
- Contact :
Re: Bonjour !
ce script fonctionne sur un event de collision en Keydown avec la touche C .. mais je n arrive pas a trouver une alternative a yeild pour faire disparaitre le gui texture .. , j ai fait destroy après quelque secondes .. mais sa détruit l objet ainsi que la texture .. est ce qu il y a un moyen de mettre une fonction d attente avant le
showgui = false; .. car un yeild avant cela me donne une erreur de coroutine ..
var showgui = false;
var playClip : AudioClip;
var textureToDisplay : Texture2D;
function OnGUI () {
if (showgui) {
GUI.Label (Rect (150, 50, textureToDisplay.width, textureToDisplay.height),
textureToDisplay);
}
}
function Update () {
if (Input.GetKeyDown ("c")){
showgui = true;
audio.clip = playClip;
audio.Play();
showgui = false;
}
}
showgui = false; .. car un yeild avant cela me donne une erreur de coroutine ..
var showgui = false;
var playClip : AudioClip;
var textureToDisplay : Texture2D;
function OnGUI () {
if (showgui) {
GUI.Label (Rect (150, 50, textureToDisplay.width, textureToDisplay.height),
textureToDisplay);
}
}
function Update () {
if (Input.GetKeyDown ("c")){
showgui = true;
audio.clip = playClip;
audio.Play();
showgui = false;
}
}
-
- Messages : 5
- Inscription : 21 Juil 2010 06:46
- Localisation : Montréal
- Contact :
Re: Bonjour !
J ai trouver la solution, alors si vous voulez faire une apparition de GUItexture par Collision par le player .. voici le script .. ( L objet en question doit avoir un Collider avec Ontrigger Coché )
var showgui = false;
var playClip : AudioClip;
var textureToDisplay : Texture2D;
function OnGUI () {
if (showgui) {
GUI.Label (Rect (150, 50, textureToDisplay.width, textureToDisplay.height),
textureToDisplay);
}
}
function OnTriggerEnter(){
showgui = true;
audio.clip = playClip;
audio.Play();
yield WaitForSeconds (5);
showgui = false;
}
le prochain script serais attacher a un empty object avec un Box Collider .. appliquer sur les limites de votre sol en dessous de votre objet qui dévoile le GUItexture ..
var playClip : AudioClip;
function Update() {
if (Input.GetKeyDown ("c")){
audio.clip = playClip;
audio.Play();
Application.LoadLevel (1);
}
}
ce script permet de changer de tableau ou n importe quel fonction par une touche clé, j'ai mis c comme référence , mais sa peu être a peu près n importe quoi
et voila !! sa marche a merveille .. un petit peu plus de boulot mais au moins cela fonctionne !
var showgui = false;
var playClip : AudioClip;
var textureToDisplay : Texture2D;
function OnGUI () {
if (showgui) {
GUI.Label (Rect (150, 50, textureToDisplay.width, textureToDisplay.height),
textureToDisplay);
}
}
function OnTriggerEnter(){
showgui = true;
audio.clip = playClip;
audio.Play();
yield WaitForSeconds (5);
showgui = false;
}
le prochain script serais attacher a un empty object avec un Box Collider .. appliquer sur les limites de votre sol en dessous de votre objet qui dévoile le GUItexture ..
var playClip : AudioClip;
function Update() {
if (Input.GetKeyDown ("c")){
audio.clip = playClip;
audio.Play();
Application.LoadLevel (1);
}
}
ce script permet de changer de tableau ou n importe quel fonction par une touche clé, j'ai mis c comme référence , mais sa peu être a peu près n importe quoi
et voila !! sa marche a merveille .. un petit peu plus de boulot mais au moins cela fonctionne !