In einen Texturbuffer rendern -möglich?

Übersicht BlitzBasic Blitz3D

Neue Antwort erstellen

x-pressive

Betreff: In einen Texturbuffer rendern -möglich?

BeitragMi, Jan 28, 2004 17:11
Antworten mit Zitat
Benutzer-Profile anzeigen
Weiß jemand, wie ich quasi einen Screenshot meiner 3D-Welt statt mit RenderWorld() in den Backbuffer direkt in einen Texturbuffer rendern kann?

Ich möchte eine Shadowmap erzeugen, das Problem ist aber, das die Shadowmap-Textur größer als die Auflösung des Blitz-Fensters sein kann (z.B. 1024x1024 während das Fenster nur 640x480 groß ist). Wenn ich also den Backbuffer nehme und in die Textur kopiere, landet nur ein Ausschnitt darin, eben nur das, was in dem Fenster dargestellt werden kann.

Welche Methoden verwendet ihr denn, um statische Schatten zu erzeugen?
• BLITZ SHOWCASE:
PARTICLE CANDY • PARTICLE CANDY FOR iPHONE • SPRITE CANDY • DON'T GET ANGRY! 2-3 • CLICK CLACK XL
 

INpac

BeitragMi, Jan 28, 2004 17:34
Antworten mit Zitat
Benutzer-Profile anzeigen
setze den viewport deiner kam auf die gewünschte größe der texture:
cameraviewport fxcam, 0,0,512,512
und dann setze den texturebuffer() und rendere rein:
setbuffer texturebuffer(deine_tex)
renderworld
setbuffer backbuffer()

Suco-X

Betreff: .......

BeitragDo, Jan 29, 2004 3:05
Antworten mit Zitat
Benutzer-Profile anzeigen
CopyRect ist da mein liebling. Schaue dir den befehl mal an, werde mit ihm Glücklich und nicht vergessen die textur in den VRam zu hauen, Sonst wäre das vllt ein wenig zu lahm(Flag 256 bei Load/Create Texture)für den VRam.
bye
Intel Core 2 Quad Q8300, 4× 2500 MHz, 4096 MB DDR2-Ram, GeForce 9600GT 512 MB

x-pressive

BeitragDo, Jan 29, 2004 9:02
Antworten mit Zitat
Benutzer-Profile anzeigen
Aus der Online-Hilfe:

Zitat:
A camera can only render to the backbuffer. If you wish to display 3D graphics on an image or a texture then copy the contents of the backbuffer to the appropriate buffer.


Tja, das heisst dann wohl, das man ein Bild lediglich mit der maximalen Größe des Fensters rendern kann, da der Backbuffer ja immer die Größe des Fensters hat... Sad
• BLITZ SHOWCASE:
PARTICLE CANDY • PARTICLE CANDY FOR iPHONE • SPRITE CANDY • DON'T GET ANGRY! 2-3 • CLICK CLACK XL

x-pressive

BeitragDo, Jan 29, 2004 17:41
Antworten mit Zitat
Benutzer-Profile anzeigen
Okay, ich habe das Prinzip jetzt geändert und rendere nicht mehr in den Backbuffer, sondern in ein Image, und kopiere dessen Inhalt dann in eine Textur. So funzt das Smile
• BLITZ SHOWCASE:
PARTICLE CANDY • PARTICLE CANDY FOR iPHONE • SPRITE CANDY • DON'T GET ANGRY! 2-3 • CLICK CLACK XL

Markus2

BeitragFr, Jan 30, 2004 19:47
Antworten mit Zitat
Benutzer-Profile anzeigen
x-pressive hat Folgendes geschrieben:
... da der Backbuffer ja immer die Größe des Fensters hat... Sad


Darum cameraviewport setzen ...

x-pressive

BeitragFr, Jan 30, 2004 20:35
Antworten mit Zitat
Benutzer-Profile anzeigen
Das hilft aber auch nicht, wenn ich z.B. ein Fenster mit 640x480 habe und den Backbuffer in ein Image oder eine Textur mit 1024x1024 kopieren möchte. Die Größe stimmt einfach nicht. Und nachträgliches Skalieren scheidet aus, da dadurch die Bildqualität sehr schlecht wird.
• BLITZ SHOWCASE:
PARTICLE CANDY • PARTICLE CANDY FOR iPHONE • SPRITE CANDY • DON'T GET ANGRY! 2-3 • CLICK CLACK XL

Markus2

BeitragMo, Feb 02, 2004 19:23
Antworten mit Zitat
Benutzer-Profile anzeigen
Sorry ,war im falschem Film Wink
War bei dem Screensaver preview Fenster was ja ziemlich klein ist .

Neue Antwort erstellen


Übersicht BlitzBasic Blitz3D

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group