Jump to content

Search the Community

Showing results for tags 'scenemanager'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • General
    • Proyectos
    • Offtopic
    • Unity Feeds
    • Website
    • Youtube
  • Mesa de ayuda
    • Unity
    • Arte
    • Builds & Dispositivos
    • Otras Especialidades
  • Aportes de la Comunidad
    • Recursos
    • Eventos
  • Bolsa de trabajo & Colaboraciones
    • Ofertas y Demandas

Blogs

There are no results to display.

There are no results to display.


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 2 results

  1. Buenas, escribo este post porque tengo un problema bastante especifico. Estoy realizando una serie de módulos para unity, los cuales corren algunas de sus funciones en el editor, ademas quiero que parte de los cálculos de estos sean realizados usando DOTS. La cuestión es que necesito transformar una serie(lista) de gameobjects a entidades en el editor mode y NO EN RUNTIME, para ello me he hecho eco de la figura de la subscene que es una utilidad bastante nueva (https://github.com/starikcetin/Learning-Unity-ECS-2/tree/master/01 - Converting GameObjects to Entities/Assets/01.D - Sub Scene). Ahora bien manualmente viene bastante bien explicado pero a la hora de hacerlo A TRAVÉS DE CÓDIGO es otro mundo. He estado realizando pruebas y este es un ejemplo de codigo que he conseguido alcanzar, actualmente me peta unity cuando se realiza la instruccion de cerrar escena. Creo que es algun tipo de condicion de carrera pero no estoy muy al tanto del funcionamiento del scenemanager, si podeis echarme un cable, gracias Scene aux = EditorSceneManager.GetActiveScene(); Debug.Log(AssetDatabase.GetAssetPath(Subscene)); Scene aux2 = EditorSceneManager.OpenScene(AssetDatabase.GetAssetPath(Subscene),OpenSceneMode.Additive); EditorSceneManager.SaveScene(aux2); Debug.Log(aux2.name); EditorSceneManager.SetActiveScene(aux2); // GameObject a = new GameObject("SubsceneGameObject"); // Undo.RegisterCreatedObjectUndo(a, "Created SubsceneGameObject"); EditorSceneManager.SaveScene(aux2); SceneManager.SetActiveScene(aux); subsceneGameObject.GetComponent<SubScene>().SceneAsset = Subscene; //if (aux2 != null) //EditorSceneManager.CloseScene(aux2, true); El codigo de arriba se realiza en OnValidate() Ademas se cuenta con estas variables en la clase [SerializeField] SceneAsset Subscene; [SerializeField] List<GameObject> gameObjects; [SerializeField] GameObject subsceneGameObject; Recuerdo que esto simplemente es una prueba de concepto y que no tiene que ver con código con buena sintaxis
  2. Hola, estoy haciendo un Pong para ir familiarizándome con el código poco a poco (y con Unity) Tengo esta variable para poder asignar desde Unity la tecla que quiero que haga el reinicio del juego: public KeyCode reinicio; En el código que le tengo asignado a la bola, dentro de la función void update() tengo una sentencia If para cada jugador que dice qué ocurrirá si éste gana la partida: if (p1score == 3) { winner.text = "PLAYER 1 WIN"; winner.gameObject.SetActive(true); reset.text = "Pulsa 'Space' para comenzar de nuevo"; reset.gameObject.SetActive(true); ResetBall(); //esta función hace que la bola vuelva a su posición inicial después de anotar un punto Y por último, también dentro de la función update he añadido este trozo de código, que en principio debería reiniciar la escena: if (Input.GetKey(reinicio)) { SceneManager.LoadScene("PongMainScene"); Pero al pulsar la barra espaciadora, que es la tecla que tengo asignada, no ocurre absolutamente nada. He probado varias cosas, incluso pensé que era culpa de un Destroy que añadí que hacía que desapareciese la bola, pero tampoco. ¿Alguien sabría decirme dónde puede estar el problema? Gracias de anteman y un saludo.
×
×
  • Create New...