Показать сообщение отдельно
Старый 30.12.2014, 14:40   #22
MOrtAl44444
Нуждающийся
 
Аватар для MOrtAl44444
 
Регистрация: 28.12.2010
Сообщений: 55
Написано одно полезное сообщение
Ответ: Наложение нескольких текстур на загружаемый Mesh

Мож кто знает более совершенную формулу расположения травы( и не только травы) по вертексам Меша ?

У меня так:
Function LoadGrass()
grass_terr xLoadMesh("grass.3ds")  
xEntityFX grass_terr16 Or 1
xScaleEntity grass_terr
500400500

surf_terr1 
xGetSurface(terr10)
For 
j=-10 To 10 Step 1
    
For i=-10 To 10 Step 1
    
    grass_brush_rnd 
Rnd(0,1)
    If 
grass_brush_rnd 
           xEntityColor grass_terr
9912939
    
Else
           
xEntityColor grass_terr12318038
    
EndIf    

grasst1.grass_terr1 = New grass_terr1    
      grasst1
\grass_t1 xCopyEntity(grass_terr)
        .
xx1
      grasst1
\xx xVertexX(surf_terr1,Rnd(1,1682))*terr_x+xMeshWidth(terr1)
        .
yy1
        
.yy2
      grasst1
\yy xVertexY(surf_terr1,Rnd(1,1682))*terr_y+xMeshHeight(terr1)
        .
zz1
        
.zz2
      grasst1
\zz xVertexZ(surf_terr1,Rnd(1,1682))*terr_z+xMeshDepth(terr1)   
      
      If 
grasst1\xx > -5000 Goto xx1
      
If grasst1\yy 35000 Goto yy1 
      
If grasst1\yy 22000 Goto yy2
      
If grasst1\zz 120000 Goto zz1
      
If grasst1\zz Goto zz2

      xPositionEntity grasst1
\grass_t1grasst1\xxgrasst1\yygrasst1\zz
    Next
Next
End 
Function 
,где terr_x = 200, terr_y = 170, terr_z = 200 - scale значения меша(terr1) ( во-сколько раз увеличен )
Миниатюры
Нажмите на изображение для увеличения
Название: Безымянный.png
Просмотров: 1084
Размер:	1.23 Мб
ID:	21307  Нажмите на изображение для увеличения
Название: Безымянный1.png
Просмотров: 937
Размер:	712.5 Кб
ID:	21308  
(Offline)
 
Ответить с цитированием