[B3d] 360°-Screenshots
Übersicht

![]() |
Mr.KeksBetreff: [B3d] 360°-Screenshots |
![]() Antworten mit Zitat ![]() |
---|---|---|
![]() Folgende Funktion erstellt so tolle 360°-Bilder einer Szene. Allerdings hat sie noch eine Menge Macken. Man muss die Kamera danach manuell wieder auf normale Werte setzen. Außerdem werden einige Sonderentities wie Sprites und Planes nicht korrekt dargestellt... Code: [AUSKLAPPEN] Function PanoramaScreenshot(cam,pfad$,steps=1440,extrawidth=800,break=100)
gw = GraphicsWidth() gh = GraphicsHeight() Repeat i = i + 1 If FileType(pfad$+i+".bmp") = 0 screen = CreateImage(steps,gh/2) For x = 0 To steps-1 CameraViewport cam,0,0,extrawidth,gh/2 ScaleEntity cam,Float(extrawidth)/Float(gw),Float(extrawidth)/Float(gh)*1.5,1 RotateEntity cam,0,360.00*x/Float(steps),0,1 RenderWorld CopyRect 0,0,1,Gh/2,x,0,BackBuffer(),ImageBuffer(screen) Next SaveBuffer ImageBuffer(screen),pfad$+i+".bmp" Return 1 EndIf If i >= break Then Return 0 Forever FreeImage screen CameraViewport cam,0,0,Gw-1,gh-1 ; das hier funktioniert noch nicht so wie es soll ^^ ScaleEntity cam,Float(gw),Float(gh)/1.5,1 End Function |
||
MrKeks.net |
![]() |
5k41 |
![]() Antworten mit Zitat ![]() |
---|---|---|
bau doch zumindest noch ein, dass am anfang local x=Entityx(cam) usw. steht und am ende die cam wieder auf x,y,z gesetzt wird... das gleiche sollte man auch mit pitch yaw roll machen...
MfG |
||
Projekte:
For a better World - Gesellschaftsspiel ( 100%) User posted image |
![]() |
Mr.Keks |
![]() Antworten mit Zitat ![]() |
---|---|---|
Gute Idee!
BlitzBasic: [AUSKLAPPEN] Function PanoramaScreenshot(cam,pfad$,steps=1440,extrawidth=800,break=100) |
||
MrKeks.net |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group