r3wp [groups: 83 posts: 189283]
  • Home
  • Script library
  • AltME Archive
  • Mailing list
  • Articles Index
  • Site search
 

World: r3wp

[!REBOL3 Extensions] REBOL 3 Extensions discussions

Maxim
26-Aug-2009
[27x2]
hosted or stand-alone.  with Binary code being controled by the high-level 
master... REBOL
i'd like to target QNX as the kernel but their gfx hardware support 
isn't too good... so its probably going to a linux kernel... but 
without anything else than the HW driver and most basic kernel stuff.
Geomol
26-Aug-2009
[29]
I've got impression, that OGL is slowly dying, and feature lacking, 
in comparison to DirectX?


I don't see that. All *NIXs use OpenGL. OS X GUI is based on OpenGL. 
Playstation 3 use OpenGL (PS1 and PS2 used a proprietary Sony API).

From http://www.opengl.org/

The Khronos(TM) Group, today announced OpenGL(R) 3.2, the third major 
update in twelve months to the most widely adopted 2D and 3D graphics 
API (application programming interface) for personal computers and 
workstations.

It seems, OpenGL is growing.
Pekr
26-Aug-2009
[30]
Maybe I live way too much in Windows world, which is expecting super 
duper DX11 to come to HW near you :-)
Maxim
26-Aug-2009
[31x2]
yess which only a minority of HW in the world support...  since its 
blocked via VISTA.
which basically sucks.
Geomol
26-Aug-2009
[33]
Maxim wrote: "gfx will be a little different pixel wise"


Do you mean, 2D graphics will look at bit different, if using OpenGL?
Pekr
26-Aug-2009
[34]
Geomol - Cyphre told me, that you could map parts of AGG to HW acceleration, 
but then it can look differently on each gfx card/driver ..
Maxim
26-Aug-2009
[35]
anyhow... OGL is the most widely used 3D library in the world... 
all scientific, professional gfx, multi-platform games, and more 
use OGL... and as John says, all 3d not on windows is OGL.
Pekr
26-Aug-2009
[36]
I don't know details of course - we would have to ask Cyphre ...
Maxim
26-Aug-2009
[37]
yes... 2D graphics will look different, depending on the graphics 
themselves.
Geomol
26-Aug-2009
[38]
If you turn any HW filtering off, graphics should look 100% the same, 
as I understand it.
Maxim
26-Aug-2009
[39]
all cards have different pipelines which calculate specific arythmetic 
in different order and with various optimisations.  texture mapping 
algorithms are different, and even the anti-aliasing is done differently 
from one card to another... unless you go with very basic settings 
which are equal on all cards.
Geomol
26-Aug-2009
[40]
But if you use HW to do anti-aliasing and filtering, things can look 
differently.
Maxim
26-Aug-2009
[41]
the coordinate systems don't have the same precision on all cards.
Pekr
26-Aug-2009
[42]
very basic settings
 = better use SW rendering? :-)
Maxim
26-Aug-2009
[43x3]
AFAIK 2D on openGL is just the fact of using a flat camera (orthogonal 
perspective) with a camera looking straight down.
what can happen is that between polygons, some edges will have seams 
on some cards and be very clean on other better cards
in an application I use, there is an artifact where the perspective 
of the camera offsets coordinates in the y of *some* polygons  .... 
very strange bug...
Geomol
26-Aug-2009
[46]
When using a Mac, you look at an OpenGL output. If you use the zoom 
function, there is a key combination to put anti-alias on/off. If 
it's off, you see the correct pixels, as there is in the drawing 
(bitmap). But you're right, if you put in anti-aliasing and other 
effects, it can look different on different hardware.
Pekr
26-Aug-2009
[47x2]
that sucks, no? :-) I thought that  standard is standard :-)
They should submit it to W3C :-)
Maxim
26-Aug-2009
[49]
very basic settings

  means no fancy shader stuff and simple texture use... like geomol 
  says, no filtering, no AA... but that also means blistering fast 
  gfx.
