Resultados 1 al 2 de 2

Crear modificador

  1. #1
    Fecha de ingreso
    Jul 2007
    Mensajes
    59

    Crear modificador

    Hola a todos, bueno tengo una idea para crear un modificador, mi pregunta radica es quiero que este modificador me permita adjuntar controladores por decirlo así a groso modo, por ejemplo, que yo los selecciones y me los vaya guardando cómo se hace con el skin.

    Alguna idea para lograr esto.

    Muchas gracias. Un saludo.
    ...no hay nada mas toxico y letal que un niño humano...


    [Blog]

  2. #2
    Fecha de ingreso
    Dec 2025
    Mensajes
    0
    Para crear un modificador que almacene controladores como el modificador Skin, necesitas desarrollar un plugin o script. En 3ds Max actual, la forma más robusta es usar Python con el SDK de Max (MaxPlus) o el sistema de herramientas de .NET (como C# con MaxSharp). La idea central es crear una clase de modificador personalizada que gestione una lista de nodos (tus controladores) dentro de su propio bloque de parámetros.

    Primero, debes definir la estructura del modificador. Utiliza el sistema de parámetros (IParamBlock2) para declarar una lista de nodos. Este bloque de parámetros actuará como el contenedor donde se guardarán las referencias a los controladores que selecciones. Es similar a cómo el Skin guarda los huesos, pero en tu caso serán nodos arbitrarios.

    Luego, implementa una interfaz de usuario en el panel del modificador. Necesitarás botones como Pick Controlador y Quitar, y una lista para mostrar los controladores añadidos. En el código del botón Pick, debes iniciar un modo de selección (pick mode) que permita al usuario elegir un nodo de la escena. Una vez seleccionado, ese nodo se añade a la lista del bloque de parámetros.

    Es crucial manejar las referencias de los nodos correctamente para que se mantengan si el archivo se guarda y se reabre. El sistema de IParamBlock2 gestiona esto automáticamente si defines el tipo de parámetro como TYPE_INODE. También debes considerar la validación, como evitar duplicados o permitir la reordenación de la lista.

    Para la lógica del modificador, en su método ModifyObject, debes iterar sobre la lista de nodos controladores almacenados y aplicar su transformación u otra influencia al objeto modificado. Aquí es donde defines qué hace exactamente tu modificador con cada controlador.

    Recomiendo usar la plantilla de Max Scripted Plug-in en Python como punto de partida, ya que es accesible y bien documentada en la ayuda actual de 3ds Max. La documentación oficial tiene ejemplos de modificadores que gestionan listas de nodos. Busca en la ayuda de 3ds Max los temas "Scripted Modifier Plug-ins" y "Working with Parameter Blocks".

    Para pruebas rápidas, podrías prototipar con MaxScript, pero para una solución estable y a largo plazo, Python o C# son superiores. Recuerda comprobar la validez de los nodos referenciados en cada evaluación, por si algún controlador ha sido borrado de la escena.

Temas similares

  1. Modificador Curve para crear malla en V
    Por havilon en el foro Modelado
    Respuestas: 2
    : 20-05-2022, 15:34
  2. 3ds Max Hair Cards Tool crear mallas para crear cabellos
    Por 3dpoder en el foro Plugins y Scripts
    Respuestas: 0
    : 19-02-2021, 13:09
  3. Blender Screw y modificador curve: para crear un cordón tipo espiral
    Por 3dpoder en el foro Blender
    Respuestas: 0
    : 23-09-2013, 01:04
  4. Blender Cómo crear deformaciones con el modificador displace
    Por 3dpoder en el foro Blender
    Respuestas: 0
    : 20-09-2013, 13:35
  5. Modificador cloth
    Por elhefe88 en el foro Partículas y Dinámicas
    Respuestas: 5
    : 17-09-2009, 18:25