home *** CD-ROM | disk | FTP | other *** search
- Path: informatik.tu-muenchen.de!fischerj
- From: fischerj@informatik.tu-muenchen.de (Juergen "Rally" Fischer)
- Newsgroups: comp.sys.amiga.programmer
- Subject: Re: WritePixelArray vs. ClipBlit vs. ...
- Date: 30 Jan 1996 15:30:16 GMT
- Organization: Technische Universitaet Muenchen, Germany
- Distribution: world
- Message-ID: <4eldi8$5j9@sunsystem5.informatik.tu-muenchen.de>
- References: <oj6ka2yity1.fsf@hpsrk.fc.hp.com> <sqoWx*NA0@mkmk.in-chemnitz.de> <4e9dju$ron@sunsystem5.informatik.tu-muenchen.de> <oj6n379tmab.fsf@hpsrk.fc.hp.com>
- NNTP-Posting-Host: hphalle7g.informatik.tu-muenchen.de
- Originator: fischerj@hphalle7g.informatik.tu-muenchen.de
-
-
- In article <oj6n379tmab.fsf@hpsrk.fc.hp.com>, koren@hpsrk.fc.hp.com (Steve Koren) writes:
- |>
- |> fischerj@Informatik.TU-Muenchen.DE (Juergen "Rally" Fischer) wrote:
- |>
- |> > : > This is annoying. Is there any way to do case D) easier than what I am
- |> > : > thinking?
- |> >
- |> > I do not quite get what you want to do. Looks like your engine renders
- |> > planar on AGA and chunky on gfx-card. This should give 10 times more work
- |> > than adapting the copy routines. I'm really wondering...
- |>
- |> Right now my engine never renders planar (it will run without a graphics
- |> card, but I don't consider systems without graphics cards useful, so I
- |> don't care about optimizing for that case). It renders 24 bit truecolor
- |> for 16 and 24 bit gfx card modes, and it renders 8 bit LUT for 8 bit
- |> register modes. WritePixelArray(cybergraphics.library) and
- |> WritePixelArray8(graphics.library) are used, accordingly. I would
- |> prefer to *always* render 24 bit, but there doesn't seem to be an easy
- |> way to blit a 24 bit bitmap to an 8 bit screen and have the remappinng
- |> work. So, failing that, I do more work in my code to render either 8
- |> bit LUT or 24 bit truecolor graphics depending on the screen I'm going
- |> to be talking to.
- |>
- |> > Also why 24bit mode. you want to play the 8bit chunky game also when
- |> > 24bit is present I guess. Or do you even have a 24bit version of your
- |> > rendering engine.
- |>
- |> Well, it is not a game, it is an application. It would prefer to always
-
- So if you don't do animations where converting to planar cares,
- writepixelarray8(gfx.lib) is sufficient for any 8bit screen on any
- gfx-system (AGA and cards).
-
- |> deal with 24 bit color space. I did briefly consider always rendering
- |> to 24 bit internally, and using ObtainBestPen() on each pixel before
- |> displaying to achieve the truecolor->LUT conversion. However, this is
- |> *terribly* slow on a 68040/25. ObtainBestPen() is no practical for use
-
- mhm I don't know, is obtainpen() one of that workbench-colorsharing
- routines ? Or is the conversion 24bit-> 8 bit done by you ?
- Ever though about using HAM8 ? There is a way on AGA to get Workbench
- into HAM8 mode with just clicking on a (selfmade) prefs-icon BTW.
- Rendering to HAM also needs its time, but at least the result is better.
-
- |> on every pixel in a large image. So instead I obtain some pens up front
- |> and render using them, if I'm on a LUT screen.
- |>
- |> > anyway it's no wonder that updating a 256 color window on a 24bitscreen
- |> > needs some time (colortable lookup...)
- |>
- |> Yes, but it is far slower than I can explain by doing lookups. If it
- |> was just doing one color table lookup per pixel, it should be much
- |> faster (compared to WritePixelArray)) than it is. So I don't understand
- |> why it is so slow now.
-
- ? I thought you explained 24->8. 8->24 is slow seen from games, but
- fast seen from a rendering program.
-
- |>
- |> > : I'm afraid not, except waiting for true RTG. As far as I understood
- |> > : it, RTG would provide automatic format conversion when blitting
- |> > : between any bitmap formats.
- |> >
- |> > huh ? Current functions do this, too. writeparr8, blitbitmap...
- |> > if they don't, imho the gfxcard driver is not ok.
- |>
- |> They do in some cases, but not all. I can blit an 8 bit array of pen
- |> values to a 16 or 24 bit screen (although quite slowly). But I cannot
- |> blit a 24 or 16 bit truecolor array of data to a LUT screen mode. I
- |> believe that's what the poster above means. Some systems do this -
- |> applications can always speak 24 bit, and any necessary remapping is
- |> done at display time.
-
- if you got multiple windows needing different pallete it becomes
- more difficult..
-
- |>
- |> - steve
- ------------------------------------------------------------------------
- fischerj@Informatik.TU-Muenchen.DE (Juergen "Rally" Fischer) =:)
-
-