Pekr
26-Aug-2009
[50]
Who cares of blistering fast GFX apart from games, when you can't 
have the same anti-aliased font output on your form? :-)
Maxim
26-Aug-2009
[51x2]
some details like the coordinate precision and various occlusion 
optimisations, being done differently can affect the output... like 
if you superimpose two polygons with the exact coordinates... some 
cards will remove one of the polys... others (most) will cause pixels 
to shift from one poly to the other everytime you refresh... causing 
a very annoying shimering.
well, noting that all OGL antialising is about 2000 times prettier 
than AGG's  I don't mind  ;-)
Geomol
26-Aug-2009
[53]
It is? :-) I thought, AGG did a pretty good job.
Maxim
26-Aug-2009
[54]
but you won't be able to notice the difference in things like form.
Geomol
26-Aug-2009
[55]
http://www.antigrain.com/screenshots/compare_to_xara.gif
Maxim
26-Aug-2009
[56x2]
I've never seen a single font which didn't have at least a single 
letter which was grossely mis-AAed.  often its the s, the o, or the 
e..... they stick out in every word and its annoying.
it depends on the aa filter & sizeyou decide to chose.
Henrik
26-Aug-2009
[58]
Poor looking fonts in R3 are because the AA settings used in R3 are 
not correct. This requires intervention by Cyphre as those settings 
are not exposed in DRAW yet.
Geomol
26-Aug-2009
[59]
I took the image from: http://www.antigrain.com/screenshots/index.html
Maxim
26-Aug-2009
[60x2]
graphics are effectively very clean.
thin fonts really look bad in R2.
Pekr
26-Aug-2009
[62]
Anyway - good times ahead, once Host code is released ... the question 
is - when it is going to happen :-)
Maxim
26-Aug-2009
[63]
in any case, when you build a GUI with OGL, you build in such a way 
that everything scales, cause its sooo easy to do... its in fact 
free... like AGG.  so the fact that a GUI isn't exactly pixel perfect 
is secondary... since often you don't even have the same fonts on 
various OSes  ;-)
Oldes
26-Aug-2009
[64x4]
I prefere GUI to be pixel perfect.
That's also the reason why I'm not a fun of scalable GUIs.
And because "you don't even have the same fonts on various OSes", 
I like that in Flash you can embed own font glyphs.
And as Pekr mentioned Flash HW acceleration - it really sucks. In 
most cases you have to turn it off because it slows things down. 
You must design the app to be fine with HW, but nobody knows how. 
At least nobody is able to answer my questions on Adobe forums (and 
OSFlash as well).
Maxim
26-Aug-2009
[68x3]
true type and the ttf lib are pretty much on all OS nowadays... its 
just a question of having the right to distribute a font with your 
apps... which in theory is the same issue with flash I would guess.
on all
 should read "compiled for"
there is a big difference in how flash and AGG render their stuff.... 
it seems to me that AGG is actually more scalable in sheer quantity 
of strokes, whereas flash seems to be much better at handling textures 
and bigger screens... have you noticed the same reactions... having 
much more in depth knowledge of flash, I'm curious as to your observations....
Oldes
26-Aug-2009
[71]
The problem with TTF is, that in most cases the fonts are copyrighted, 
so zou cannot give them with the app. You can embed glyphs you need 
into Flash, but the the font is not TTF anymore so nobody can use 
it in other apps.
Maxim
26-Aug-2009
[72]
ah yess I see the nuance.  so font authors are wary of allowing re-distributable 
licenses?
Oldes
26-Aug-2009
[73]
I don't know AGG well so I'am not able to compare these. AGG can 
use same rasterization as Flash (which is more optimized for speed 
I guess). At least that's what Cyphre told me.
Pekr
26-Aug-2009
[74]
Cyphre has thought that we might switch to "compound rasterizer" 
of AGG, which would be more similar to Flash. But we might be slightly 
off-topic here :-)
Maxim
26-Aug-2009
[75x2]
I wish all those decisions where available to the programmers... 
often I have been bitten by these decisions in REBOL...  I plan to 
allow as much control to the Low-level stuff as possible with my 
OGL extension, even with the toolsets I'll build using it, I still 
want to allow the capacity to edit quality & quantity based-decisions, 
probably by providing a standard gfx setup requestor available to 
all applications of rogle.
this way developpers won't have to build their own, its going to 
be built-in and not require a "restart" of the application.