Unity Spain

Post Antiguos => General (Antiguo) => Mensaje iniciado por: Jorge01 en Abril 27, 2017, 05:41:06 PM

Título: FBX a GameObject
Publicado por: Jorge01 en Abril 27, 2017, 05:41:06 PM
Hola,
 
Tengo que importar en Runtime algunos archivos FBX. Estoy intentando crear un GameObject por cada uno, eso no tiene problema, pero no se como adjuntar el FBX. Si lo hago con el editor, nada más tengo que ponerlo en la jerarquía, pero en Runtime no me sale. Alguien echa un cable?
 
Lo agradezco de antemano.
Título: FBX a GameObject
Publicado por: FNP en Julio 03, 2017, 10:51:59 AM
lo tienes que cargar desde la carpeta Asset/Resources con Resources.Load dentro de una variable de tipo GameObject y luego hacer un Instantiate.
 
Algo asi, lo escribo de memoria, asi que puede no ser correcto, pero para que te hagas una idea e investigues:
 



   
       
   
   
      GameObject modelo;
   
   
      modelo = Resources.Load("modelo,fbx") as GameObject;
   
   
      Instantiate modelo;
   
   
       
   

[/quote]
 
 
 
creo que debería funcionar.
 
 
Título: FBX a GameObject
Publicado por: lightbug en Julio 04, 2017, 12:42:43 AM
Cita de: Jorge01 date=1493307666Tengo que importar en Runtime algunos archivos FBX. Estoy intentando crear un GameObject por cada uno, eso no tiene problema, pero no se como adjuntar el FBX. Si lo hago con el editor, nada más tengo que ponerlo en la jerarquía, pero en Runtime no me sale. Alguien echa un cable?
   


Importar un FBX es una funcion del Editor, que no tiene nada que ver con el Engine (para eso existen APIs encargadas de estas cosas, ASSIMP se me ocurre de ejemplo), acordate que no es lo mismo un gameObject con una mesh que un FBX, uno es un formato reconocido por el motor (un Object de Unity) y el otro es un recurso que usa el componente meshFilter, si queres tener cosas predefinidas para usarlas luego en el runtime usas generalmente Prefabs/AudiosClip/Sprites/Textureas,etc. Otro ejemplo son los sprites, Unity reconoce sprites para el runtime, vos los podes cargar con Resources tambien, pero no podes cargar un PNG, lo tenes que previamente importar (Editor). Lo mismo con AudioClip vs mp3/wav, etc,etc.
 
Podes con Resources crearte (no en runtime, no estas haciendo un 3ds max , estas haciendo un juego) varios prefabs o mesh (como quieras) y cargarlas o asignarlas a objetos creados en runtime, eso si lo podes hacer.
Título: FBX a GameObject
Publicado por: Jorge01 en Julio 17, 2017, 03:36:32 PM
Gracias por intentar ayudarme, pero ya lo conseguí y es más fácil que todo eso. Se trata de crear un gameobject y ponerle la imagen como nombre.
 
            CapaNueva = Instantiate (Resources.Load ("imagen") as GameObject;

            CapaNueva.name = "El nombre con el que lo quieras tratar";
 
Dí mil vueltas solo para eso.

 
Título: FBX a GameObject
Publicado por: lightbug en Julio 17, 2017, 04:23:29 PM
Cita de: Jorge01 date=1500298592CapaNueva = Instantiate (Resources.Load ("imagen") as GameObject;

                  CapaNueva.name = "El nombre con el que lo quieras tratar";
   


si eso es lo que querias no es claramente lo que preguntas en el post, fijate lo que pusiste:
 
Cita de: Jorge01 date=1493307666Tengo que importar en Runtime algunos archivos FBX
   


Lo que hiciste es un instantiate comun y corriente, y no se a que te referis con lo del "El nombre con el que lo quieras tratar" , dicho sea de paso nunca jamas debes manejar los objetos que vas a tratar por nombre, sino buscar/asignar la referencia al objeto una sola vez, buscar nombres es ineficiente.