Creación de una distribución de objetos de aspecto aleatorio y repetible en Flash
-
08-07-2019 - |
Pregunta
Estoy tratando de dispersar los clips de película por el escenario usando Actionscript 3 de una manera que parece que fueron colocados al azar allí, como fotografías extendidas sobre una mesa.
Intenté usar un arreglo de tipo espiral, pero lo encontré demasiado uniforme, y también una distribución circular, pero lo encontré demasiado aleatorio.
El otro factor es que me gustaría que las posiciones de los mc sean repetibles, de modo que cuando un usuario regrese a la película flash, pueda encontrar los clips donde estaban la última vez.
¿Alguien tiene alguna experiencia / consejo con este tipo de cosas?
Solución
La clave para esto es tener un PRNG en el que puede establecer el valor inicial.
No creo que AS3 tenga ninguna forma de establecer la semilla para Math.random (), pero una búsqueda rápida en la web arrojó algunos resultados para PRNG personalizados que sí lo hacen.
En cuanto a la distribución, tienes que jugar más. ¿Qué no le gustó de la 'distribución circular'?
Tenga en cuenta que puede usar muchas distribuciones diferentes de números aleatorios, que no sean uniformes, usando una distribución uniforme y alguna función.
Otros consejos
Intenté usar un tipo espiral arreglo, pero lo encontré demasiado uniforme, y también una distribución circular, pero me pareció demasiado aleatorio .
Creo que debes pensar un poco más sobre esto. Claramente, no existe tal cosa como "demasiado aleatorio". Algo es aleatorio o no lo es.
Lo que realmente desea es un diseño que sea impredecible (para el usuario final), repetible y estéticamente agradable.
Para simplificar, puede usar números aleatorios para las posiciones x e y. Eso debería darte un aspecto disperso.
¿Pueden superponerse? Si no, después de generar los números aleatorios, puede ver si esa posición se superpondrá con otra en la pantalla.