Jump to content
IGNORED

So, Direct Colour . . .


Recommended Posts

17 minutes ago, jeffythedragonslayer said:

ha, I actually think figuring out what the requirements of such tools are is going to be harder than actually developing those tools.

Having a SNES dev tool that can convert images to work in pseudo-hires and/or full 512-highres would really be very useful as well.

 

I did try to do this in a roundabout way myself (see below), but an actual tool would make the whole process so much easier and indeed more reliable:

512x2244bppDitherDiag4and2.thumb.png.3e78af910d16c0ac1ef8a5c19c340a19.png

 

Those are a couple of example images that would be full 512x224 and 4bpp with 16x8 tile size on SNES as best as I can represent them, which have been colour converted using Rilden's tiled palette quantization tool (first image uses dither diag 4 and the second dither diag 2 as I recall).

 

Now, Rilden's tool isn't setup for this, as there's no true way to convert an image at 512x224 resolution that has pixels half as wide as they are high without making all the pixels the same aspect ratio again, so I literally had to use it with a vertically squashed 512x224 image, convert everything, and then change the size in Photoshop to 512x448 using nearest neighbour scaling to represent the pixels that are half as wide as they are high in 512x224 mode on SNES, which clearly isn't optimal.

 

So, yeah, tools for actually all of these things would very welcome personally.

Edited by Kirk_Johnston
Link to comment
Share on other sites

13 minutes ago, Kirk_Johnston said:

Now, Rilden's tool isn't even properly setup for this also, as there's no true way to convert an image at 512x224 resolution that has pixels half as wide as they are high without making all the pixels the same aspect ratio again, so I literally had to use it with a vertically squashed 512x224 image, convert everything, and then change the size in Photoshop to 512x448 using nearest neighbour scaling to represent the pixels that are half as wide as they are high in 512x224 mode on SNES, which clearly isn't optimal.

Because there's absolutely no need to. PAR makes no difference to the conversion algorithm. 512x224 has a PAR of 0.571:1, 256x224 has a PAR of 1.1428:1, PCE mid res has a PAR of 0.857:1, MD 320px res has a PAR of 0.914:1. And that's all NTSC. PAL is different. And NONE of that matters. At all. TQ handles them all the same. All that it needs to know is the tile dimensions, not your PAR. I use TQ with PCE's high res 512px mode all the time. There's no issue.

 

17 minutes ago, jeffythedragonslayer said:

Yeah I agree with WavyGravy.  What I would want in a direct color tool is something where I could go into a "tile select mode" where clicking anywhere in that tile selects the whole tile, and then I can right click and configure which of the 8 direct color palettes I want that tile to use.

 Conversion tool or artist tool? My conversion tool already does this. If you're looking for an artists tool, you can easily use photoshop; pick your colors from those 8 defined palettes (or build them yourself) and make sure you adhere to tile boundaries. I'm sure you can do the same in Pro Motion, gimp, whatever.

  • Like 1
Link to comment
Share on other sites

2 minutes ago, turboxray said:

Conversion tool or artist tool?

artist tool

2 minutes ago, turboxray said:

My conversion tool already does this.

do you have a link? :o

2 minutes ago, turboxray said:

If you're looking for an artists tool, you can easily use photoshop; pick your colors from those 8 defined palettes (or build them yourself) and make sure you adhere to tile boundaries. I'm sure you can do the same in Pro Motion, gimp, whatever.

Sure, but that's not game maker level of easy, is it? :lol:

  • Thanks 1
Link to comment
Share on other sites

8 hours ago, jeffythedragonslayer said:

Sure, but I prefer dedicated tools that won't allow you to produce things outside the limitations of the console you're working on.  That makes it real easy.

Exactly. And in a way that will save any SNES developers out there as much time and energy as possible while still producing the best quality results for the system. That's kinda the entire point of making dedicated development tools vs just having everyone use random programs never designed for this purpose in the first place, not really optimized for it, and fumbling around trying to do the best they can with their makeshift Frankenstein development solutions.

 

Fingers crossed the people with the ability to make such tools actually understand this kind of obvious but essential stuff about these tools that would benefit the SNES development community immensely. Because it they don't get that, well, that's not good.

 

Some do get it though, for sure, such as Rilden. I mean, just look at how much stuff I've been able to quickly and easily create to SNES specs using really nothing other than Rilden's kinda awesome Tiled Palette Quantization tool (plus Photoshop to create many of the assets initially). Gorgeous 8bpp static images, gorgeous combination 8bpp/4bpp/2bpp static images that still look great but optimize VRAM usage by reducing the number of 8bpp used in areas where the lower colours wouldn't be noticed anyway, gorgeous 8bpp scrolling platformer backgrounds/levels showing this quality of image can be used during actual gameplay, images that contain a bunch of reusable background tiles that have all been checked with the tool to make sure they are within SNES colour and tile specs so I can use them basically as tilemaps to build level variations, animated sprites that all fit to the SNES' colour and tile specs, a demo of how SNES could have four layers of overlapping parallax in one area of a port of SotN using Mode 0 [and its apparently only "NES-level" visuals] and still have it look pretty dang accurate with good management of the limited colours there (actually better looking overall than the same level in the upcoming Genesis port imo, despite my version being put together in literally a couple of days, so far less time to fully polish and optimize for SNES properly*), etc.

 

