[cairo-commit] papers/opengl_freenix04 opengl_freenix04.tex, 1.38, 1.39

David Reveman commit at pdx.freedesktop.org
Sun Apr 4 04:47:22 PDT 2004


Committed by: davidr

Update of /cvs/cairo/papers/opengl_freenix04
In directory pdx:/tmp/cvs-serv2865

Modified Files:
	opengl_freenix04.tex 
Log Message:
fixes

Index: opengl_freenix04.tex
===================================================================
RCS file: /cvs/cairo/papers/opengl_freenix04/opengl_freenix04.tex,v
retrieving revision 1.38
retrieving revision 1.39
diff -C2 -d -r1.38 -r1.39
*** a/opengl_freenix04.tex	3 Apr 2004 17:59:12 -0000	1.38
--- b/opengl_freenix04.tex	4 Apr 2004 11:47:20 -0000	1.39
***************
*** 39,43 ****
    interfaces by making it possible to add more visual effects as well as 
    new usable functionalities. All together it makes the graphical 
!   interface a more hospitable as well as efficient environment for the user.
    
    Even with today's powerful computers these tasks constitute a heavy 
--- 39,43 ----
    interfaces by making it possible to add more visual effects as well as 
    new usable functionalities. All together it makes the graphical 
!   interface a more hospitable, as well as efficient, environment for the user.
    
    Even with today's powerful computers these tasks constitute a heavy 
***************
*** 65,69 ****
    effects for each available product generation. 
    
!   Unfortunately these features demand a lot of computation time from the CPU.
    In the past this has meant a slowdown throughout the entire system as
    well as a significant limitation in the kind of visual effects that could be 
--- 65,69 ----
    effects for each available product generation. 
    
!   Unfortunately, these features demand a lot of computation time from the CPU.
    In the past this has meant a slowdown throughout the entire system as
    well as a significant limitation in the kind of visual effects that could be 
***************
*** 75,83 ****
    own processor to boost performance levels. These processors are specialized 
    for computing graphical transformations, so they achieve better results than 
!   the general-purpose CPU. In addition, they free up the computer's CPU 
    to execute other tasks while the graphics accelerator is handling graphics
    computations.
  
!   Modern window systems have developed 2D-graphics engines which utilize the
    high performance rendering capabilities inherent in today's 3D-graphics
    hardware. In fact, much of the visual effects and advanced graphics that
--- 75,83 ----
    own processor to boost performance levels. These processors are specialized 
    for computing graphical transformations, so they achieve better results than 
!   the general purpose CPU. In addition, they free up the computer's CPU 
    to execute other tasks while the graphics accelerator is handling graphics
    computations.
  
!   Modern window systems have developed 2D-graphics engines, which utilize the
    high performance rendering capabilities inherent in today's 3D-graphics
    hardware. In fact, much of the visual effects and advanced graphics that
***************
*** 89,98 ****
    performance rendering environment.
  
!   Furthermore these ideas have been applied to X to see if they could
    improve hardware acceleration of graphical applications 
    in that context and thereby making way for more advanced graphics. 
  
    The software that is developed in this project will primarily target users 
!   equipped with the latest in modern accelerated graphics hardware.  
  
    \subsection{Traditional X Graphics}
--- 89,98 ----
    performance rendering environment.
  
!   Furthermore, these ideas have been applied to X to see if they could
    improve hardware acceleration of graphical applications 
    in that context and thereby making way for more advanced graphics. 
  
    The software that is developed in this project will primarily target users 
!   equipped with the latest in modern graphics hardware.  
  
    \subsection{Traditional X Graphics}
***************
*** 112,118 ****
    supports are alpha compositing, anti-aliasing, sub-pixel positioning,
    polygon rendering, text rendering and image transformations. The core 
!   of Render is its image compositing model which borrows fundamental notions
    from the Plan 9 window system~\cite{pike:draw}. Render provides a unified
!   rendering operation which supports the Porter-Duff~\cite{porterduff:1984}
    style compositing operators. All pixel manipulations are carried out 
    through this operation. This provides for a simple and consistent model
--- 112,118 ----
    supports are alpha compositing, anti-aliasing, sub-pixel positioning,
    polygon rendering, text rendering and image transformations. The core 
!   of Render is its image compositing model, which borrows fundamental notions
    from the Plan 9 window system~\cite{pike:draw}. Render provides a unified
!   rendering operation, which supports the Porter-Duff~\cite{porterduff:1984}
    style compositing operators. All pixel manipulations are carried out 
    through this operation. This provides for a simple and consistent model
***************
*** 126,134 ****
    own XAA Render hooks in each driver to support it, which results in a
    duplicated effort. Unfortunately not many drivers have much support for
!   XAA Render hooks at this point, which results in inconsistent acceleration
    between different drivers and hardware.
  
    From the benchmarks made in the context of this project the conclusion can 
