Показать сообщение отдельно
Старый 14.01.2013, 00:21   #999
mauNgerS
Разработчик
 
Аватар для mauNgerS
 
Регистрация: 10.10.2008
Сообщений: 501
Написано 258 полезных сообщений
(для 670 пользователей)
Ответ: Вопросы от новичка

Вот такой вод код создаёт новый гамеобжект и помещает в него все меши.

Но все меши помещаются в 0,0,0 как сохранить их положение и размер которые задаются перед соединением?


GameObject map1 GameObject.CreatePrimitive(PrimitiveType.Cube);        
map1.name "map1";        
map1.transform.position = new Vector3(000);
Destroy(map1.GetComponent<Collider>());
MeshRenderer mr1 map1.GetComponent<MeshRenderer>();
mr1.material = (Material)Resources.Load("Model/Materials/wood",typeof(Material));
        
Mesh m1 map1.GetComponent<MeshFilter>().mesh;
m1.Clear();

CombineInstance[] instances = new CombineInstance[i];
i=0;
for (
int x 038x++)
{
    for (
int z 038z++)
    {
        if (
LMap[x,z]<1)
        {
            
x1=x+0.5f;
            
z1=z+0.5f;
            
s1=Random.Range(00.5f);
            
groundPoint GetHeight(ref x1,ref z1);
            
GameObject inst = (GameObject)Instantiate(Resources.Load("Model/wood"typeof(GameObject)));
            
inst.transform.eulerAngles = new Vector3Random.Range(015)-90Random.Range(0360), Random.Range(015));
            
inst.transform.position groundPoint;                
            
inst.transform.localScale += new Vector3(s1Random.Range(00.5f), s1);
            
Mesh me inst.GetComponent<MeshFilter>().mesh;
            
instances[i].mesh me;
            
instances[i].transform Matrix4x4.identity;
            
i=i+1;
        }
    }
}
m1.CombineMeshes(instances); 
__________________
(Offline)
 
Ответить с цитированием