A handful of great tools like that and the games/demos/mockups [far more] people could/would be putting together for SNES . . .

 

*Genesis:

 

SNES:

 

And, to be clear, my personal goal here was to use Mode 0 specifically to try to keep as much of the overlapping parallax of the original in my version as possible while trying to push Mode 0 to look as nice as it can in such a case. And, note, this is nowhere near finished/final either. But, patently, I could have used another mode to make the colours look basically identical to the original PlayStation version if I wanted, but then I'd have less fully overlapping parallax layers overall in this particular text, and my goal was to get as much overlapping parallax here as I could. So, as the person making the test, I made my choice based on what I wanted to achieve and learn from such a test, and I'm pretty dang impressed with what's possible with Mode 0. Again though, this is a quick test done over a couple of days and nowhere the final results you could achieve in this mode alone, so much potential there. And, to the point, Rilden's Tiled Palette Quantization tool was a Godsend there. So, a few more great SNES development tools would go a very long way imo.

 

PS. I'd be curious to see how close a PC Engine version could get in reproducing that particular level for example too, especially with its far more colours, just so we could have all three versions to compare. That would be kinda cool to see. :)

Edited by Kirk_Johnston
Link to comment
Share on other sites

By the way, something completely obvious I didn't even do in my SotN test above, which still would have totally fit in with my idea of using Mode 0 to get those four fully overlapping layers of parallax, was to actually switch background modes on the top and bottom sections of the level that don't even have any overlapping parallax layers. That way I could have just had full SNES colour quality on those parts of the level, and then the Mode 0 4-layer stuff in the middle. I think that combo would be real sweet in that particular section. And it's that kind of playing with the SNES' multiple different modes and features that I find particularly compelling, and indeed where it seems there's often a lot of largely untapped potential. Also, I didn't add in any sprite stuff other than Alucard there, so obviously the lovely torches and enemies and other stuff would eventually be added into the level and give it quite a lot of extra colour and detail overall too. It's all the obvious stuff really, but just wanted to add a note of it here for any more casual readers who maybe aren't fully aware of these things. :)

Edited by Kirk_Johnston
  • Like 1
Link to comment
Share on other sites

9 hours ago, jeffythedragonslayer said:

do you have a link?

From what he's shown of the UI thus far, it looks like he'll need to include an instruction manual too, so hopefully that's also there. But I'll be happy to give this wonderful image conversion tool a go and see how good it is for SNES stuff, and if it's as awesome for working on specifically SNES stuff as I'm picturing now. Fingers crossed it's as well designed and user friendly as Rilden's brilliant conversion tool. :)

Link to comment
Share on other sites

Using Mode 0 to get a very distant layer of parallax working is a pretty big compromise to make to image quality. If it were me, I'd just ditch the woods or the mid pillars, but you can get everything you want out of that scene with Mode 1, no mode switching required.
The closest background and the pillars (which you wouldn't want to make into sprites because this area in particular has very complex enemy sprites and death animations) are already 4bpp palletized textures on the PS1, so you can go almost 1:1 for colour on those once the PS1's larger global palette is taken into account. So, those are easy. The woods outside also don't move at all and are tiled, and the windows are pretty small. This means you can pre-render the windows moving past the woods and update the window tiles as that layer scrolls to make the woods appear to stay still. You could then use masking sprites for the giant Peeping Eye that pops up from time to time. I think both of those effects are used in PCE games fairly regularly.
The distant background with the stairs is pretty low-colour already, and can be broken into 8*8 tiles pretty easily to get more colour out of your 2bpp layer. We also don't need to scroll vertically in this scene. Why is that important? Because we always know exactly what line we stop drawing the HUD (I'm assuming you want to draw the HUD on the 2bpp layer), and we always know exactly what line we need to start drawing the distant background on. So, what we can do with the 2bpp layer is something like so:

Line 0 - End of HUD line: Draw the HUD.
Line after HUD drawn: Use HDMA to set BG3 (2bpp) priority bit to OFF, this sends BG3 to the back of the layers.
Line just before distant background starts rendering: Use HDMA to modify BG3's horizontal scrolling to the value in memory calculated in the last VBLANK period.
BG3 draws as distant background.
During VBLANK: Set BG3's priority bit back to ON to put the HUD on top, update BG3's Hscroll to 0 so the HUD stays still next frame, update the memory location where you're storing the midframe change to Hscroll according to how much BG1 moved, and swap out your window tiles for the next frame if necessary.

That's it. You get all of your colours (or near enough that it really doesn't matter) and you get your layers. This does eat more tile VRAM, but I don't think you're hurting there as it's a pretty simple scene, and does require more ROM, but I've never seen you say that's a factor for you, so I'm assuming you'd just use a mapper or MSU-1 if you needed more space.

 

  • Like 2
