[RESOLU][DB-AL] ConstantForce
Règles du forum
Merci de respecter la NOMENCLATURE suivante pour vos TITRES de messages :
Commencez par le niveau de vos scripts
DB = Débutant
MY = Moyen
CF = Confirmé
Puis le domaine d'application
-RS = Réseau
-AL = Algorithmie
Exemple :
[DB-RS] Mouvement perso multijoueur
Merci de respecter la NOMENCLATURE suivante pour vos TITRES de messages :
Commencez par le niveau de vos scripts
DB = Débutant
MY = Moyen
CF = Confirmé
Puis le domaine d'application
-RS = Réseau
-AL = Algorithmie
Exemple :
[DB-RS] Mouvement perso multijoueur
[RESOLU][DB-AL] ConstantForce
Bonjour, j’aimerai creér un script c# avec un void TriggerEnter ou autre, ajouter une force constante sur un Game objet.
En gros mon Player est une sphere et quand elle entre dans la zone de collision d'un cube alors on applique une force constante sur le Player tant qu'il est dans ce cube.
je veux créer un ventilateur en fait.
j’espère que je suis clair merci pour vos réponse car je tourne en rond.
Alexis.
En gros mon Player est une sphere et quand elle entre dans la zone de collision d'un cube alors on applique une force constante sur le Player tant qu'il est dans ce cube.
je veux créer un ventilateur en fait.
j’espère que je suis clair merci pour vos réponse car je tourne en rond.
Alexis.
Dernière édition par zakilex le 09 Déc 2016 14:29, édité 1 fois.
- boubouk50
- ModoGenereux
- Messages : 6246
- Inscription : 28 Avr 2014 11:57
- Localisation : Saint-Didier-en-Bresse (71)
Re: [DB-AL] ConstantForce
As-tu déjà commencé à coder ce script? Montre-nous.
"Ce n'est pas en améliorant la bougie, que l'on a inventé l'ampoule, c'est en marchant longtemps."
Nétiquette du forum
Savoir faire une recherche
Apprendre la programmation
Nétiquette du forum
Savoir faire une recherche
Apprendre la programmation
Re: [DB-AL] ConstantForce
Hello,
J'ai regardé vite fait sur le net et tu as quelqu'un qui a fait ca :
https://www.youtube.com/watch?v=iD_iwP-jkeM
Ça a l'air de correspondre à ce que tu veux faire, tu devrais jeter un oeil il met un lien pour télécharger le projet dans son lien.
Cordialement,
Molgy
J'ai regardé vite fait sur le net et tu as quelqu'un qui a fait ca :
https://www.youtube.com/watch?v=iD_iwP-jkeM
Ça a l'air de correspondre à ce que tu veux faire, tu devrais jeter un oeil il met un lien pour télécharger le projet dans son lien.
Cordialement,
Molgy
T'entraîner tu devras,
Tester tu feras,
Réussite tu auras.
-- Dayo !
Tester tu feras,
Réussite tu auras.
-- Dayo !
Re: [DB-AL] ConstantForce
Molgy j'ai deja vue cette vidéo mais c'est un peu trop complexe pour ce que je veux faire merci.
voici mon code:
voici mon code:
Code : Tout sélectionner
using UnityEngine;
using System.Collections;
[RequireComponent(typeof(Rigidbody))]
public class TriggerZoneRight : MonoBehaviour {
void Start () {
}
void Update () {
}
void OnTriggerEnter(Collider other){
if(other.gameObject.CompareTag("Ventillo"))
{
other.GetComponent<ConstantForce>().force = new Vector3 (100,0,0);
}
}
}
Re: [DB-AL] ConstantForce
Bonjour,
"OnTriggerEnter" est une fonction qui est appelée quand un objet pénètre dans le collider. Elle est appelée une seule fois.
Si tu veux qu'une force soit appliquée "tant que" l'objet reste dans le collider, il vaut mieux utiliser "OnTriggerStay".
Il y a un exemple ici : https://docs.unity3d.com/ScriptReferenc ... rStay.html
"OnTriggerEnter" est une fonction qui est appelée quand un objet pénètre dans le collider. Elle est appelée une seule fois.
Si tu veux qu'une force soit appliquée "tant que" l'objet reste dans le collider, il vaut mieux utiliser "OnTriggerStay".
Il y a un exemple ici : https://docs.unity3d.com/ScriptReferenc ... rStay.html
Re: [DB-AL] ConstantForce
j'ai essayer avec le TriggerStay mais cela ne fonctionne toujours pas, voici mon code:
fait il que je rajoute un esle?
Merci.
Code : Tout sélectionner
using UnityEngine;
using System.Collections;
[RequireComponent(typeof(Rigidbody))]
public class TriggerZoneRight : MonoBehaviour {
//public float hoverForce = 20f;
// Use this for initialization
void Start () {
}
// Update is called once per frame
void Update () {
}
void OnTriggerStay(Collider other){
if(other.gameObject.CompareTag("Sphere"))
{
other.GetComponent<ConstantForce>().force = new Vector3 (200,0,0);
}
}
}
Merci.
- boubouk50
- ModoGenereux
- Messages : 6246
- Inscription : 28 Avr 2014 11:57
- Localisation : Saint-Didier-en-Bresse (71)
Re: [DB-AL] ConstantForce
Est-ce que l'objet qui possède le trigger est tagué Sphere?
Est-il bien un trigger? Est-ce que la gestion de collision est ben gérée?
As-tu une erreur console?
Utilises des Debug.Log pour savoir ce qu'il se passe:
Est-il bien un trigger? Est-ce que la gestion de collision est ben gérée?
As-tu une erreur console?
Utilises des Debug.Log pour savoir ce qu'il se passe:
Code : Tout sélectionner
using UnityEngine;
using System.Collections;
[RequireComponent(typeof(Rigidbody))]
public class TriggerZoneRight : MonoBehaviour {
//public float hoverForce = 20f;
// Use this for initialization
void Start () {
}
// Update is called once per frame
void Update () {
}
//Te permet de savoir si tu entres dans un Trigger
void OnTriggerEnter (Collider other) {
if(other.gameObject.CompareTag("Sphere"))
Debug.Log ("Trigger Sphere");
else
Debug.Log ("Trigger qui n'est pas Sphere");
}
//Te permet de savoir si tu entres en Collision
void OnCollisionEnter (Collision collision) {
if(collision.gameObject.CompareTag("Sphere"))
Debug.Log ("Collision Sphere");
else
Debug.Log ("Collision qui n'est pas Sphere");
}
void OnTriggerStay(Collider other){
other.GetComponent<ConstantForce>().force = new Vector3 (200,0,0);
}
}
"Ce n'est pas en améliorant la bougie, que l'on a inventé l'ampoule, c'est en marchant longtemps."
Nétiquette du forum
Savoir faire une recherche
Apprendre la programmation
Nétiquette du forum
Savoir faire une recherche
Apprendre la programmation
Re: [DB-AL] ConstantForce
en fait cela fonctionne avec un OnTriggerExit et j'applique le script sur la sphere:
merci a vous tous.
Code : Tout sélectionner
using UnityEngine;
using System.Collections;
[RequireComponent(typeof(Rigidbody))]
public class TriggerZoneRight : MonoBehaviour {
void OnTriggerStay(Collider other){
if(other.gameObject.CompareTag("Ventillo"))
{
GetComponent<ConstantForce>().force = new Vector3 (800,0,0);
}
}
void OnTriggerExit(Collider other){
if(other.gameObject.CompareTag("Ventillo"))
{
GetComponent<ConstantForce>().force = new Vector3 (0,0,0);
}
}
}
- boubouk50
- ModoGenereux
- Messages : 6246
- Inscription : 28 Avr 2014 11:57
- Localisation : Saint-Didier-en-Bresse (71)
Re: [RESOLU][DB-AL] ConstantForce
???
OnTriggerExit () ne peut être appelé que si tu es déjà à l'intérieur d'un Trigger. Donc OnTriggerStay () est appelé avant. Donc si OnTriggerExit () fonctionne, OnTriggerStay () fonctionne également.
Ça n'a pas de sens, ce que tu dis.
OnTriggerExit () ne peut être appelé que si tu es déjà à l'intérieur d'un Trigger. Donc OnTriggerStay () est appelé avant. Donc si OnTriggerExit () fonctionne, OnTriggerStay () fonctionne également.
Ça n'a pas de sens, ce que tu dis.
"Ce n'est pas en améliorant la bougie, que l'on a inventé l'ampoule, c'est en marchant longtemps."
Nétiquette du forum
Savoir faire une recherche
Apprendre la programmation
Nétiquette du forum
Savoir faire une recherche
Apprendre la programmation
Re: [RESOLU][DB-AL] ConstantForce
oui oui désolé, en fait le OnTriggerStay () fonctionne.