Jump to content
UnitySpain

Search the Community

Showing results for tags 'manager'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Inicio
    • Proyectos
    • Offtopic
    • Unity Feeds
    • Website
  • Mesa de ayuda
    • Unity
    • Arte
    • Otras Especialidades
    • Builds & Dispositivos
  • Aportes de la Comunidad
    • Recursos
    • Eventos
    • Buenas Prácticas
  • Bolsa de trabajo & Colaboraciones
    • Ofertas y Demandas
  • Post Antiguos
    • General (Antiguo)

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Especialidad

Found 3 results

  1. Hola, les presento este nuevo asset, lo llamé Overseer (capataz): Asset Store | Guía (inglés) ■ Descripción Overseer es un simple e útil herramienta de manejo de escenas (Scene Manager). Este asset permite crear y organizar facilmente la estructura principal de tu juego, se encarga de lo básico, como carga de escenas, transiciones (fade in/out), pantallas de carga, audio, pantallas introductorias y creditos. Overseer usa el concepto de elementos, cada uno consiste en: Tag. Cursor settings. Scenes. Loading Canvas. Audio (loop, volume and clip). Duration (fixed or not , duration). FadeIn/Out (enable/disable, duration and gradient curve). ■ Para quién es? Para cualquiera, no se requiere saber de programación, con solo arrastrar componentes y asignar referencias alcanza, todas las características están integradas en una sola ventana. ■ Características Principales Editor haz todo en una sola ventana. Escenas Agrega a un elemento la cantidad de escenas que quieras (multiples escenas son cargadas de manera Aditiva). Selecciona la escena activa que tu quieras. Listas reordenables reordena rapidamente los elementos de tu juego. Opciones del cursor por elemento Fade In/Out Usa y configura fade in/out de tipo individual (por elemento, override) o global (común para todos los elementos). Duración Puedes asignar una dada duración al elemento, esto es útil para crear "splash screens" (típica pantalla introductoria). Audio Selecciona un clip de audio y reproducelo, el volumen se verá afectado por el "alpha" del fade In/Out. Canvas de "Loading Screen" Usa to propio canvas UI para crear la pantalla de carga. Overseer soporta Animation (componente Legacy, de 0 a track length), fillAmount (componente Image) y texto (Por ej "Loading 68%") con formato personalizable. Créditos Importa tu archivo txt (con la información de los créditos) y conviértelo en un texto de Unity (componente Text). ■ Imágenes/Videos: Escenas de la Demo (muy simplona): Si quieren hacer preguntas háganlas (sea de soporte o dudas). Saludos
  2. Llevo bastantes días estrujándome el cocotero y no se me ocurre cómo sacarlo, así que os lo explico por aquí todo, en busca de opiniones: -Estoy creando una Clase genérica de myTimer, para crear y actualizar cualquier tipo posible de contador/Timer en un juego, independiente del género que sea. Es decir, trato de crear un contenedor que permita crear en tu escena o en tu juego, un contador. Para hacerlo todavía más genérico, he decidido catalogarlos de la siguiente forma: Interminable. El contador empieza desde cero, y sólo se pausa cuando se para el juego, continuando en cada sesión. Llevas jugadas 500 horas...Reloj. El contador empieza en 0, y cuando llega a cierto valor, se resetea y comienza de nuevo, y así indefinidamente. Cada 500 seg, aparecerá un enemigo.Alerta. El tipo de contador más conocido; cuando el contador llegue a cierto valor, se dispara el evento. No podrás volver a disparar hasta que pasen 10 segs.CuentaAtrás. Simple variación de la Alerta, pero en la que la cuenta va hacia atrás, y siempre se para en 0. La bomba estallará en 30 segs! Con ésto y unas pocas propiedades más, ya tengo mi clase. Lo ideal es tener acceso al estado actual de cada contador, para presentar la clásica barra de progreso,etc, y recibir y mandar eventos conforme ese contador ha terminado y debe ser destruído, pausado, o lo que sea... Ahora le toca el turno al Manager, que simplemente es un Script Monobehaviour, que guardará una lista global de objetos de tipo myTimer. Por tanto, he querido separarlo todo en 2 scripts: Clase normal myTimer, que debe crear, alojar y gestionar un objeto de tipo myTimer, o sea un contador. No quiero que herede de Monobehaviour.Script TimersManager, de tipo Monobehaviour, que mantiene una lista de objetos myTimer. El objetivo principal del Manager es gestionar globalmente la LISTA de contadores y recibir notificaciones de cada objeto. Por lo tanto, lo correcto sería dejar que la propia Clase sea la que gestione el estado del contador, tras ser creado. Eso es ser eficiente. Y aquí es dónde aparece el problema. Quiero que sea la propia Clase la que actualice el objeto. Pero ocurre lo siguiente: InvokeRepeating NO es eficiente (pica mucha CPU) y es una función que requiere estar heredando de MonoBehavior. Time.deltaTime + valor--, no es ni eficiente ni fiable, pero podría funcionar y me daría control sobre cómo va pasando ese tiempo. Pero puede provocar errores.StartCoroutine + IEnumerator sí son eficientes, pero también requieren heredar de MonoBehavior, y sólo devuelven cuando acaban. Por tanto, no puedo usarlos en la Clase.System.Timer.CreateTimer() es lo más eficiente según C#, pero también depende de MonoBehaviour, y además genera errores de API en Unity. Así es cómo estoy, con la duda constante de por cuál de estos métodos me decido y, por lo tanto, qué cambios hago en la clase y en el Manager para adaptarlos. Imaginad un metroidvania o un Ogame o CookieClicker en el que tengo que estar gestionando tranquilamente 200 contadores. La decisión no es nada fácil... ¿Algún consejo de qué hacer?
  3. No se por que, pero no me spawnea el gamePlayerPrefab seteado en el NetworkLobbyManager.
×
×
  • Create New...