![]() |
помогите в Разборке кода
Всем привет!
есть такой код:(см ниже) немогу понять как сделать чтобы меш растягивался по GraphicsWidth() и занимал 1\3GraphicsHeight() где ето вообше в коде? [blitz]Global panelcamera3d Global panelpivot3d Global panelentity3d,paneltexture3d Function Init3Dpanel(file$,flags=1+2+16+32,order=-99,x#=10000,y#=10000,z#=1) Clear3Dpanel() panelcamera3d=CreateCamera() PositionEntity panelcamera3d,x,y,z CameraClsMode panelcamera3d,0,1 CameraRange panelcamera3d,1,2 EntityOrder panelcamera3d,order panelpivot3d=CreatePivot(panelcamera3d) PositionEntity panelpivot3d,-1,Float(GraphicsHeight())/GraphicsWidth(),1 ;scale#=2.0/GraphicsWidth() ScaleEntity panelpivot3d,1.0/GraphicsWidth(),-1.0/GraphicsWidth(),1 paneltexture3d=LoadTexture(file$,flags) panelentity3d=CreateMesh(panelpivot3d) EntityFX panelentity3d,1+8 surf=CreateSurface(panelentity3d) w#=Float(TextureWidth(paneltexture3d)) h#=Float(TextureHeight(paneltexture3d)) v=AddVertex(surf,0,0,0 ,0,0) AddVertex(surf,w,0,0 ,1,0) AddVertex(surf,w,h,0 ,1,1) AddVertex(surf,0,h,0 ,0,1) AddTriangle(surf,v,v+1,v+2) AddTriangle(surf,v,v+2,v+3) EntityTexture panelentity3d,paneltexture3d End Function Function Clear3Dpanel() If paneltexture3d<>0 Then FreeTexture paneltexture3d: paneltexture3d=0 If panelentity3d<>0 Then FreeEntity panelentity3d: panelentity3d=0 If panelpivot3d<>0 Then FreeEntity panelpivot3d: panelpivot3d=0 If panelcamera3d<>0 Then FreeEntity panelcamera3d: panelcamera3d=0 End Function Function Draw3Dpanel(x,y,z) PositionEntity panelentity3d,x,y,z[/blitz] пс чтобы проверить работоспособность кода [blitz]Init3DPanel("текстура меша.png")[/blitz] и в мэине: [blitz]Draw3DPanel(X,Y))[/blitz] |
Re: помогите в Разборке кода
Головной пост поправил по заветам Джимона, флуд снёс.
2 Horror : Исходя из специфики ситуации (классические разрешения экрана 4х3, вьюпорт под размер экрана, зуум камеры 1) , достаточной мерой будет следующая: [blitz] ;PositionEntity Cam,0,0,0 ;RotateEntity Cam,0,0,0 Panel3D=CreateSprite() PositionEntity Panel3D,0,0,1 ScaleSprite Panel3D,1,0.25 ;0.25 = 0.33Вьюпорта х СоотношениеСторонВьюпорта0.75 EntityParent Panel3D,Cam [/blitz] Сможешь усложнить код под более широкий диапазон ситуаций? ;) |
Часовой пояс GMT +4, время: 01:43. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot