Graphic conversion for any 256x192 into MSX1 graphics (Source code in Blitz Basic).

Page 12/14
5 | 6 | 7 | 8 | 9 | 10 | 11 | | 13 | 14

By santiontanon

Paladin (845)

santiontanon's picture

14-07-2019, 09:10

Ok! I finally got around to incorporate this into my video converting tool! I actually just translated Eric's C version into Java, which was the easiest thing to do Smile

Results are much, much better! So, very excited about it, and already thinking about how can I incorporate this into some future games Smile

I recorded a quick Youtube video of the results. It's still uploading, it currently says it'll take 2 hours from the crappy internet in the hotel I'm staying, but once uploaded it should be here: https://youtu.be/BL92Ri0-N_U

And the source code is, as always, in GitHub: https://github.com/santiontanon/animation2msx

By hamlet

Scribe (2603)

hamlet's picture

14-07-2019, 09:34

You are making this matter very exciting!

By santiontanon

Paladin (845)

santiontanon's picture

14-07-2019, 09:55

hahaha, damn, now I created hype, it's not that impressive compared to the images uploaded by Eric and Leandro Smile

By alexito

Hero (555)

alexito's picture

14-07-2019, 12:02

Grande, Santi.
Thanks again for this awesome tool. I give a try shortly.

By alexito

Hero (555)

alexito's picture

14-07-2019, 23:07

Recently I discovered this upcoming game for Amstrad CPC called VESPERTINO they show fluid cars animations very impressive.
I wonder if they are using real Z80 3D Engine or maybe a similar tool Santi made for MSX.

By santiontanon

Paladin (845)

santiontanon's picture

14-07-2019, 23:13

Vespertino is very impressive!!!! The car rotation animation is probably similar to the code I wrote. With the difference that my tool is MSX-oriented, and thus it works a tile-level, whereas the Amstrad works at the level of raw pixels (groups of 2 pixels in the video mode they use). So, they can probably optimize in different ways. Seeing the style of graphics they render (with large flat-colored areas), it's probably RLE-encoded data for each frame, which would be quite efficient to store/render on an Amstrad CPC! But of course, that's just the way I imagine it, I have no idea how did they do it, hahaha

By Grauw

Ascended (8507)

Grauw's picture

15-07-2019, 00:04

Cool stuff santiontanon!

They for sure store RLE deltas between the frames so they only need to update the runs of pixels which change. The same technique they used for the rotating batman logo in their Batman Forever demo. The colours change by palette swaps I imagine.

Doing the same on MSX, our bitmap screen modes require more bandwidth (due to higher res and bpp) and our VRAM access is indirect, it may be harder to keep the framerate at 60 fps. Then again the maximum amount of deltas between frames is quite easy to calculate, so you can just adjust your model and animation to exactly match your maximum throughput.

By LeandroCorreia

Paladin (944)

LeandroCorreia's picture

15-07-2019, 06:54

santiontanon wrote:

hahaha, damn, now I created hype, it's not that impressive compared to the images uploaded by Eric and Leandro Smile

If images are sharpened and contrast is highly increased before conversion, your videos will look much better. Anyway, I'm really impressed with the results, Santi, great job!

Let's wait for MSXDev games with FMV intros. Big smile

By LeandroCorreia

Paladin (944)

LeandroCorreia's picture

15-07-2019, 06:58

BTW, a question... if you have a full 2x2 dithered block already defined, could you simply change its colors and use it many times in each frame to substitute an 8x8 block with similar colors in the original image?

By santiontanon

Paladin (845)

santiontanon's picture

15-07-2019, 07:03

Thanks!! But really, all the merit is yours guys, you are the ones that created the algorithm, I just ported it to Java hahaha

And interesting suggestion! Since my original code was for black and white images (the flag animation), I had not considered reusing blocks by just changing their colors! But I'm sure that that idea could be used to reduce the size of the video in the ROM even further! Thanks for pointing it out, I'll make a note for future versions. The more compression, the longer the videos that we can fit in a game Smile

Page 12/14
5 | 6 | 7 | 8 | 9 | 10 | 11 | | 13 | 14