> >Is there any way to do a more intelligent updating of the screen when the
> >colour map is changed?  This particular application is usually only
changing
> >a few rectangles in the screen, so updating the full screen is a huge
amount
> >of overhead.  Is there any easy way to walk through the screen pixels,
> >marking which ones are affected by the colour map change, and generating
> >updates from that?  I'm assuming that changing the windows and Java
clients
> >to support colour maps would be too difficult.
>
> Hmmm.  A color map and 8bit internal version of the screen will be
> required.  You can't just say that "Red turned to White, so change all Red
> pixels to White", because most apps that use palette cycling rely on
having
> multiple indices that all have the same color at some point.  So we need
an
> internal palettized storage and internal palette/colormap.  Under Windows
> this is not hard, and can be done with a DIBSection, which can then be
> blitted to the actual screen and GDI will handle the conversion.  Or at
> least, that's what Microsoft would have you believe.  Somehow it never
> works out that cleanly...  Once you had that internal map, palette cycling
> would be trivial.


Ideally, clients should be capable of handling palettes.  There are various
good reasons for not doing this, though.  Another potential workaround is to
use the fact that both Xvnc and WinVNC keep track of the palettised version
of 8-bit palettised displays.  This means that the display can be scanned
for pixel values which have changed and affected areas can be retransmitted.
Shouldn't be very hard.

Cheers,

James "Wez" Weatherall
--
          "The path to enlightenment is /usr/bin/enlightenment"
Laboratory for Communications Engineering, Cambridge - Tel : 766513
AT&T Labs Cambridge, UK                              - Tel : 343000
---------------------------------------------------------------------
To unsubscribe, send a message with the line: unsubscribe vnc-list
to [EMAIL PROTECTED]
See also: http://www.uk.research.att.com/vnc/intouch.html
---------------------------------------------------------------------

Reply via email to