English Amiga Board


Go Back   English Amiga Board > Requests > request.Apps

 
 
Thread Tools
Old 02 July 2012, 12:37   #1
Jack Burton
It's all in the reflexes!
 
Jack Burton's Avatar
 
Join Date: Nov 2009
Location: Wingkong warehouses
Posts: 206
Drawing program with enhanced dithering options

Lately I was looking to rpg gfx on old japanese pc (pc88 mainly) and I was surprised by what could be done graphically with only 8 colors (the primary ones : RGB-CMY-BW). The gfx are in hires ~640x200 and they use a kind of complex dithering method that gives good results. It's not basically a mix of 2 colors (like 1 red pixel + 1 yellow pixel = 1 orange pixel), the dithering used here are often a mix of 3 or 4 colors with different pixel patterns, so they can achieve very good results (some smooth gradients for example).

https://www.mobygames.com/game/pc88/...ShotId,510689/
https://www.mobygames.com/game/pc88/...ShotId,510692/
https://www.mobygames.com/game/pc88/...ShotId,510693/


I couldn't find a way of doing that kind of dithering (since I assume these ditherings were not made by hand but by software) when I looked for the dithering option in Brilliance and Dpaint.

So I was wondering if this kind of dithering method has ever been implemented on an Amiga drawing program ? (I would like to make some drawings in that old fashion).
Jack Burton is offline  
Old 02 July 2012, 15:47   #2
commodorejohn
Shameless recidivist
 
commodorejohn's Avatar
 
Join Date: Jun 2012
Location: Duluth, Minnesota (USA)
Age: 38
Posts: 261
That actually looks like it's been done by hand; note the way that cross-hatched dither (less obvious, but blurs borders) is used on large spaces like the sky-blue, but where it's important to keep the shape (such as on the skin,) the bright and dark colors are lined up. You don't get that kind of distinction in software dithering.

I've actually been pondering exactly this in the past week, though; I was thinking of the later Tandy 1000s, which have a 16-color mode in the same resolution. I find it helps to think of things in terms of "logical pixels" made up of pixel pairs; if each individual pixel can take n colors, then the "logical pixel," using the formula for unordered combinations with duplicates allowed (i.e. both pixels the same color) can be one of n + ((n!) / (2 * (n - 2)!) colors. For an 8-color mode, that's 36 "logical" colors - for a 16-color mode, 136.

What you'd want in chunky modes, like on the Tandy, is to first convert an image to a palette of all your "logical" combinations (a 6-bit palette for 8-color modes, 8-bit for 16-color modes.) If you wanted, you could fill in one half of the duplicate combinations with a color that won't get used (i.e. set 0x0F to an unused color, but leave 0xF0 where it is. You could probably even just set it to the same color as palette entry 0 and trust that the color-selection algorithm will stop at 0 first.) Once you've done that conversion, all you have to do is treat the 8-bit chunky pixels as 4-bit chunky pixel pairs, and voila, mission accomplished; tweak the dithering in a 16-color paint program and you're done.

It's a little trickier for planar modes, since you don't have the convenience of one 8-bit chunk conveniently resolving into two 4-bit chunks. I'd probably convert the image to a chunky 8-bit format first, switch it to chunky 4-bit, and then save as planar from there.

Of course, if you don't care so much about making it look like that, there's actual dither algorithms that aren't at all hard to implement - Atkinson dithering (as seen in old Mac software) is terribly easy.
commodorejohn is offline  
Old 06 July 2012, 21:23   #3
Jack Burton
It's all in the reflexes!
 
Jack Burton's Avatar
 
Join Date: Nov 2009
Location: Wingkong warehouses
Posts: 206
Quote:
Originally Posted by commodorejohn View Post
That actually looks like it's been done by hand; note the way that cross-hatched dither (less obvious, but blurs borders) is used on large spaces like the sky-blue, but where it's important to keep the shape (such as on the skin,) the bright and dark colors are lined up. You don't get that kind of distinction in software dithering.
Yes, I know it has been worked by hand in certain parts otherwise it wouldn't be as sharp.

Anyway, what I am looking for is a tool/paint program that could give me the possibility to pick colors from a dithered color wheel (made of the 8 primary colors only) and then paint or fill areas of a b/w sketch like drawing. After that I will have to make some correction by hand obviously. In fact, I would like to reproduce the same kind of gfx you could see in the link I posted. As I'm beginning to learn AmiBlitz, it's a little project I have, to make a very simplified game a la Snatcher. Snatcher on my MSX2 uses the same technique, it's in hires mode and the colors are dithered. I'm sure the graphics team at Konami surely worked with this type of tools. That's why I was wondering if such a tool ever existed on the Amiga. I have some doubts though since the Amiga didn't have such limitation even with OCS. You could easily display more than 16 colors in 640x400 with technique like PCHG… but well, we never know !
Jack Burton is offline  
 


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools

Similar Threads
Thread Thread Starter Forum Replies Last Post
External windows program communicating with program running inside WinUAE xxxxx support.WinUAE 10 19 February 2013 09:27
Old drawing of a book absence request.Other 8 04 June 2012 17:19
Drawing circles h0ffman Coders. Asm / Hardware 4 31 January 2012 22:25
Drawing a line... Lonewolf10 Coders. Tutorials 24 06 September 2011 00:46
Using dithering with NewIcons ami_junkie project.ClassicWB 4 28 March 2010 19:21

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +2. The time now is 05:00.

Top

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.
Page generated in 0.07846 seconds with 15 queries