Jump to content

francoe1

Admins
  • Content Count

    1,054
  • Joined

  • Last visited

  • Days Won

    81

Everything posted by francoe1

  1. Nop, me refiero a que no es necesario usar colisiones, simplemente definiendo la posición y tamaño de dos rectángulos podes hacer una comprobación AABB para saber si están colisionando.
  2. Podrías optar por crear un Rectángulo (imaginario) para el "Player" y otro para "Final" luego en cada rectángulo final pondrías un componente que haga una comprobación AABB con el rect del Player, de este modo evitas utilizar físicas y omitís muchos problemas que esto conlleva.
  3. Esto parece un problema de luces, fíjate que estén todas en BACKED y que los objetos que quieras BACKEAR sean estáticos.
  4. Busca información sobre Animator Layer y Animator LayerMask.
  5. Sí, fíjate que en inicio del foro te muestra la versión recomendada.
  6. Elimina la variable volumen y en la función start llama a la función SetLevel con el valor guardado. SetLevel(PlayerPrefs.GetFloat("Musica"));
  7. Cada animación puede tener una posición diferente para el pivote, es por eso que cuando cambias la posición del personaje se cambia. Todas la animaciónes deben tener el pivote 0,0,0.
  8. Pienso igual, a veces los desarrolladores damos muchas vueltas buscando la forma "correcta" de hacer las cosas, pero lo que verdaderamente importa es que te sientas cómodo con el resultado 😊 ... Es mejor implentar rápido nuestras ideas y luego refinar... Comentario únicamente aplicado para personas que trabajan de forma solitaria en proyectos pequeños.
  9. No deberías detectar la pulsación de una tecla dentro del callback del colisionador. Te recomiendo crees una variable booleana y la asignes detectando el input desde la función update. Luego usa ese valor como flag para el callback del colisionador.
  10. Más que la dimensión intentaría revisar el pivote. Te dejo si querés un assets que desarrolle para crear Sprite animations https://assetstore.unity.com/packages/tools/sprite-management/spriteanimator-153405
  11. Ey, ey.... La verdad es que hasta que me moví el juego estaba bien, me gusta, tienes que hacerlo un poco más rápido, pero mi felicitación sobre la mesa por el resultado 🙂
  12. @ST-16 Todo apunta ser un problema del PIVOTE, y con certeza de un 100% te diría que así es.
  13. @nomoregames ¿404 no found?
  14. 1 - Ya cuenta con una estructura de datos para tu información. 2 - Tienes una función que captura el tiempo desde el último "Add Energy". 3 - Cuando cierras la app guardas la fecha y hora. 4 - Cuando abres la aplicación cargas la hora y la comparas para saber cuantos minutos pasaron. 5 - En un futuro si quieres evitar hagan trampa cerrando y cambiando la hora del juego podes encriptar el dato guardado y obtener la hora desde un servidor NTP. public class GameInfo { public DateTime LastAddEnergy { get; set; } public int GetEnergyAvailable (int minutes) { int amount = Mathf.CeilToInt ((GetCurrentTime () - LastAddEnergy).TotalMinutes / minutes); if (amount != 0) LastAddEnergy = GetCurrentTime (); return amount; } private DateTime GetCurrentTime () { return DateTime.Now; // O Lo obtenes desde un servidor NTP } public void Save () { PlayerPref.SetString ("date_addEnergy", LastAddEnergy.ToString ()); } public void Load () { if (PlayerPref.ExistKey ("date_addEnergy")) LastAddEnergy = new DateTime (PlayerPref.GetString ("date_addEnergy")) } }
  15. Si, cumpliendo las normas de la sección de proyectos!
  16. El orden de renderizado está definido por la jerarquía. Deberías poner el RawImage arriba del botón en la ventana de Hierarchy.
  17. francoe1

    City Building

    Se ve interesante, es fácil de aplicar? Que algoritmo estás utilizando para buscar el camino?
  18. @Igor El problema de esta creando constátente objetos es la llamada y costo del recolector de basura. En PC no se nota en sesiones cortas, pero te diría que habrás el Administrador de Tareas y Dejes disparando tu juego unas 3 horas y verás como el consumo de RAM empieza a subir. Por otro lado la implementación de un PoolObject no debería por que ser un cambio radical en tu Script. Simplemente cambiarias Instantiate por PoolObject<BulletBehaviour>["bullets"].GetObject(); ------------------------------------ @iRobb Me parece una buena arquitectura, en lo particular la sección 2 y 3 nunca las entendí a pesar de querer implementarlas parece como un pseudo MVC, no digo que esté mal, solo digo que nunca entendí la aplicación en Unity, use y uso MVC para desarrollo de software en general. El único consejo que te daría es sobre AudioManager, es importante que en cada juego definas los Mixer que vas a contener, por eso, dentro del manager deberías tener una lista con todos los mixer, por ejemplo FX, UI, SOUNDs, MUSIC ... etc.. y cuando llamas a AudioManager.Instance.PlayOnShot(MixerIndex, AudioManager.Instance.GetAudioClip("MiAudio"));
  19. De nada, no, no tiene un nombre.
UnitySpain © Todos los derechos reservados 2020
×
×
  • Create New...