(another way to think of it is like trying to alter a single pixel within an RLE encoded image file, like a GIF, PNG, Packbits IFF, Atari Degas PC1, PCX, compressed BMP etc. By the time the computing side of things was even remotely powerful enough to carry out that kind of recalculation on the fly, the video hardware had advanced in kind and made HAM an irrelevance anyway. So your game or animation may look really nice, but it'll run slower and more jerkily than a plainer looking version on the ST or IBM PC, and one of the Amiga's main benefits, more than its enhanced colour abilities (enough games ran in basic 16-colour mode that use of 32- or 64-colour was sufficient for a box boast), was how silky smooth games ran when programmed to take full advantage of the hardware. And you still end up having to dynamically alter enough of the underlying image, even if you're just patching in precalculated blocks using the blitter function (never mind recalculating from scratch using the CPU) to completely negate the performance advantage of the Copper, sprite engine etc. You can of course make sure the HAM image in question is synthesised so to be built out of regular 4-pixel, index-modR-modG-modB blocks, but that's additional complication in of itself, and there's no reason why any given image would convert nicely to that kind of format. It is, actually, just as complex as originally claimed. but changing a pixel to the left of a run of such "no change" commands would then mean the whole run changes colour, and not necessarily to the same colour as the one changed pixel if it sets a value on that channel that's different to the "modify" ones). (And, consider that a "modify" command could equate to a "change nothing", if there's no palette entry that directly matches it, and it's set to modify an arbitrary channel "to" the same value that it already holds. So you're not guaranteed of a changed pixel only affecting the following 2 or 3 potentially, an altered pixel near the left of a line could affect *all* of the rest of the line, or certainly a large chunk of it. EG, if it starts as a sort of peach colour, and then only changes the blue channel, varying between a medium brown (0 blue) to a pale magenta (15 blue) across the line. Depending on the image content, you could have a single index at the start of a line (assuming the colour value can't be held from the end of one line to the start of the next), and then an unbroken run of "modify" commands across the entire line, maybe affecting only one channel even. Peterpall ( talk) 05:21, 5 April 2012 (UTC) Reply The problem is that it doesn't follow a set pattern of Index - modify red - modify green - modify blue - index - etc etc. As I understand it the article currently states that the whole image has to be recalculated once a thing at the left of the screen changes. But if a pixel retains the original color it had before drawing the animated part all pixels to its right (that depend on its color) schould work again automatically. I believe 01 changes the blue component and 11 changes the green component.Īs far as I understand the concept of HAM when changing a section of the screen in the course of an animation at maximum the 3 pixels right of the animated part have to be recalculated: Changing to an arbitrary colour might need changing colour values for red, green and blue separately. The description of the control bits is wrong. Uploading legal missing Amiga related images/screenshots.Other: Denise (computer chip), Paula (computer chip), Copper (OCS), Alice (computer chip), Lisa (computer chip), Mediator PCI, Clock port.Hardware prototypes: Amiga Multimedia Convergence Computer.Computers (expanding): AmigaOne SE, AmigaOne XE, AmigaOne Micro-A1, DraCo, The Access.Phase5 accelerator boards the 1230/1240/1260 blizzards and the PPC boards.Software: AmiDock, JXFS (filesystem), Hollywood (programming language), Warp3D.Companies: Amiga Technologies, Haage & Partner, Eyetech.Expanding Stub articles and Start articles.Articles of high-importance that needs expanding or improvements:. Improving the clarity and the quality of articles.Improving the accuracy and updating dates about events.Tagging Amiga related articles into the project by adding the template.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |