En Microsoft tienen por ahí una utilidad llamada inuse, que te permite sustituir una (*.dll) en tiempo de ejecución. Puesto que los plugins del 3ds Max son dlls, puede que te sirva. Aunque puede que solo valga para dll de sistema de Windows, no lo sé.
Gracias. La he probado y al intentar reemplazar el plugin por otro me dice que los cambios no tendrán efecto hasta que no se reinicie (el sistema, me imagino).
Por cierto, yo sé bastante de Maxscript y o básico de C++ (sé cómo se hacen clases y métodos y tal), ¿es muy chungo pasarse al SDK?
Yo primero empecé a desarrollar cosas (principalmente exporters) con el SDK y la verdad es que le cogí bastante tirria, me pareció algo lioso.
Después descubrí Maxscript y la verdad es que, aparte de que es más sencillo de programar que C++, también ves los resultados más rápidamente. Se podría decir que estas programando y ves los resultados al instante. Con el SDK es más laborioso. Aparte de que se dan más rodeos para conseguir algo.
Por ejemplo, ahora mismo estoy programando una herramienta que tiene que (entre otras cosas) acceder a los materiales de la escena y recoger ciertas propiedades de los mismos. Pongamos por caso que queremos acceder a la propiedad que indica el porcentaje de mezcla en un material de tipo blend. En Maxscript es tan sencillo cómo hacer esto:
[code]material, mixamount[/code]
Con el SDK eso no se puede hacer a no ser que tengas la definición (el archivo de cabecera) de la clase del material correspondiente. Por ejemplo, no disponemos de la definición del material blend y mucho menos la de un material que tú mismo hayas creado con Maxscript. Tampoco dispondríamos de las propiedades de un mapa de textura propio, o un helper, etc. Así que, para poder acceder a cualquier propiedad de un material (o cualquier objeto de max) por su nombre, me he tenido que crear una clase de 200 líneas de código. Que no es que sean muchas, pero si comparamos con Maxscript.
Evidentemente, una vez que has programado esa clase, acceder a la propiedad de cualquier objeto también es cuestión de una sola línea de código.
Claro, Maxscript te hace eso mismo internamente y tú no te tienes que preocupar, pero en C++ te lo tienes que trabajar tú mismo.
Pero bueno, es como todo, programar mucho y leer mucho la documentación del SDK. Y bueno, no todo es malo con el SDK. Lo bueno es que con el visual C++ tienes un señor debugger y no el Maxscript que no veas para capturar ciertos errores. Y por supuesto la velocidad de proceso que te da es muy superior a Maxscript. Por ejemplo, ahora tengo que llevar a cabo ciertas operación como crear árboles BSP, calcular el Tangent-space de los modelos, procesar un capazo de polígonos, que son operación bastante costos as y que con Maxscript se pueden llegar a hacer eternas. Saludos.