Alex 26 Report post Posted November 24 Hay alguna manera de detectar un objeto sin necesidad de agregarle un Collider? En mi proyecto constantemente voy a usar objetos y no quiero agregar a cada uno un mesh Collider ya que algunas veces la cantidad de objetos será enorme y no quisiera que la escena se tilde al agregar todos esos collider por código a cada objeto. Tengo un script que selecciona con ayuda de Raycast, pero éste solo funciona si el objeto tiene un collider. Algo referente sucede al usar el editor de Unity, puedes seleccionar cualquier objeto en la escena y estos muchas veces hasta solo contienen un transform y mesh. Share this post Link to post Share on other sites
iRobb 641 Report post Posted November 24 Si utilizas colliders sencillos como un box collider no creo que tengas problemas. De todos modos y ya que lo haces por código, pruébalo. Share this post Link to post Share on other sites
pioj 800 Report post Posted November 24 Por poder, puedes hacerlo por pase de coordenadas, si sabes dónde está cada objeto y lo que mide en pantalla... Share this post Link to post Share on other sites
Alex 26 Report post Posted November 24 Gracias por las respuestas @iRobb y @pioj creo que estaría difícil saber las coordenadas de los objetos, porque estos serán importados por el usuario y no se sabrá con exactitud que objetos son los que importarán. Creo que veo conveniente usar mesh Collider, porque si uso box, los colisionadores sobresaldrán de el mesh original y eso hará que al usar Raycast para seleccionar un objeto, no sea preciso. Entonces, como mencioné anteriormente, los usuarios importarán sus modelos 3d y no se puede saber si éste modelo será de pocos objetos o muchos, en caso de que sean muchos, cada uno tendrá que llevar su Collider para poder ser seleccionado con el Raycast, y como es Collider de tipo mesh puede que cause lentitud en la escena mientras se añaden a los objetos. Como podría hacer que esta carga sea fluida? •Se me acaba de ocurrir que antes de instanciar la escena, podría haber un panel de carga y que en este momento todos los meshcollider sean agregados, así el usuario no verá el lag en su escena, si no un panel. Es una buena idea? O mejor que todo sea hecho mientras el usuario interactúa con la escena? Share this post Link to post Share on other sites
iRobb 641 Report post Posted November 24 Yo entendía que tu problema era por tener tantos mesh con collider, no con la carga previa. Evidentemente cargarlos antes y utilizar colliders simples. Share this post Link to post Share on other sites
Alex 26 Report post Posted November 24 @iRobb inicialmente pensaba en hacer la llamada de importe sea en la misma escena, pero pensando a futuro cuando alguien intente importar un archivo grande, pues sí suena obvio cargarlos antes, de igual forma, sus respuestas me ayudaron a encontrar una solución clara Share this post Link to post Share on other sites
iRobb 641 Report post Posted November 24 Me alegro. A ver cómo te sale Share this post Link to post Share on other sites
zelleGames 38 Report post Posted November 24 Tambien puedes ponerle una misma etiqueta a los objetos y buscarlos por esa etiqueta. Share this post Link to post Share on other sites