home *** CD-ROM | disk | FTP | other *** search
- Path: grafix.xs4all.nl!john.hendrikx
- Date: Fri, 02 Feb 96 21:56:06 GMT+1
- Newsgroups: comp.sys.amiga.programmer
- Distribution: world
- Subject: Re: Amiga doesn`t need Planar!
- MIME-Version: 1.0
- Content-Type: text/plain; charset=iso-8859-1
- Content-Transfer-Encoding: 8bit
- From: john.hendrikx@grafix.xs4all.nl (John Hendrikx)
- Message-ID: <john.hendrikx.4b80@grafix.xs4all.nl>
- Organization: Grafix Attack BBS Holland
-
- In a message of 02 Feb 96 Michael Van Elst wrote to All:
-
- >> What if my object-mask looks like %01010101010101?
-
- MVE> Then I'm much faster than chunky because I still hit memory by words.
-
- So can Chunky, using the same 'write-mask' hardware as Planar does. Planar
- needs to read the extra mask though, Chunky can simply interpret color 0 as a
- pixel not to be drawn.
-
- >> What about the amount of memory accesses?
-
- MVE> As I said: memory bandwidth is about the same for objects that are
- MVE> large enough and smaller if you need less bits per pixel.
-
- See below, planar doesn't benefit from larger mem-bandwidth as well as Chunky
- can.
-
- >> Yes, this is pretty simple to implement as well at one extra memory
- >> access per pixel.
-
- MVE> Don't forget that this is a 100% increase.
-
- Not quite, only if the pixel needs to be drawn (assuming a fast CPU/Blitter
- where a test+branch would be fast compared to memory-speed). Also, with a bit
- of smart programming you could ensure that the mask is usually already in the
- cache, ie, by drawing horizontally. But you're right, using multiple layers
- with Chunky is much slower than planar, but atleast you don't lose tons of
- colors like Planar (the price you pay for the speed). It doesn't matter
- though, today's CPU's can do that without sweating.
-
- >> Planar could do it faster, but at a much higher price (it means losing
- >> lots of colors).
-
- MVE> It means to have the same amount of colors. Why should chunky suddenly
- MVE> have more bits ?
-
- Then define what you mean with Multiple layers. For me it is having a cockpit
- + the 3d view on one screen, but in different bitplanes (ie, using dual
- playfield mode). With planar this implies that the cockpit and the 3d view are
- located in seperate planes. So a 8 bitplane display would have 2 views with
- only 16 colors. Chunky, with a bit more CPU effort, would retain 256 colors
- for both cockpit and 3d world. The mask would simply be a map which marks the
- cock-pit graphics as 'masked', so when drawing the 3d view you check the mask
- before plotting each pixel.
-
- >> spectacular effects. In the end it will always be the CPU which delivers
- >> you the newest effects.
-
- MVE> And special hardware can deliver them cheaper. That's an old truth.
-
- Yes, you're right. It just takes so damn long before this kind of new hardware
- can be integrated into an existing platform. It gives a platform which
- requires hardware for these kinds of effects a serious setback as platform with
- Chunky gfx and a fast CPU have been using them for years already.
-
- >> Not just me, texturemapping is simply popular because it makes things
- >> look more realistic and is within the range of our current processors.
-
- MVE> You mean it is popular because PCs just have processors that are now
- MVE> fast enough.
-
- Sure, they have to, otherwise it wouldn't ever get popular. The test which
- shows that TMapping is popular though is that games which don't use it (ie,
- which use plain polygons) are not acceptable anymore today.
-
- >> all, and it also causes a lot of the often used operations like plotting
- >> a pixel (games)
-
- MVE> Games rarely plot pixels.
-
- On Amiga yes, on clones however TMapping, scaled objects, rotating objects and
- gouraud/phong shaded polygons is practically all you see these days, and this
- is done by calculating information on a pixel basis, and storing them one by
- one to memory: plotting pixels. Some optimisations to plot multiple pixels at
- the time are possible, but it still comes down to modifying very few pixels at
- one time.
-
- >> drawing a line (GUI's)
-
- MVE> Mostly with 1bit per pixel.
-
- Only if the area you draw the GUI in is cleared first. You got a point there
- though as this usually indeed is the case.
-
- >> No, I focus on the usefull effects.
-
- MVE> So useful effects are defined at what standard CPUs do ?
-
- I didn't say that. The things that planar does best are however not
- particularly usefull in my eyes.
-
- >> Planar has much more severe alignment (and thus more overhead) problems
- >> and needs to access memory (for a 16-bit object) at 16 different locations
- >> in memory, while with Chunky this is all located in close vicinity of each
- >> other, making optimisations like plotting LONGs instead of WORDs possible.
-
- MVE> You mean the 128bit blitter is out ? It must have a 32bit bus ?
-
- No actually I meant that a 128-bit bus for Chunky would be more beneficial for
- Chunky than for Planar. Reason is that a 128-bit blitter needs to access 16
- different location in memory to access the 16 bitplanes, no matter if the
- object is 1 or 128 pixels in width. The Chunky 128-bit blitter however can
- however draw a 1-8 pixel wide object in 1 128-bit access, a 9-16 pixel wide
- object in 2 128-bit accesses, and so on. Only when the full 128-pixel width is
- used, only then the planar blitter will have a minimum of overhead.
-
- >> Yes, and we with our brilliant planar hardware are stuck with those
- >> hardware limits as we can't upgrade our planar hardware without serious
- >> problems.
-
- MVE> You mean that _chunky_ hardware wouldn't have had the same limitations
- MVE> ? If the Amiga had a chunky display then C= wouldn't have made bad
- MVE> decisions ?
-
- The difference is that Chunky hardware can be "upgraded" by getting a faster
- CPU. Our planar hardware doesn't benefit from faster CPU's.
-
- Grtz John
-
- -----------------------------------------------------------------------
- John.Hendrikx@grafix.xs4all.nl TextDemo/FastView/Etc... development
- -----------------------------------------------------------------------
- -- Via Xenolink 1.981, XenolinkUUCP 1.1
-