!   be drawn that the amount of accelerated rendering achieved by Render doesn't 
    seem to be enough for the complex visual effects addressed by this project. 
    See section~\ref{section: Results} Results for documented benchmark tests.
--- 126,134 ----
    own XAA Render hooks in each driver to support it, which results in a
    duplicated effort. Unfortunately not many drivers have much support for
!   XAA Render hooks at this point. This results in inconsistent acceleration
    between different drivers and hardware.
  
    From the benchmarks made in the context of this project the conclusion can 
!   be made that the amount of accelerated rendering achieved by Render doesn't 
    seem to be enough for the complex visual effects addressed by this project. 
    See section~\ref{section: Results} Results for documented benchmark tests.
***************
*** 149,153 ****
    With its PDF~\cite{pdf14}-like 2D graphics API it provides an attractive 
    and powerful vector based drawing environment. 
!   Cairo uses a backend system to realize it's multiple output formats. 
    One thing missing thus far in cairo though, is a backend that efficiently 
    accelerates the rendering process with today's high performance graphics 
--- 149,153 ----
    With its PDF~\cite{pdf14}-like 2D graphics API it provides an attractive 
    and powerful vector based drawing environment. 
!   Cairo uses a backend system to realize its multiple output formats. 
    One thing missing thus far in cairo though, is a backend that efficiently 
    accelerates the rendering process with today's high performance graphics 
***************
*** 167,171 ****
        \small\itshape
        \caption{\small\itshape Different layers involved when an application
!                               uses cairo to render to an OpenGL surface.}
        \label{layers}
      \end{centering}
--- 167,172 ----
        \small\itshape
        \caption{\small\itshape Different layers involved when an application
!                               uses cairo to render graphics to an OpenGL
!                               surface.}
        \label{layers}
      \end{centering}
***************
*** 216,226 ****
  
    The latest generation of graphics hardware allow the application to 
!   replace the conventional per-vertex calculations and per-fragment
!   calculations done in the vertex operations and fragment operations 
!   processing stages shown in figure~\ref{pipe} with application defined
    computations. These computations are defined with assembler-like
    languages that an OpenGL implementation compiles into vertex and
!   fragment programs. The vertex and fragment programs provides an
!   interface for directly accessing hardware and has been proven very
    useful in the development of \libname{}.
  
--- 217,226 ----
  
    The latest generation of graphics hardware allow the application to 
!   replace the conventional vertex operations and fragment operations 
!   processing stages shown in figure~\ref{pipe}, with application defined
    computations. These computations are defined with assembler-like
    languages that an OpenGL implementation compiles into vertex and
!   fragment programs. The vertex and fragment programs provide an
!   interface for directly accessing hardware and have been proven very
    useful in the development of \libname{}.
  
***************
*** 229,233 ****
    Some of the proprietary window systems have created their own  
    graphic engines that can perform hardware accelerated rendering in a similar 
!   manner to the model discussed here. The one that has probably attracted the 
    most attention is Apple's Quartz Extreme~\cite{quartzextreme} compositing 
    engine used in Mac OS X~\cite{macosx}. The user interface in Mac OS X is 
--- 229,233 ----
    Some of the proprietary window systems have created their own  
    graphic engines that can perform hardware accelerated rendering in a similar 
!   manner to the model discussed here. The one, that has probably attracted 
    most attention is Apple's Quartz Extreme~\cite{quartzextreme} compositing 
    engine used in Mac OS X~\cite{macosx}. The user interface in Mac OS X is 
***************
*** 242,247 ****
    \Libname{} isn't the first Open Source graphics library that 
    has been layered on top of OpenGL. e.g. Evas~\cite{evas}; 
!   a hardware accelerated canvas API which is part the Enlightenment
!   Foundation Libraries. \Libname{} is unique regards to these libraries
    by using an immediate rendering model designed for the latest
    hardware extensions. Immediate data is resident in graphics hardware
--- 242,247 ----
    \Libname{} isn't the first Open Source graphics library that 
    has been layered on top of OpenGL. e.g. Evas~\cite{evas}; 
!   a hardware accelerated canvas API, which is part of the Enlightenment
!   Foundation Libraries. \Libname{} is unique compared to these libraries
    by using an immediate rendering model designed for the latest
    hardware extensions. Immediate data is resident in graphics hardware
***************
*** 261,265 ****
      the core of \libname{} through a virtualized backend. Each backend
      needs to provide a table of OpenGL function pointers and few additional
!     functions which will allow for the core to perform its rendering
      operations unaware of the structure of the underlying OpenGL layer.
  
--- 261,265 ----
      the core of \libname{} through a virtualized backend. Each backend
      needs to provide a table of OpenGL function pointers and few additional
!     functions, which will allow for the core to perform its rendering
      operations unaware of the structure of the underlying OpenGL layer.
  





More information about the cairo-commit mailing list