[SCRIPT] Mesh Explosion.

Présentation des outils annexes/externes à Unity.
Avatar de l’utilisateur
Freelax
Messages : 1595
Inscription : 30 Déc 2009 23:02
Localisation : Niort
Contact :

Re: Mesh Explosion.

Message par Freelax » 27 Nov 2012 10:58

Ah bah de toutes façons, l'asset store est loin d’être transparent dans sa gestion, aucun chiffrage, etc .. Donc ouai c'est forcement pour l'argent.

Le seul truc ou UT est reconnaissant c'est qu'ils embauchent parfois les personnes avec des projets valable, Ngui en autre ..
Image

Avatar de l’utilisateur
Mental Unity
Messages : 25
Inscription : 22 Avr 2013 16:57

Re: [SCRIPT] Mesh Explosion.

Message par Mental Unity » 29 Oct 2013 17:33

salut a tous :)
Je déterre ce sujet car j'ai une subite envie de tout faire peter! :twisted:

Je viens de lire tous les posts et je vois que personne ne parle de celui ci :
https://www.assetstore.unity3d.com/#/content/1017

D'après tous ce que j'ai vu c'est le seul à fonctionné sous iOS et android mais impossible d'avoir une demo sur android.
J'ai contacté le sieur Olsson mais pas de réponse pour le moment.

Bon le prix est un peu élevé quand même 80$...Qu'es ce que vous en pensez ?

Avatar de l’utilisateur
cayou66
Codeur
Codeur
Messages : 6450
Inscription : 30 Juin 2011 14:45
Localisation : Montréal

Re: [SCRIPT] Mesh Explosion.

Message par cayou66 » 29 Oct 2013 17:58

La démo est très propre, le découpage est bon, et surtout y'a l'histoire d'UV mapping qui semble assez bien pris en compte. C'est la plus grosse difficulté dans la découpe d'objet, qu'ils aient l'air découpé avec la texture correcte.

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

Re: [SCRIPT] Mesh Explosion.

Message par ZJP » 29 Oct 2013 22:45

La meilleure librairie pour "tout-faire-péter" c'est Exploder.

Image

Avatar de l’utilisateur
opopiers
Messages : 126
Inscription : 26 Nov 2009 10:19

Re: [SCRIPT] Mesh Explosion.

Message par opopiers » 05 Nov 2013 23:21

ZJP a écrit :Salut,

C'est d’avantage un script qu'un "tool", qui permet l'explosion (éclatement des triangles) d'une meshe.
Forum, Asset Store (20$).

Image

Image
Pour information, le robot (Kyle) sur l'image précédente est d'Unity Technologie. Il est libre de droit pour tout projet gratuit ou commercial utilisant Unity3D.

Cela dit, jetez quand même un œil à ce sujet - ou - qui traite du même résultat.

JP

Edit :
Testé :

Code : Tout sélectionner

// C#
// SplitMeshIntoTriangles.cs
using UnityEngine;
using System.Collections;

public class SplitMeshIntoTriangles : MonoBehaviour
{
    IEnumerator SplitMesh ()
    {
        MeshFilter MF = GetComponent<MeshFilter>();
        MeshRenderer MR = GetComponent<MeshRenderer>();
        Mesh M = MF.mesh;
        Vector3[] verts = M.vertices;
        Vector3[] normals = M.normals;
        Vector2[] uvs = M.uv;
        for (int submesh = 0; submesh < M.subMeshCount; submesh++)
        {
            int[] indices = M.GetTriangles(submesh);
            for (int i = 0; i < indices.Length; i += 3)
            {
                Vector3[] newVerts = new Vector3[3];
                Vector3[] newNormals = new Vector3[3];
                Vector2[] newUvs = new Vector2[3];
                for (int n = 0; n < 3; n++)
                {
                    int index = indices[i + n];
                    newVerts[n] = verts[index];
                    newUvs[n] = uvs[index];
                    newNormals[n] = normals[index];
                }
                Mesh mesh = new Mesh();
                mesh.vertices = newVerts;
                mesh.normals = newNormals;
                mesh.uv = newUvs;

                mesh.triangles = new int[] { 0, 1, 2, 2, 1, 0 };

                GameObject GO = new GameObject("Triangle " + (i / 3));
                GO.transform.position = transform.position;
                GO.transform.rotation = transform.rotation;
                GO.AddComponent<MeshRenderer>().material = MR.materials[submesh];
                GO.AddComponent<MeshFilter>().mesh = mesh;
                GO.AddComponent<BoxCollider>();
                GO.AddComponent<Rigidbody>().AddExplosionForce(100, transform.position, 30);

                Destroy(GO, 5 + Random.Range(0.0f, 5.0f));
            }
        }
        MR.enabled = false;

        Time.timeScale = 0.2f;
        yield return new WaitForSeconds(0.8f);
        Time.timeScale = 1.0f;
        Destroy(gameObject);
    }
    void OnMouseDown()
    {
        StartCoroutine(SplitMesh());
    }
}
J'ai ajouté cette ligne :

