Ok now to push in?
Yes.
Cool - congratulations :)
- Clemens
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
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
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
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
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
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
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.
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:
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
. 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
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
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
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
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
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
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,
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
101 - 135 of 135 matches
Mail list logo