Сообщение от Stimorol
есть функция pxCreateTerrain:
int pxCreateTerrain( int nSize, int bank*, float scale_x, float scale_y, float scale_z)
nSize - amount of segments - Это что? Как его найти не на блитзе?
bank* - bank of height - Это двумерный массив? Или обычный? Какая структура должна быть у этого массива? Как его заполнять?
Помоги пожалуйста а то не получается, все обекты идут сквозь ландшафта.
|
короче смотри))) как я сделал террайн физическим:
terrain=LoadTerrain("55555.bmp")
TerrainDetail terrain,5000,True
ScaleEntity terrain,3,60,3
grass_tex=LoadTexture( "555.bmp" )
detail=LoadTexture( "6666666.jpg" )
EntityTexture terrain,detail,0,1
EntityTexture terrain,grass_tex,0,2
ScaleTexture grass_tex,256,256
ScaleTexture detail, 1,1
создали таррайн пока простой))))
пишем функцию
Function TerrainCreate#(terrain%, sx, sy, sz)
nSize% = TerrainSize (terrain)
bank = CreateBank((nSize)*(nSize)*4)
For z%=1 To nSize-1
For x% = 1 To nSize-1
Y# = TerrainHeight(terrain,x,z)
PokeFloat bank,(z*(nSize)+x)*4,y
Next
Next
body# = pxCreateTerrain(nSize,bank, sx, sy ,sz)
FreeBank(bank)
Return body
End Function
и еще одну строчку
ter# = TerrainCreate#(terrain, 3, 60, 3)
ставим после создания лондшафта
пример:
terrain=LoadTerrain("55555.bmp")
TerrainDetail terrain,5000,True
ScaleEntity terrain,3,60,3
grass_tex=LoadTexture( "555.bmp" )
detail=LoadTexture( "SAND3.jpg" )
EntityTexture terrain,detail,0,1
EntityTexture terrain,grass_tex,0,2
ScaleTexture grass_tex,256,256
ScaleTexture detail, 1,1
ter# = TerrainCreate#(terrain, 3, 60, 3)
все должно не проваливаться! у меня перестали такие глюки))))))