Me ha sucedido un error extraño: no se colocan adecuadamente los level block, el primero aparece en la derecha inferior de la camara, y l...

Ihared Sefiroth Hernández Arias

Ihared Sefiroth Hernández Arias

Pregunta
studenthace 5 años

Me ha sucedido un error extraño: no se colocan adecuadamente los level block, el primero aparece en la derecha inferior de la camara, y los siguientes a la derecha superior, probe con 20 level blocks y forman una escalera, mis end points y start point tienen la posición correcta y el padre de los level block es 0,0,0. ¿alguien sabe como arreglarlo?

6 respuestas
para escribir tu comentario
    Ihared Sefiroth Hernández Arias

    Ihared Sefiroth Hernández Arias

    studenthace 4 años

    Es gracioso como una letra pude causar caos

    Abdel Mejia

    Abdel Mejia

    studenthace 5 años

    Super :3

    "Has desbloqueado un reto más como Game Developer 🔐"

    Ihared Sefiroth Hernández Arias

    Ihared Sefiroth Hernández Arias

    studenthace 5 años

    Muchas Gracias, por ayudarme o intentarlo Abdel Mejia te lo agradesco mucho, y ya descubri que es:

    Se trataba de la letra x en el codigo de levelManager:

    using System.Collections; using System.Collections.Generic; using UnityEngine; public class LevelManager : MonoBehaviour { public static LevelManager sharedInstance; public List<LevelBlock> allTheLevelBlocks = new List<LevelBlock>(); public List<LevelBlock> currentLevelBlocks = new List<LevelBlock>(); public Transform levelStartPosition; private void Awake() { if (sharedInstance == null) { sharedInstance = this; } } private void Start() { GenerateInitialBlocks(); } public void AddLevelBlock() { int randomIdx = Random.Range(0, allTheLevelBlocks.Count); LevelBlock block; Vector3 spawnPosition = Vector3.zero; if (currentLevelBlocks.Count == 0) { block = Instantiate(allTheLevelBlocks[0]); spawnPosition = levelStartPosition.position; } else { block = Instantiate(allTheLevelBlocks[randomIdx]); spawnPosition = currentLevelBlocks [currentLevelBlocks.Count - 1].exitPoint.position; } block.transform.SetParent(this.transform, false); Vector3 correction = new Vector3( spawnPosition.x - block.startPoint.position.x, spawnPosition.x - block.startPoint.position.y, 0 ); block.transform.position = correction; currentLevelBlocks.Add(block); } public void RemoveLevelBlock() { } public void RemoveAllLevelBlock() { } public void GenerateInitialBlocks() { for (int i = 0; i < 5; i++) { AddLevelBlock(); } } }

    En Vector3 correction

    spawnPosition.>>x<< - block.startPoint.position.y

    Me equivoque en la letra y a lugar de colocar una y coloque una x

    Abdel Mejia

    Abdel Mejia

    studenthace 5 años

    También podrías mostrarlos con la Hierarchy(Jerarquía)?

    Mi teoría es... tienes el GameObject padre en posiciones de 0, pero los elementos internos están variados de alguna manera La otra teoría ya seria de código implementado

    Ihared Sefiroth Hernández Arias

    Ihared Sefiroth Hernández Arias

    studenthace 5 años

    Prueba de 10 bloques:SpaceMan - GameScene - PC, Mac & Linux Standalone - Unity 2020.1.0f1 Personal [PREVIEW PACKAGES IN USE]_ DX11 31_10_2020 02_43_10 p. m..png La camara esta hasta abajo.

    Abdel Mejia

    Abdel Mejia

    studenthace 5 años

    Podrías subir una imagen de lo que sucede exactamente para entender mejor tu problema?

Curso de C# para Videojuegos

Curso de C# para Videojuegos

Domina el lenguaje c# y programa videojuegos increíbles. Logra animaciones con variables y transiciones usando Animator de Unity 2D. Genera engagement y jugabilidad en tus productos creando escenarios procedurales e innovadores.

Curso de C# para Videojuegos
Curso de C# para Videojuegos

Curso de C# para Videojuegos

Domina el lenguaje c# y programa videojuegos increíbles. Logra animaciones con variables y transiciones usando Animator de Unity 2D. Genera engagement y jugabilidad en tus productos creando escenarios procedurales e innovadores.