Code : Tout sélectionner

GO.GetComponent<Rigidbody>().useGravity = false;
Pour déactiver la gravité. Effet plus sympa. 8-)

Petite question toute con, ca s'utilise comment ce script ?

Avatar de l’utilisateur
Loic Joint
Messages : 895
Inscription : 12 Déc 2011 11:49
Localisation : France (picardie)
Contact :

Re: [SCRIPT] Mesh Explosion.

Message par Loic Joint » 05 Nov 2013 23:46

C'est très simple, il s'ajoute sous forme de scripte au mesh que tu veux faire peter et il reste plus qu'a lui envoyer un message pour qu'il face péter le mesh :) (je dis ça de tête donc je laisse un autre utilisateur confirmer, mais j'ai réussi à le faire marcher en quelques secondes donc ca doit vraiment pas être dur dur ^^).

Je crois qu'il y a d'autre façon de le faire mais j'ai testé que celle là, le plug est pas mal je trouve et il fonctionne très très bien sur mobile ;)
Loic Joint - Graphiste pour le jeu vidéo

Mon portfolio :
http://www.loicjoint.com

Avatar de l’utilisateur
opopiers
Messages : 126
Inscription : 26 Nov 2009 10:19

Re: [SCRIPT] Mesh Explosion.

Message par opopiers » 06 Nov 2013 00:04

Loic Joint a écrit :C'est très simple, il s'ajoute sous forme de scripte au mesh que tu veux faire peter et il reste plus qu'a lui envoyer un message pour qu'il face péter le mesh :) (je dis ça de tête donc je laisse un autre utilisateur confirmer, mais j'ai réussi à le faire marcher en quelques secondes donc ca doit vraiment pas être dur dur ^^).

Je crois qu'il y a d'autre façon de le faire mais j'ai testé que celle là, le plug est pas mal je trouve et il fonctionne très très bien sur mobile ;)
En effet c'est tout con !
Je voulais le mettre sur un groupe de mesh et la ca marche pas bien sur (enfin pas directement)

Je suis toujours une quiche en script, mais je désespère pas

Avatar de l’utilisateur
Loic Joint
Messages : 895
Inscription : 12 Déc 2011 11:49
Localisation : France (picardie)
Contact :

Re: [SCRIPT] Mesh Explosion.

Message par Loic Joint » 06 Nov 2013 00:43

lol, t'inquiète pas ca m'arrive souvent ce genre de truc si ca peu te consoler, tu verras on l'adopte vite ce petit plug ;)
Loic Joint - Graphiste pour le jeu vidéo

Mon portfolio :
http://www.loicjoint.com

Avatar de l’utilisateur
Mental Unity
Messages : 25
Inscription : 22 Avr 2013 16:57

Re: [SCRIPT] Mesh Explosion.

Message par Mental Unity » 06 Nov 2013 14:20

Exploder semble sympa et pas cher comparé aux autres mais je n'ai rien vu qui pourrait faire
comme dit Cayou66 " un effet d'éclatement d'un mur plutôt que des triangles".

Je viens de faire un tour sur le forum unity de Exploder et il semble que ce soit possible:
http://forum.unity3d.com/threads/190198 ... ASED/page7

D'après la réponse de Reindeer il faut scripter un peu pour que ca fonctionne :

"In your case just use method Exploder.Crack(OnCracked) in your start script and
call Exploder.ExplodeCracked(OnExplosion) on your mouse click.
Just make sure Exploder is initialized (called start()) before your script start()."

Es ce que quelqu'un qui l'a déjà en sa possession pourrait confirmer que cela fait la même chose que le toolkit vers lequel j'ai pointé "ShatterToolkit"

http://gustavolsson.squarespace.com/sto ... lkits.html
ZJP a écrit :La meilleure librairie pour "tout-faire-péter" c'est Exploder.

Image
c'est un peu definitf non ? :lol:

Avatar de l’utilisateur
Loic Joint
Messages : 895
Inscription : 12 Déc 2011 11:49
Localisation : France (picardie)
Contact :

Re: [SCRIPT] Mesh Explosion.

Message par Loic Joint » 07 Nov 2013 13:38

La meilleure librairie pour "tout-faire-péter" c'est Exploder.
D'après ce que j'ai pu comparer c'est en effet le plug in le plus poussé et meilleur au niveau qualitatif ^^
Loic Joint - Graphiste pour le jeu vidéo

Mon portfolio :
http://www.loicjoint.com

Répondre

Revenir vers « Les outils externes »