Re: [OpenJDK 2D-Dev] [PATCH] FontManager refactoring, rev7

2009-08-07 Thread Clemens Eisserer
Ok now to push in? Yes. Cool - congratulations :) - Clemens

Re: [OpenJDK 2D-Dev] Review Reqeust for Bug 100068 - SunGraphics2D exposes a reference to itself while non fully initialised

2009-06-23 Thread Clemens Eisserer
Hi, - Accessors can be inlined if they are final, but these aren't.  As it turns out, SG2D itself is final and so I believe that is enough for them to be inlined, but I tend to make methods final as well to underscore that they are intended to be inlined, and also in case we eventually decide

[OpenJDK 2D-Dev] Question about RectangularShape.getBounds() behaviour

2009-05-22 Thread Clemens Eisserer
Hi, I just noticed new Rectangle2D.Double(-19.9, 1, 20, 1).getBounds(); returns java.awt.Rectangle[x=-20,y=1,width=21,height=1] Is this behaviour intended? Wouldn't -20 / 20 be large enough? Thanks, Clemens

[OpenJDK 2D-Dev] Understanding PiscesCache

2009-05-09 Thread Clemens Eisserer
Hi, I had a quick look at pisces to search for areas where I could work a bit on performance. 1. ) I came across the fast-path in Renderer._endRendering() for filling single rectangles, however I've a hard time understanding how PiscesCache works. I thought I could simply add the rectangle

[OpenJDK 2D-Dev] Howto know a glyph is lcd or grayscale?

2009-04-28 Thread Clemens Eisserer
Hi, Existing pipelines seem to use a rowBytes==width check to decide wether a glyph is lcd or grayscale. I ran into problems with that approach when image==NULL, like for the space-glyph - putting it into the wrong cache. Is there any other way to determine if a glyph is lcd, or a GlyphList

Re: [OpenJDK 2D-Dev] Freetype on linux

2009-02-23 Thread Clemens Eisserer
Hi, Which version of the Sun JRE uses Freetype on Linux, I'm aware that on Windows, with a recent JRE, Cleartype is being used. As far as I know, no version of Sun JRE (the official version) does use Freetype, but OpenJDK does. - Clemens

Re: [OpenJDK 2D-Dev] XOR rendering slow with D3D enabled [6635462]

2009-01-15 Thread Clemens Eisserer
It hasn't. The default mode is not outline AFAIK. So if you enabled outline, it's all your fault! I disagree here, Swing does provide the outline mode as a public API, it worked great in the past and now its broken. Its not deprecated, not even mentioned in the documentation that it should

[OpenJDK 2D-Dev] Disabling offscreen pixmaps by default?

2008-11-26 Thread Clemens Eisserer
Hi, Would it be possible to disable offscreen pixmaps by default when running the X11 pipeline and when the xserver is running locally and does not support SHMPIxmaps? EXA based drivers (radeon/intel/nouveau) in general place pixmaps in VRAM which kills performance and don't support SHMPixmaps.

[OpenJDK 2D-Dev] Question about Bug ID: 6729351

2008-11-18 Thread Clemens Eisserer
Hi, Some months ago I filed a bug that filling small RoundRectangle2Ds sometimes does not give round corners: http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6729351 For example: RoundRectangle2D.Float rect = new RoundRectangle2D.Float(10, 10, 20, 20, 5, 5); g2d.fill(rect); Gives:

[OpenJDK 2D-Dev] drawPolyline performance

2008-10-29 Thread Clemens Eisserer
Hi Viet, I have a performance issue with drawPolyline whenever I try to use it on an array of 600K+ points. Typically with the default stroke I have very good performance, 16ms for 600K+ points. However when I tried to draw a thicker line, by setting graphics2d with a new BasicStroke, the

[OpenJDK 2D-Dev] Where/Why are X11 errors caught?

2008-08-14 Thread Clemens Eisserer
Hello, When working on the XRender pipeline I always wondered why X11 errors did not abort java. Eg. for small test programs written in C the application aborts when a BadMatch error occurs, with the X11 pipeline I don't even see the error - it just does not work. Is there any way to get the

[OpenJDK 2D-Dev] Fwd: FINAL PROJECT : Implement XRender pipeline for Java2D

2008-08-06 Thread Clemens Eisserer
Hello, Sorry, I only sent my completition-email to challenge-discuss, here it is: Its quite minimalistic ;) --- This is the FINAL PROJECT email for the openjdk xrender project. * The

Re: [OpenJDK 2D-Dev] Linking problems in Solaris :-/

