Gravité = voile noir

Pour les scripts écrits en C#
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
silvere
Messages : 52
Inscription : 10 Avr 2012 11:35

Gravité = voile noir

Message par silvere » 27 Jan 2016 21:25

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!
Dernière édition par silvere le 27 Jan 2016 21:52, édité 1 fois.

Avatar de l’utilisateur
Freelax
Messages : 1595
Inscription : 30 Déc 2009 23:02
Localisation : Niort
Contact :

Re: Gravité = voile noir

Message par Freelax » 27 Jan 2016 21:46

un voile noir apparait sur l'ecran genre la gravité
Shelou ta phrase :?

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++
Image

silvere
Messages : 52
Inscription : 10 Avr 2012 11:35

Re: Gravité = voile noir

Message par silvere » 27 Jan 2016 21:56

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 :)

Avatar de l’utilisateur
ZJP
Messages : 5748
Inscription : 15 Déc 2009 06:00

Re: Gravité = voile noir

Message par ZJP » 28 Jan 2016 02:34

silvere a écrit :... c'est un peu trop spécifique donc je trouve rien :/
Ah bon?!. C'est "juste" une combinaison de deux choses :
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;
c) Ajouter dans le Start()

Code : Tout sélectionner

MySO = GetComponent<ScreenOverlay>();
d) Ajouter dans l'Update()

Code : Tout sélectionner

MySO.intensity = Mathf.Abs(camera.velocity.x); // ou MySO.intensity = Mathf.Abs(camera.velocity.x) / par_un_facteur_quelconque;
Comme dit précédemment, c'est un début. Un "proof of concept" comme on dit. ;-)

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;	
	}
}

silvere
Messages : 52
Inscription : 10 Avr 2012 11:35

Re: Gravité = voile noir

Message par silvere » 17 Fév 2016 00:40

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...

Répondre

Revenir vers « (C#) CSharp »