<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>http://debianws.lexgopc.com/wiki143/index.php?action=history&amp;feed=atom&amp;title=Framebuffer_object</id>
	<title>Framebuffer object - Revision history</title>
	<link rel="self" type="application/atom+xml" href="http://debianws.lexgopc.com/wiki143/index.php?action=history&amp;feed=atom&amp;title=Framebuffer_object"/>
	<link rel="alternate" type="text/html" href="http://debianws.lexgopc.com/wiki143/index.php?title=Framebuffer_object&amp;action=history"/>
	<updated>2026-05-01T17:26:48Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.1</generator>
	<entry>
		<id>http://debianws.lexgopc.com/wiki143/index.php?title=Framebuffer_object&amp;diff=3765363&amp;oldid=prev</id>
		<title>imported&gt;InternetArchiveBot: Rescuing 1 sources and tagging 0 as dead.) #IABot (v2.0.9.2</title>
		<link rel="alternate" type="text/html" href="http://debianws.lexgopc.com/wiki143/index.php?title=Framebuffer_object&amp;diff=3765363&amp;oldid=prev"/>
		<updated>2022-11-27T04:18:53Z</updated>

		<summary type="html">&lt;p&gt;Rescuing 1 sources and tagging 0 as dead.) #IABot (v2.0.9.2&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;The &amp;#039;&amp;#039;&amp;#039;frame buffer object&amp;#039;&amp;#039;&amp;#039; architecture (FBO) is an extension to [[OpenGL]] for doing flexible off-screen rendering, including rendering to a [[texture (computer graphics)|texture]]. By capturing images that would normally be drawn to the screen, it can be used to implement a large variety of image filters, and post-processing effects. The FBO is analogous to the &amp;#039;&amp;#039;&amp;#039;render targets model&amp;#039;&amp;#039;&amp;#039; in [[DirectX]]. It is used in OpenGL for its efficiency and ease of use. The use of FBOs doesn&amp;#039;t suffer from the overhead associated with OpenGL drawing context switching, and has largely superseded the [[pbuffer]] and other methods involving context switches.&lt;br /&gt;
&lt;br /&gt;
== Uses ==&lt;br /&gt;
The FBO has two main uses: The post-processing of rendered images and composition between different scenes.&lt;br /&gt;
Some examples are:&lt;br /&gt;
# The rendered image is captured and subjected to [[Fragment Shaders]] or other manipulations. This allows for many of today&amp;#039;s popular computer graphics effects to be carried out, including the addition of a blurring or bloom effect.&lt;br /&gt;
# Can be used to create views of other scenes, for example: a TV in a house showing the view from a secondary camera. A scene can be rendered through an FBO to a texture, then that texture can be applied to the surface of a TV. This is sometimes called &amp;quot;Render to Texture&amp;quot; or RTT.&lt;br /&gt;
&lt;br /&gt;
== Advantages over other methods ==&lt;br /&gt;
Methods involving the FBO are considered superior because:&lt;br /&gt;
* It is easier to set up than most other methods.&lt;br /&gt;
* Does not require context switching.&lt;br /&gt;
* Is more efficient because resources are shared within the same context.&lt;br /&gt;
* Is more flexible because all of [[depth buffer]], [[stencil buffer]], etc. can be acquired.&lt;br /&gt;
&lt;br /&gt;
== Architecture ==&lt;br /&gt;
To use an FBO one simply creates an instance of it. Along with the FBO come several attachments. One can then attach these to a chosen receiver: either a [[Texture (computer graphics)|texture]], or a [[render buffer]].&lt;br /&gt;
&lt;br /&gt;
For example:&lt;br /&gt;
* Create an FBO and bind it.&lt;br /&gt;
* Attach the color buffer (either as a RenderBuffer or a texture) to the FBO.&lt;br /&gt;
* Attach the depth buffer (either as a RenderBuffer or a texture) to the FBO.&lt;br /&gt;
* Bind the native window FrameBuffer (id=0)&lt;br /&gt;
* Render the texture to screen with a pixel shader, dependent on both the Color information and depth information.&lt;br /&gt;
&lt;br /&gt;
== External links ==&lt;br /&gt;
* [http://oss.sgi.com/projects/ogl-sample/registry/EXT/framebuffer_object.txt Framebuffer object technical paper] {{Webarchive|url=https://web.archive.org/web/20130502110335/http://oss.sgi.com/projects/ogl-sample/registry/EXT/framebuffer_object.txt |date=2013-05-02 }}&lt;br /&gt;
* [https://web.archive.org/web/20070108122530/http://openvidia.sourceforge.net/fbo.shtml Framebuffer object reference at openvidia]&lt;br /&gt;
* [http://www.songho.ca/opengl/gl_fbo.html Example code for Windows and Linux]&lt;br /&gt;
* [https://web.archive.org/web/20131101002803/http://www.opengl.org/wiki/GL_EXT_framebuffer_object EXT Framebuffer] (opengl.org)&lt;br /&gt;
&lt;br /&gt;
[[Category:OpenGL]]&lt;/div&gt;</summary>
		<author><name>imported&gt;InternetArchiveBot</name></author>
	</entry>
</feed>