2008-08-03 Thread Clemens Eisserer
Hi Dmitri, as I mentioned in my other email, I see that for X11 text renderer the AWTDrawGlyphList (used in X11TextRenderer.c) is added to make/awt/mapfile-* and make/xawt/mapfile*, but your XRT_DrawGlyphList is only in xawt, may be that's the problem? I added XRT_DrawGlyphList too

Re: [OpenJDK 2D-Dev] Linking problems in Solaris :-/

2008-08-02 Thread Clemens Eisserer
Hello, Thanks for your suggestions, I attached the failing link command at the end. Did you include the mapfile in make/sun/headless ? I think that's the one that's used at compile/build time. Yes, I'd added it to headless too :-/ Thanks for you help, lg Clemens Rebuilding

[OpenJDK 2D-Dev] [OGL] validatePipe and antialiasing

2008-07-25 Thread Clemens Eisserer
Hello, I am currently trying to rewrite validatePipe using OGLSurfaceData.validatePipe() as template, however I am a bit confused about what happens in the antialiased case, e.g. gradient as paint with antialiasing. E.g. in my case I would like to fallback if the a RadialGradient with

Re: [OpenJDK 2D-Dev] [OGL] validatePipe and antialiasing

2008-07-25 Thread Clemens Eisserer
Hi Chris, The antialiased case is handled in super.validatePipe() (in the SurfaceData base class), which in turn calls getMaskFill(). We override getMaskFill() in OGLSurfaceData so that it calls OGLPaints.isValid() to determine whether the given paint can be accelerated in the antialiased

[OpenJDK 2D-Dev] Initial code drop in xrender-repository

2008-07-25 Thread Clemens Eisserer
Hello, There is now an early version of the xrender pipeline in its repository, the first changeset is located here: http://hg.openjdk.java.net/xrender/xrender/jdk/rev/6d294fa2bd42 Thanks a lot to Dmitri for beeing that helpful, friendly and patient. There are still many things to be done, but

Re: [OpenJDK 2D-Dev] Reporitory, Accalerating blits with EA

2008-07-22 Thread Clemens Eisserer
One thing that might explain the difference is whether or not the opaque destinations are considered premultiplied or not. I believe that we consider them non-premultiplied in which case the extraalpha is multiplied in, the result is stored to the destination, which involves dividing the

[OpenJDK 2D-Dev] xrender-pipeline prototype/hack uploaded

2008-07-21 Thread Clemens Eisserer
Hello, This week I plan to start with a clean rewrite of the xrender-pipeline, to factor out the X11 and XRender specific parts from the common code base as far as possible and do things the right way. The current release is just a prototype/hack where I broke the existing source, many things

Re: [OpenJDK 2D-Dev] Reporitory, Accalerating blits with EA

2008-07-16 Thread Clemens Eisserer
Hi Chris, I'm not sure the process you need to follow to get commit access to it (maybe you could ask Mark Reinhold about that on a separate alias, like the discuss alias?). Thanks for the hint, Mark sent me the registration invitation. Do you know which Blit loop is being called in its

[OpenJDK 2D-Dev] Reporitory, Accalerating blits with EA

2008-07-15 Thread Clemens Eisserer
Hi again, - The Xrender-pipeline now is almost able to run common swing applications, copyArea and some bugs are still waiting to be killed, but more or less it should work after. Its only the hack release where I tried all the stuff out and I plan to rewrite it starting next week or so, but it

Re: [OpenJDK 2D-Dev] Problems with lcd-antialiased glyphs

2008-06-12 Thread Clemens Eisserer
Hi Phil, Verify your ARGB values that are uploaded are what you expect and in the correct order required. If they are then maybe its something in the xrender usage. Thanks a lot for looking into this, you were right of course and the values were in wrong order. It seems to be BGRA, however the

Re: [OpenJDK 2D-Dev] Question about AccelGlyphCache_AddGlyph

2008-06-09 Thread Clemens Eisserer
Sorry again, already found where it is set to null :-/ lg Clemens 2008/6/9 Clemens Eisserer [EMAIL PROTECTED]: Hello, 1. In AccelGlyphCache_AddGlyph the cache simply nulls the cellInfo-field, if the glyphinfo is removed from cache: // if the cell is occupied, notify the base glyph

[OpenJDK 2D-Dev] Rotation per-pixel accuracy

