Resultados 1 al 2 de 2

Problema con gravedad afectando per particle

  1. #1
    Fecha de ingreso
    Dec 2009
    Mensajes
    13

    Problema con gravedad afectando per particle

    Hola a todos. Tenía una duda sobre los atributos per particle que esperaba pudieseis resolverme. Tengo un emisor lanzando instancias de 2 objetos diferentes. He puesto en una expresión un random para que vayan saliendo aleatoriamente esos objetos.

    Lo que quería era conseguir que cada vez que salga uno de los objetos, le afecte la gravedad que tengo incluida en la escena, y cuando salga el otro, no le afecte.

    He intentado añadirlo en la expresión, pero va cambiando la gravedad conforme se van creando, a pesar de que tengo la expresión en runtime After dynamics.

    Como podría hacerlo? Gracias a todos.

    Por si acaso, dejo el código que tengo puesto de momento.

    En runtime After dynamics:
    If (particleshape1. Indexp < 1.0){.

    Particleshape1.velocity=<<1,0,0>>.

    Geoconnector1.resilience=3.

    Gravityfield1.magnitude=9.8.
    }.

    Else{.

    Particleshape1.velocity=<<3,0,0>>.

    Geoconnector1.resilience=0.

    Gravityfield1.magnitude=0.
    }.

    En creation.

    Particleshape1. Indexp = Rand(0,1.9) . Gracias otra vez.

  2. #2
    Fecha de ingreso
    Apr 2002
    Mensajes
    29,398

    Controlar gravedad por tipo de partícula en Maya con Particle Shape

    En Maya, la forma correcta de asignar atributos per particle para controlar la gravedad de forma independiente es no modificar directamente el campo de gravedad global, porque eso afecta a todos los objetos del campo. En lugar de eso, se usa un atributo per particle llamado isDynamic o se ajusta la influencia de los campos sobre cada partícula con el atributo acceleration o mass por partícula.


    Primero, creo un atributo por partícula que identifique el tipo de instancia, por ejemplo, tipo, que puede valer 0 o 1. Esto lo puedes asignar en el Creation Expression:

    Particleshape1.tipo = rand(0,1);

    Luego, en el Runtime After Dynamics, no modifico la magnitud del campo de gravedad global. En su lugar, ajusto la aceleración de cada partícula dependiendo del tipo:

    Código:
    if (Particleshape1.tipo == 0) {
        // Partículas afectadas por gravedad
        Particleshape1.acceleration = <<0,-9.8,0>>;
    } else {
        // Partículas que ignoran la gravedad
        Particleshape1.acceleration = <<0,0,0>>;
    }
    De esta forma, cada partícula tiene su propia aceleración vertical y no afecta al campo de gravedad general. Esto evita que la gravedad cambie para todas las partículas conforme se generan nuevas, y mantiene la aleatoriedad de instancias que ya habías definido. También puedes combinar esto con resistance o mass para ajustar cómo cada partícula responde a la física de la escena.
    |Agradecer cuando alguien te ayuda es de ser agradecido|

Temas similares

  1. 3ds Max Problema Sistema de Salto sín gravedad Rigid Body
    Por Demoone en el foro Videojuegos
    Respuestas: 0
    : 08-07-2018, 20:37
  2. Problema con ensamble usando particle Flow
    Por sPktro1 en el foro Partículas y Dinámicas
    Respuestas: 4
    : 04-12-2012, 11:53
  3. Problema con particle flow Toolbox
    Por Moneitor en el foro Partículas y Dinámicas
    Respuestas: 3
    : 07-11-2011, 19:29
  4. 3dsMax Problema con al gravedad
    Por sacoliz en el foro Animación y Rigging
    Respuestas: 1
    : 23-10-2008, 18:40
  5. Problema con la gravedad de reactor
    Por Rinkes en el foro Partículas y Dinámicas
    Respuestas: 4
    : 02-10-2005, 12:57