2008-09-03 19 views
9

Bueno, el tema es básicamente la pregunta. ¿Hay algún sistema de control de versiones para modelos 3D? Por supuesto, se preferiría un enfoque de código abierto.¿Hay algún sistema de control de versiones para modelos 3D/datos en 3D?

Estoy buscando funcionalidad en la línea de la subversión, sin embargo, sistemas más básicos también serían de interés. Las operaciones básicas como bifurcación/fusión/confirmación deberían estar disponibles de una forma u otra.

ACTUALIZACIÓN: Con enfoque de código abierto no me refiero libre, pero en gran medida la opción de expandir y personalizar el sistema cuando sea necesario

Update2: No sé cómo describir esto de la mejor manera, pero el formato del modelo 3d no es tan importante. Usaremos modelos IFC y, en su mayoría, programas CAD. El enfoque que describe Adam Davis es probablemente lo que estoy buscando.

+0

Pruebe Microsoft SourceSafe. Es terrible para el código fuente porque requiere acceso exclusivo de pago a archivos individuales, pero eso podría ser un activo para los archivos binarios. Son de solo lectura hasta que se retire. – Chloe

Respuesta

11

Esto va a ser difícil ya que la mayoría de los programas de CAD 3D no tienen en cuenta la posibilidad de revisión, por lo que cuando carga algo y lo guarda de nuevo puede reordenar por completo los puntos (hay razones para esto, hecho generalmente para el funcionamiento).

Además, los modelos grandes representados en un formato de texto son archivos enormes, y demorarán una eternidad en copiar/fusionar/etc.

No hay un sistema actual que lo administre, pero hay una gran necesidad en la industria para ello.

Espero que un sistema así tenga un modelo de normalizador que se convierta desde y hacia el formato CAD deseado y el formato de revisión. A continuación, podría manejar fusiones y rastrear cambios más fácilmente.

También necesitaría generar diffs de forma tal que pueda abrir un modelo "diferido" en un programa cad y los cambios se muestren en un color diferente o resaltados de otra manera. Nadie va a poder ver una diferencia de texto y entender lo que está mirando. Este programa diferente necesitaría apoyar la comprensión de que dos modelos son iguales a pesar de que la ubicación y la rotación 0,0,0 no son las mismas (problema de coincidencia difícil) y le dan al usuario alguna interfaz que le permite ayudarlo cuando se pone atascado.

Probablemente tendrá que tratar las partes del modelo por separado (huesos, mallas, texturas, etc.) y tener un tercer archivo que las sincronice al convertirlas a un archivo de modelo inclusivo para su uso y modificación.

No es un problema trivial ... Pero si comenzaste con algo que solo manejara mallas y lo abrieses de origen, probablemente conseguirías mucha gente interesada.

0

Tenía la impresión de que SVN es perfecto para cualquier tipo de proyecto que utiliza archivos de texto. Entonces, si su modelo está compuesto de archivos de texto, estaría bien.

No veo cómo funcionarían los datos binarios, ya que todos los controles de versiones que conozco utilizan la administración de diferencias, que usa comparaciones de texto.

1

Similar a lo que dijo GingaNinja, si todo lo que te importa es la administración de archivos binarios en diferentes revisiones, la mayoría de los sistemas de control de revisiones funcionarán para ti. Sin embargo, si está buscando una herramienta que muestre los cambios en las imágenes reales, es posible que le resulte difícil encontrar aquí una recomendación de una herramienta. Comenzaría preguntando en un foro de artistas gráficos.

0

Los modelos y datos en 3D son solo archivos de datos, ya sea que su formato sea de texto o binario. Los sistemas de control de versiones pueden manejar ambos ya que a menudo revisas bibliotecas, etc., que son archivos binarios.

No estoy muy seguro de lo que quiere decir con "enfoque de código abierto". ¿Te refieres a una solución gratis? Puede obtener proyectos de código abierto que tienen que pagar, según su uso, p. Qt.

Subversion o CVS almacenarían texto o modelos binarios y son gratuitos. Subversion es preferible a CVS ya que puede comprometer múltiples archivos en conjuntos de cambios. En Windows puede usar TortoiseSVN, que es un conjunto de herramientas excelente y gratuito.

0

Si usa Subversion, debe recordar bloquear (suponiendo que los archivos son binarios, que son casi todos los formatos de modelos 3D). Además de Subversion y otros OSS como este, puede consultar Gridiron Flow - el nuevo software de gestión de contenido/flujo de trabajo de Gridiron Software. John Nack de Adobe le dio un rave review.

0

DXF es un estándar de archivo de texto (similarish a XML), pero no creo que la fusión este tipo de archivos es una idea particularmente buena.

Si desea realizar una operación Diff en 2 archivos de AutoCAD, puede direccionar mediante programación los objetos individuales mediante su "Handle", un identificador de hex único. Ubicación, rotación, escalado, color, etc. son propiedades del objeto. Los dibujos CAD son básicamente una base de datos de objetos. No sé de ningún producto que haga esto. El seguimiento de cambios es una propuesta viable, pero la fusión sería mucho más complicada.

1

Hay una herramienta diff para formatos 3D comunes lanzados en aproximadamente una semana. Es compatible con dxf/dwg, obj, stl, igs. Puede que no sea perfecto, ya que todavía está en la versión 1, pero con suerte puede ayudarte con tu problema. La herramienta se llama Differ3D y se puede encontrar en http://www.blackspiralsoftware.com. Descargo de responsabilidad: yo trabajo para la compañía que lanzó este producto. Estamos buscando mejorarlo, por lo que cualquier comentario sería bienvenido.

+0

Gracias por la revelación honesta – Flexo

+1

El sitio web/proyecto/software etc. parece que ya no existe ... ¿qué le pasó a la herramienta?!? – birgit

2

Tenga una mirada en http://3drepo.org

Es de código abierto marco de control de revisión de activos 3D y altamente extensible.

3

Aunque esta pregunta es antigua, todavía está en los resultados de Google para el control de la versión 3D. Afortunadamente, en los años transcurridos desde que se formuló la pregunta, Github ha comenzado a admitir archivos 3D STL con visual diffs.

Cuestiones relacionadas