2008-06-05 Thread Clemens Eisserer
Hi, The last two days I worked on text-rendering, and although major parts are missing (caching, optimizations, ...), it works already for no-AA and grayscale-AA'ed glyphs (I will look at subpixel-rgb later, frightens me somehow ;) ). I was able to solve the problem with the corrupted

Re: [OpenJDK 2D-Dev] Why does the OpenGL pipeline not use setupBlitVector?

2008-06-05 Thread Clemens Eisserer
Hi Jim, This is often a problem that can happen if you don't have a prototype for the function. The default passing semantics for floating point is to pass them as doubles unless there is a prototype that says that they are floats. Did you get the prototype correct, and did you make sure it

Re: [OpenJDK 2D-Dev] Rotation per-pixel accuracy

2008-06-05 Thread Clemens Eisserer
Hi again, Are there rules that rendering has to be per-pixel consistent, with what should I compare to see wether my implementation works correct? Sorry about the traffic ... it seems different rounding errors were the cause for the different results, the rotated text was drawn to the BI at the

Re: [OpenJDK 2D-Dev] Why does the OpenGL pipeline not use setupBlitVector?

2008-06-03 Thread Clemens Eisserer
2008/6/3 Clemens Eisserer [EMAIL PROTECTED]: Hi Dmitri, Did you try to run it with -Xcheck:jni (preferably on a fastdebug build)? What does it say? Thanks for the hint, it cleans the array-handle is not valid. I added printf-statements and Hotspot is of course right, the original object

Re: [OpenJDK 2D-Dev] Why does the OpenGL pipeline not use setupBlitVector?

2008-06-02 Thread Clemens Eisserer
. And it's this difference that gives the result you want, (the appearance of uniform line-width in the final result). Thanks for the explanation. 2008/6/2 Carl Worth [EMAIL PROTECTED]: On Mon, 2 Jun 2008 22:36:46 +0200, Clemens Eisserer wrote: 2.) Currently I've implemented lines the same way as Cairo

Re: [OpenJDK 2D-Dev] How are transformations done and some other questions

2008-05-19 Thread Clemens Eisserer
Hi Jim, Thanks a lot for your reply. I'd wager that trying to deduce the original transform from the parameters at that point in the pipeline would be counter-productive since the destination coordinates represent the product of the coordinates that the user requested and the current

[OpenJDK 2D-Dev] How are transformations done and some other questions

2008-05-16 Thread Clemens Eisserer
Hello, 1.) I am currently investigating how AffineTransformations are done by Java2D, and for the X11 Pipeline it seems for anything but translations the PixelToShapeConverter is called and the general path/fill algorythmns are used. In the case of a simply Line, it is rotated and then sent to

Re: [OpenJDK 2D-Dev] How does antialiasing with the OpenGL pipeline work?

2007-10-04 Thread Clemens Eisserer
Hi, Ok, after looking at the open rasterizer's source I pretty much throw away the idea of implementing it as shader ;) However one thing which still seems interesting to me is to do scanline-rendering via a shader. A simple opcode-protocoll could be uploaded to the texture which is read and

Re: [OpenJDK 2D-Dev] How does antialiasing with the OpenGL pipeline work?

2007-10-01 Thread Clemens Eisserer
Hi Roman, Hey come on! I'd like to know the answer too. Give us a pointer to this bug report! ;-) Of course not ... here it is: http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6529101 ;) Although I don't understand / it does not mention all the details it seems they let produce those

Re: [OpenJDK 2D-Dev] How does antialiasing with the OpenGL pipeline work?

2007-10-01 Thread Clemens Eisserer
class in the same package... ...jim Clemens Eisserer wrote: Hi Roman, Hey come on! I'd like to know the answer too. Give us a pointer to this bug report! ;-) Of course not ... here it is: http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6529101 ;) Although

Re: [OpenJDK 2D-Dev] 6603887: Where are transparent areas filled with bgColor?

2007-09-28 Thread Clemens Eisserer
Hi Dimitri, I'm having issues with reproducing the bug with this or the original test. I've tried on solaris and linux, it works fine in both cases on all jdks I've tried. Weird. What is your desktop bit depth? I've tried on 24bit systems. My display also has 24bit depth,

Re: [OpenJDK 2D-Dev] 6603887: Where are transparent areas filled with bgColor?

2007-09-28 Thread Clemens Eisserer
Hi Jim, Perhaps the difference is that Dmitri is running on a display with Xbgr which has to decompose the argb value and recompose it into a BGR value - in the process it only moves the r, g, and b bits around. Clemens is running on an Xrgb screen and so the pixelconverter just passes on

<    1   2