public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Timothy Miller <miller@techsource.com>
To: Linux Kernel Mailing List <linux-kernel@vger.kernel.org>
Subject: Some discussion points open source friendly graphics [was: HARDWARE: Open-Source-Friendly Graphics Cards -- Viable?]
Date: Mon, 25 Oct 2004 11:54:48 -0400	[thread overview]
Message-ID: <417D21C8.30709@techsource.com> (raw)

I'm still trying to digest all the feedback I've been getting.  It's 
overwhelming and gratifying, and I want to offer my gratitude for all 
the discussion and ideas.

It's been pointed out that some of this discussion may be getting 
off-topic for LKML.  My addition to that is that soon, it will get very 
specialized in graphics math, and it would be best to move to a list 
where people actually talk about this on a regular basis.

To that end, I'd appreciate it people could point me to some other 
appropriate mailing lists.  Not just the names, but URL's to the FAQ's 
which explain exactly how to subscribe, please.

Also, I'm thinking of starting my own yahoo groups list specifically for 
this chip.  Is that a good idea?

Next, I'm getting lots of ideas from people.  Some of them are core to 
the product, and some of them would be nice for follow-on products.  For 
instance, dual-video would not be on the first model released.  However, 
it is important that analog output always have crisp rise and fall times 
and be free of noise in order to maximize display quality.

The reprogramability of the FPGA has many advantages, but 
reprogramability is not its primary purpose.  The primary reason to use 
an FPGA is to minimize NRE for manufacturing.  However, as a result, 
users will be able to download updates.  Additionally, those who are 
dedicated enough to reprogram it completely will find the necessary 
documentation to do so.  Finally, it is my desire that we would release 
the source code to the FPGA for obsoleted products, however, it's too 
early to make promises.


Ok, now on to some design stuff:

The picture I have in my head at this time expands on the idea of the 
setup engine seen in most GPU's.  What I'm thinking is that the setup 
engine will be general-purpose-ish CPU with special vector and matrix 
instructions.  This way, the transformation stage will occur in 
"software" executed by a specialized processor.  Additionally, the 
lighting phase might be done here as well.

The setup engine would produce triangle parameters which are fed to a 
rasterizer which does Gouraud shading and texture-mapping.  That feeds 
pixels into something that handles antialiasing and alpha blending, etc.

The advantages are:

- The community can customize the setup engine as they please, just by 
writing code.
- This also includes the 2D emulation
- Anything "missing" can be emulated.

The disadvantages are:

- Triangle rate limited by speed of processor
- T&L is serialized, rather than being parallelized in dedicated hardware
- Phong shading and bump mapping may be impossible or too slow

It's been a while since I read about phong shading and bump mapping.  As 
I understand it, some of the lighting phase is pushed into the 
rasterizer.  With gouraud shading, colors are interpolated between the 
virtexes.  With phong shading, the surface normals are interpolated 
across the triangle, and that's used to compute lighting.  Bump mapping 
is like phong shading where the normals are specified in a bitmap.

What I don't know is how important bump-mapping and phong shading are.



             reply	other threads:[~2004-10-25 19:50 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-10-25 15:54 Timothy Miller [this message]
2004-10-25 20:31 ` Some discussion points open source friendly graphics karl.vogel
2004-10-25 20:34 ` Some discussion points open source friendly graphics [was: HARDWARE: Open-Source-Friendly Graphics Cards -- Viable?] Jeff Garzik
2004-10-25 22:45   ` Timothy Miller
2004-10-27 18:23     ` Daniel Phillips
2004-10-27 19:04       ` linux-os
2004-10-29 15:48         ` Timothy Miller
2004-10-29 15:46       ` Timothy Miller
2004-10-26 13:09   ` Giuseppe Bilotta
2004-10-26 15:27     ` Timothy Miller
2004-10-26 15:26       ` linux-os
2004-10-26 16:04         ` Timothy Miller
     [not found]           ` <6.1.2.0.1.20041026110017.021ece28@mail.javagear.com>
2004-10-26 19:21             ` Timothy Miller
     [not found] ` <200410251535.27852.rmiller@duskglow.com>
     [not found]   ` <417D80B0.6080007@techsource.com>
     [not found]     ` <200410251734.39703.rmiller@duskglow.com>
2004-10-25 23:06       ` Need help and advice... " Timothy Miller
2004-10-27 18:38 ` Some discussion points open source friendly graphics " Daniel Phillips
2004-10-29 15:47   ` Timothy Miller

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=417D21C8.30709@techsource.com \
    --to=miller@techsource.com \
    --cc=linux-kernel@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox