Sub-Pixel Rendering on CRTs?
rst2003 asks: "Is it possible (in theory) to do sub-pixel rendering (e.g. cleartype) on a CRT monitor using a triangular dot matrix instead of a 1x3-aspect rectangular one? If so, has it been done? I'm fairly sure it's not been done by Microsoft or Adobe, but is it available on X?"
Is it like super-sampling, where the OS and Video card generate 4 times the information and then downsample and anti-alias?
Basically, but when pixels have (known, ordered) components to them such as in color LCD displays - red, green, and blue chunks - you can go farther and treat those three chunks as having separate positions instead of pretending the pixel is a single solid chunk. Thus instead of ooo in the middle of a diagonal line you can have .oO where . is red, o is green, and O is blue.
Why couldn't monitors come with enough RAM to store 2 frames at the highest resolution at 32 bpp? At 1600x1200, that'd be 7.5 MB. 8MB of RAM coupled with a processor that runs fast enough to blend pixels for and 85Hz refresh rate.
That could be done, sure, but... why? You could put the same ability in the graphics card/chip, and avoid sending 4x redundant data to the monitor. And, you wouldn't have to buy a new monitor to get there - monitors are much more expensive than graphics cards in general
Make monitors like printers.
This is a much more interesting idea, the device-independent sound of it intrigues me... but basically you're integrating the graphics card into the monitor. Now, if you want the latest 3d bump-texture-particle gizmo feature, you have to buy a new monitor instead of just a new video card.
But I'm off topic.
Hey, this is slashdot! If you don't have a goatse.cx link, you're about as on-topic as they come here.
Chu vi parolas Vikipedion?
I'm surprised nobody said this sooner.
An LCD has distinctly addressable colours within each pixel. There is a red, a green and a blue. Each pixel (unless under screen-expansion or something else stupid) uses one and only one red, one and only one green, one and only one blue. The geometry of these is clearly defined and immutable.
A CRT on the other hand depends on the angle at which each electron beam penetrates the shadow mask. The position is not clearly defined (just adjust the width or height of your image and tell me otherwise). Each pixel is comprised of multiple phosphors. The shape of the electron beam defines the shape of the pixel. That shape is not very complex either.
If you see a bennefit from subpixel rendering on a CRT it is probably the colourful antialiasing you are noticing more than anything else. Although straight antialiasing would work better.
There is no super-precise alignment of individual phosphors to the electron gun.
Every phosphor triad corresponds to a single opening (through which the 3 electron beams pass at different angles at a given instant in time) in the shadow mask. How much more well-defined than that can you get?
I see even classic Slashdot is now pretty much unusable on dial up anymore.
But the long answer is maybe, but for all intents and purposes, it's not feasible.
:(
Check out the white papers on ClearType filtering. (Some nice pictures/samples, too) It's so simple, you'll think, "Why didn't I think of that?"
The real tragedy in this is that we didn't think of this before M$. So, being covered by M$ pattents, it'll probably never make it into any standard distro of X.
To do sub-pixel (cleartype) rendering, you need some way of addressing the subpixels in your monitor. LCD panels have a nice, well-defined "sub-pixel RGB" location. This is not really true in CRTs using Trinitron or Invar Shadow mask technology. (Almost every single monitor you'll use) Try taking a magnifying glass to your monitor, and look at the "RGB" dots. They're not really well-defined, like an LCD is.
Sony has some special technology for their monitors that uses an Octahedral "sub-pixel". You *might* be able to get some sort of sub-pixel rendering going on that, but it would be far more complex than an LCD panel, and probably be yield less pleasant results. But, having never examined a Sony monitor to that degree, I can't tell you if it's possible or not.
--
--
#include <malloc.h>
free(your.mind);
I'm not sure about it being done 26 years ago, but I do remember doing this on the Apple
Basically, by setting the colour of the pixel you were plotting, you could move it by a third of a column's width on the screen.
Of course with CRTs of the day and with Apple's hi-res graphics mode, this looked hideous unless you turned the colour all the way down. Text and lines looked smoother, but had freakish colour halos around them. In monochrome, though, it was pretty good. Fast too, if done in assembly (vs. basic!)
Sigh. Enough reminiscing for today...
It's only software!
is explained, in depth, at Gibson Research If you don't get through to this site, its not becaused they are slashdotted, but because someone is inflicting a DDoS on them (which has the same impact, though). For this reason, I can't give you the complete address, but its just a from mouseclicks away (as soon as the attack stops). Yes, it may be amazing, but (to some extend) sub-pixel rendering improves quality on a CRT, too! If you don't believe me (and even if you do), check out that small programm that is offered on the web-page above. But notice why it works: it does so because antialiasing and sub-pixel rendering is similiar. And contrary to some believes Microsoft didn't invent subpixel rendering! Instead, this technique was used on Apple computers 26 years ago (this has been a topic on /. AFAIR).
You found a sword: +4 damage, +5 moderator points