Salut salut!
Bon je sais en ce moment je suis chiant je pose plein de question relou... donc en voila encore une
Alors petit rappel, je fais un jeu spatial for fun ou on controle un vaisseau spatial bref... j'aimerais faire en sorte que si on rotate trop longtemps, trop brutalement (et surtout trop rapidemment a vitesse maximale quoi), un voile noir apparait sur l'ecran genre le sang qui monte a la tete (effet de gravité).
Donc est ce que quelqu'un sait comment faire? j'ai regardé un peu sur le net, c'est un peu trop spécifique donc je trouve rien
Merci merci!
Gravité = voile noir
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
Gravité = voile noir
Dernière édition par silvere le 27 Jan 2016 21:52, édité 1 fois.
Re: Gravité = voile noir
Shelou ta phraseun voile noir apparait sur l'ecran genre la gravité
Sinon pour les effet du genre, accélération, évanouissement, perte de connaissance etc, les ImageEffect de camera te seront d'un grand secoure dans ce cas. Si j'ai bien compris ...
http://docs.unity3d.com/Manual/comp-ImageEffects.html
Deploie le menu 'Image Effect Reference' a gauche et tu aura de bons exemples de ce qu'il est possible de faire de base. Après si tu as besoin d'un truc spécifique, il va falloir 'bricoler'.
a++
Re: Gravité = voile noir
Effectivement j'ai inversé la phrase :p
Yes merci je sais qui faut toucher a l'image effect ça y'a pas de prob... le gros problème c'est si je peux recuperer l'acceleration de la rotation ou truc du genre pour faire en sorte d'augmenter progressivement le voile noir? si quelqu'un à deja fait svp
Yes merci je sais qui faut toucher a l'image effect ça y'a pas de prob... le gros problème c'est si je peux recuperer l'acceleration de la rotation ou truc du genre pour faire en sorte d'augmenter progressivement le voile noir? si quelqu'un à deja fait svp
Re: Gravité = voile noir
Ah bon?!. C'est "juste" une combinaison de deux choses :silvere a écrit :... c'est un peu trop spécifique donc je trouve rien
a) La vélocité de la rotation sur l'axe des X, celui du Tangage >>> http://docs.unity3d.com/ScriptReference ... ocity.html
b) Appliquer cette valeur à un Post Effect. Au choix, Le "Screen Overlay" : http://docs.unity3d.com/Manual/script-S ... erlay.html ou "Vignetting" : http://docs.unity3d.com/Manual/script-V ... ation.html
C'est un bon début.
Le dev c'est avant tout de l'algorithmie dans la recherche d'une bonne solution par combinaison de choses entre elles. Y'a pas forcement de "pack" tout fait.
Edit :
Fait en 2-3 minutes le "truc" vite fait (et vérifié) qui demande forcément un travail de mise au point au niveau de l'Update.
a) Coller le "Screen Overlay" sur la Camera. Trouver la bonne texture bien sur...
b) Ajouter dans les déclarations
Code : Tout sélectionner
private ScreenOverlay MySO;
Code : Tout sélectionner
MySO = GetComponent<ScreenOverlay>();
Code : Tout sélectionner
MySO.intensity = Mathf.Abs(camera.velocity.x); // ou MySO.intensity = Mathf.Abs(camera.velocity.x) / par_un_facteur_quelconque;
Code : Tout sélectionner
using UnityEngine;
using System.Collections;
using System.Collections.Generic;
using System;
public class VoileNoir : MonoBehaviour
{
private ScreenOverlay MySO;
void Start ()
{
MySO = GetComponent<ScreenOverlay>();
}
void Update ()
{
MySO.intensity = Mathf.Abs(camera.velocity.x); // ou MySO.intensity = Mathf.Abs(camera.velocity.x) / par_un_facteur_quelconque;
}
}
Re: Gravité = voile noir
Merci je vais test mais mon code est un peu bizarre donc je vais peut etre tout devoir modifier pour faire un truc plus propre.
PS: désole du temps de réponse...
PS: désole du temps de réponse...