Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





Editor 3d en python usando c++

Iniciado por KneDa, 01 de Julio de 2014, 09:25:28 PM

« anterior - próximo »

KneDa

Saludos gente,

Tiempo sin postear en el foro. Os comento, estes días se me había ocurrido la idea, quizás un tanto descabellada, de programar un editor gráfico para modelar, animar, iluminar en 3d basado en nodos gráficos con una arqutiectura orientada a plugins.

En principio, tenía pensado que para el frontend quería usar python+pyqt y el backend/plugins en c++.

Mi pregunta es, qué opinais de la idea? Alguna experiencia similar que hayáis tenido o algún proyecto parecido?

Gracias.

TrOnTxU

Yo suelo usar también python+pyqt para las tools.

En cuanto lo de hacer una app de modelado y animación me parece un currote, pero mola :)
¿ Con lo de nodos gráficos te refieres a algo procedural como Houdinni ?

Bueno te comento mi experiencia.
Una parte que me gusta de Qt es el tema de los models/views, y una de las cosas que me mola de python son las metaclasses que puedes utilizar para intentar definirte una especie lenguaje de domino especifico. Yo lo utilizo para definir propiedades parecidas a las Properties de las classes de C# y despues tengo un modelo para inspeccionarlas dentro de un custom tree view que uso al estilo de "PropertyGrid", para serializar los datos, etc. Aun asi hay mucho curro por debajo, cosas que igual ya tienes en C#. Lo bueno es que lo puedes hacer compatible (en teoría) para Windows, MacOS-X y Linux. (aunque a mi me siguen dando problemas algunas cosas en OSX).

Otra cosa es la licencia PyQt y la PySide. La segunda es menos restrictiva (al menos a gratuita) y la API actualmente es casi idéntica.

En cuanto a la parte c++, es importante que recuerdes que debes una API puramente C en tu DLL (.so o .dynlib) para hacer los bindings ( no he mirado si hay alguna herramienta/libreria que utilice bindings directamente en C++, pero yo utilizo lo básico y funciona :) ).

Mi sugerencia ahora mismo igual seria que le echases primero un vistazo a la ATF que ha "liberado" Sony. Es C# y (en principio) solo funciona en windows. Pero tiene mogollón de cosas ya echas: un DOM que puedes definir completamente desde XMLs, copy/paste, undo/redo,custom property editors, timelines, maya-like curve editor, collada viewers, graph editors, ...
La curva de aprendizaje puede ser un poco complicada al principio, pero hay bastantes ejemplos, y para mi la parte más dificil de generalizar es el tema del DOM con copy/paste y mundo/redo, y el sistema que han implementado funciona muy bien. Si ahora mismo tuviera que empezar el toolset de nuevo me pensaria bastante hacerlo con pyqt (como lo tengo ahora), o comenzar con ATF.


Bueno, espero haberte ayudado.
Que vaya bien el proyecto, parece muy interesante, ya comentarás como lo llevas.

Salu2
Vicent: Linked-In  ***  ¡¡Ya tengo blog!!






Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.