aboutsummaryrefslogtreecommitdiff
path: root/nx-X11/extras/Mesa_6.4.1/src/mesa/swrast/NOTES
diff options
context:
space:
mode:
authorftrapero <frantracer@gmail.com>2017-06-15 14:15:08 +0200
committerftrapero <frantracer@gmail.com>2017-06-15 14:15:08 +0200
commit459021c165c7023ee75f524060ca270985b547c1 (patch)
treeed3dfb281a1c00a9cf59ebf9d165e5a7a0f346bf /nx-X11/extras/Mesa_6.4.1/src/mesa/swrast/NOTES
parent4f216e7cf7571885f2995433580c9a3ec068eef4 (diff)
parent8667d4d97a3e958a7f63c18c34a62469ba5d2079 (diff)
downloadnx-libs-459021c165c7023ee75f524060ca270985b547c1.tar.gz
nx-libs-459021c165c7023ee75f524060ca270985b547c1.tar.bz2
nx-libs-459021c165c7023ee75f524060ca270985b547c1.zip
Include mesa-6.4.1 project
Diffstat (limited to 'nx-X11/extras/Mesa_6.4.1/src/mesa/swrast/NOTES')
-rw-r--r--nx-X11/extras/Mesa_6.4.1/src/mesa/swrast/NOTES55
1 files changed, 55 insertions, 0 deletions
diff --git a/nx-X11/extras/Mesa_6.4.1/src/mesa/swrast/NOTES b/nx-X11/extras/Mesa_6.4.1/src/mesa/swrast/NOTES
new file mode 100644
index 000000000..f906e41b9
--- /dev/null
+++ b/nx-X11/extras/Mesa_6.4.1/src/mesa/swrast/NOTES
@@ -0,0 +1,55 @@
+INTRODUCTION
+
+Mesa's native software rasterizer. This module provides the fallback
+paths for rasterization operations and states that aren't accelerated
+in hardware drivers, and as the full rasterization engine in software
+drivers.
+
+The swrast module 'stands alone', relying only on interfaces to core
+mesa and it's own driver interface. It knows nothing about the tnl or
+other modules, allowing it to be used for fallback paths in future tnl
+schemes without modification.
+
+As well as providing triangle/line/point rasterization functionality,
+the module provides implementations of the pixel operations
+(ReadPixels, etc), and texture operations (CopyTexSubImage) which may
+be plugged in to the core Mesa driver interface where accelerated
+versions of these operations are unavailable.
+
+
+STATE
+
+To create and destroy the module:
+
+ GLboolean _swrast_CreateContext( GLcontext *ctx );
+ void _swrast_DestroyContext( GLcontext *ctx );
+
+This module tracks state changes internally and maintains derived
+values based on the current state. For this to work, the driver
+ensure the following funciton is called whenever the state changes and
+the swsetup module is 'awake':
+
+ void _swrast_InvalidateState( GLcontext *ctx, GLuint new_state );
+
+There is no explicit call to put the swrast module to sleep.
+
+
+CUSTOMIZATION
+
+ void (*choose_point)( GLcontext * );
+ void (*choose_line)( GLcontext * );
+ void (*choose_triangle)( GLcontext * );
+
+Drivers may add additional triangle/line/point functions to swrast by
+overriding these functions. It is necessary for the driver to be very
+careful that it doesn't return an inappropriate function, eg a
+rasterization function in feedback mode. See the X11 driver for
+examples.
+
+DRIVER INTERFACE
+
+The swrast device driver provides swrast primarily with span- and
+pixel- level interfaces to a framebuffer, with a few additional hooks
+for locking and setting the read buffer.
+
+See the definition of struct swrast_device_driver in swrast.h. \ No newline at end of file