Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





Un ejemplo de un sistema de Undo/Redo

Iniciado por XÑA, 25 de Julio de 2012, 09:33:17 PM

« anterior - próximo »

XÑA


He añadido una entrada sobre una posible solución al tema del Undo/Redo. Para mi un tema muy importante, y creo que uno de los grandes éxitos de Unity es que posee Undo/Redo. Shiva NO lo soporta y es algo que a mi particularmente me echó para atrás cuando estaba mirando estos engines.

http://javiermaura.wordpress.com/2012/07/25/sobre-undos-y-redos/

blau

¡¡ Que grandes las expresiones lambda!!

Mi solución fue la misma aunque no llegue nunca a plantearme lo de los grupos... mola... :)

Vicente

Yo ahora estoy pegandome con el editor visual del motor de mi empresa, y la solucion es parecida, pero cambio un par de cosas:

- Uso pilas en vez de listas.
- Mi sistema de Undo/Redo tambien se encarga de decir si hay cosas "pendientes por salvar", asi que existe el concepto de "cambio que no se puede deshacer". Por ejemplo si tienes una textura en tu escena, y la editas en el photoshop, el editor se da cuenta del cambio pero no seria capaz de deshacerlo. Pero el tiene que indicar que hay cosas pendientes por salvar porque puedes haber cambiado el tamano o a saber.

Lo de los grupos es interesante, aunque lo del IdGrupo no me termina de gustar :S

Un saludo!

Vicente

XÑA

#3
Entonces como agrupas los cambios si por ejemplo seleccionan 1000 objetos y cambian una propiedad, por ejemplo el color. Tendrías 1000 entradas de undo...Un poco heavy si el usuario quiere hacer el undo de todo eso.... ;)

Por cierto..¿Qué framework usas para el editor? SharpDX?






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.