Go to the documentation of this file.
14 #ifndef wdxGraphicsBuffer9_H
15 #define wdxGraphicsBuffer9_H
32 const std::string &name,
52 void register_shared_depth_buffer(
GraphicsOutput *graphics_output);
53 void unregister_shared_depth_buffer(
GraphicsOutput *graphics_output);
56 virtual void close_buffer();
57 virtual bool open_buffer();
60 bool save_bitplanes();
61 bool rebuild_bitplanes();
62 void restore_bitplanes();
63 static void process_1_event();
67 IDirect3DSurface9 *_saved_color_buffer;
68 IDirect3DSurface9 *_saved_depth_buffer;
69 D3DSURFACE_DESC _saved_color_desc;
70 D3DSURFACE_DESC _saved_depth_desc;
71 IDirect3DSurface9 *_color_backing_store;
72 IDirect3DSurface9 *_depth_backing_store;
77 std::list <wdxGraphicsBuffer9 *> _shared_depth_buffer_list;
85 static void init_type() {
86 GraphicsBuffer::init_type();
88 GraphicsBuffer::get_class_type());
91 return get_class_type();
93 virtual TypeHandle force_init_type() {init_type();
return get_class_type();}
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
A container for the various kinds of properties we might ask to have on a graphics frameBuffer before...
An offscreen buffer for rendering into.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
void register_type(TypeHandle &type_handle, const std::string &name)
This inline function is just a convenient way to call TypeRegistry::register_type(),...
A container for the various kinds of properties we might ask to have on a graphics window before we o...
An offscreen render buffer.
This class is the main interface to controlling the render process.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
TypeHandle is the identifier used to differentiate C++ class types.
This is a base class for the various different classes that represent the result of a frame of render...
get_supports_render_texture
Returns true if this particular GraphicsOutput can render directly into a texture,...
virtual void process_events()
Honor any requests recently made via request_open() or request_close().
An object to create GraphicsOutputs that share a particular 3-D API.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
virtual void select_target_tex_page(int page)
Called internally when the window is in render-to-a-texture mode and we are in the process of renderi...
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
virtual void end_frame(FrameMode mode, Thread *current_thread)
This function will be called within the draw thread after rendering is completed for a given frame.
Encapsulates all the communication with a particular instance of a given rendering backend.
virtual void unshare_depth_buffer()
Discontinue sharing the depth buffer.
A thread; that is, a lightweight process.
virtual bool share_depth_buffer(GraphicsOutput *graphics_output)
Will attempt to use the depth buffer of the input graphics_output.
virtual bool begin_frame(FrameMode mode, Thread *current_thread)
This function will be called within the draw thread before beginning rendering for a given frame.
A GraphicsStateGuardian for rendering into DirectX9 contexts.