Link to comment
Share on other sites

Also, something to keep in mind if you're even remotely pondering the use of Direct Colour on SNES is that its only real differences to any other modes/features is that, when used optimally, it can allow the SNES to display literally thousands of colours on-screen during actual full gameplay and alongside almost all the other typical SNES capabilities and features too (great for a USP bullet point on the back of the box, maybe including some catchy marketing term like "Colour Blasting©" or "Super Colour©" or something like that), as well as the fact it just lets you play with so many colours for each layer independently and also separately again for the sprites too (this offers an extra degree of freedom around managing palette limits and such that no other mode/feature offers to the same degree). So, if these things aren't important to you with your own SNES games/demos/ideas, I'd suggest Direct Colour probably isn't for you, and you'd likely be better off just sticking with whatever one of the other seven SNES background modes and their features, all of which have their own strengths and USPs too. Personally though, those two things are very compelling to me, hence why this mode/feature is something I'm continuing to explore. And hopefully you will find some way of making it worth your time too. :)

Link to comment
Share on other sites

39 minutes ago, Kirk_Johnston said:

So, if these things aren't important to you with your own SNES games/demos/ideas, I'd suggest Direct Colour probably isn't for you, and you'd likely be better off just sticking with whatever one of the other seven SNES background modes and their features

I believe indirect color works in all 8 background modes and that no background mode forces you to use direct color.

Link to comment
Share on other sites

7 minutes ago, jeffythedragonslayer said:

I believe indirect color works in all 8 background modes and that no background mode forces you to use direct color.

It only works on 8bpp modes, which are modes 3, 4, and 7. It also only works on the 8bpp layer in those modes.

49 minutes ago, Kirk_Johnston said:

I'd suggest Direct Colour probably isn't for you

Did you give up on it then? You never even tried to show us what it can do.

Link to comment
Share on other sites

1 hour ago, jeffythedragonslayer said:

I believe indirect color works in all 8 background modes and that no background mode forces you to use direct color.

That sounds correct to me.

 

Edit: Ah, yeah, I get what you're saying. I should have said you can use any one of the eight backgrounds modes and not use Direct Colour if neither of the two things I personally find compelling about Direct Colour are compelling to you.

 

Cheers for pointing that out.

Edited by Kirk_Johnston
Link to comment
Share on other sites

54 minutes ago, jeffythedragonslayer said:

no problem, I'll take any excuse I can get to keep increasing my post count:

image.thumb.png.a55bda8f7572d4bbf995b4b6377543d3.png

I never thought about my own post count, but any posts in here count towards the overall number of posts in the SNES sub-forum, so I can appreciate it too. :D

 

By the way, am I missing something here, or are some people in this sub-forum allowed to delete their posts, because it seems you quoted a few posts from Kulor that I'm not seeing above?

Edited by Kirk_Johnston
Link to comment
Share on other sites

5 minutes ago, Kirk_Johnston said:

By the way, am I missing something here, or are some people in this sub-forum allowed to delete their posts, because it seems you quoted a few posts from Kulor that I'm not seeing above?

I believe only people who work for AtariAge can?  I'd made you sure you don't have Kulor on your ignore list.

Link to comment
Share on other sites

13 minutes ago, jeffythedragonslayer said:

I believe only people who work for AtariAge can?  I'd made you sure you don't have Kulor on your ignore list.

Oh, he's on there, along with a whole bunch of other people. But not even the "You've chosen to ignore content by [insert name]" is showing up for maybe the last couple of hours for him, which your quotes seem to suggest is when he made his posts, which is strange.

 

Edit: Actually, I hadn't refreshed the page for a few hours and it seems it wasn't showing some of the forum content, but now I see the "You've chosen to ignore content by [insert name]" correctly. Mystery solved. 😛

Edited by Kirk_Johnston
Link to comment
Share on other sites

Corrected version:

 

Also, something to keep in mind if you're even remotely pondering the use of Direct Colour on SNES is that its only real differences to any other features is that, when used optimally, it can allow the SNES to display literally thousands of colours on-screen during actual full gameplay and alongside almost all the other typical SNES capabilities and features too (great for a USP bullet point on the back of the box, maybe including some catchy marketing term like "Colour Blasting©" or "Super Colour©" or something like that), as well as the fact it just lets you play with so many colours for each layer independently and also separately again for the sprites too (this offers an extra degree of freedom around managing palette limits and such that no other features in any modes offer to the same degree). So, if these things aren't important to you with your own SNES games/demos/ideas, I'd suggest Direct Colour probably isn't for you, and you'd likely be better off just ignoring it and sticking to using any of the other standard features of any of the SNES' eight background modes, all of which have their own strengths and USPs too. Personally though, those two things that Direct Colour brings to the table are very compelling to me, hence why this feature is something I'm continuing to explore. And hopefully you will find some way of making it worth your time too. 

Edited by Kirk_Johnston
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...