• Welcome to Dark Bit Factory & Gravity.
 

2013 UDG Challenge!

Started by Shockwave, January 07, 2013

Previous topic - Next topic

0 Members and 0 Guests are viewing this topic.

hellfire

Interesting theme.
What I find a bit counter-intuitive in the context of "text-mode" is that I can't set fore-/background colours per character (as it's done on all low-end platforms), for example like this:

Challenge Trophies Won:

Shockwave

Quote from: hellfire on January 07, 2013
Interesting theme.
What I find a bit counter-intuitive in the context of "text-mode" is that I can't set fore-/background colours per character (as it's done on all low-end platforms), for example like this:



Hi Hellfire,

Good point, there is a little ambiguity in the rules as to whether bits that aren't set in any of the 3 planes are transparent so this would allow you to draw one character over another to achieve the look of the screen shot.  Because I've used the word bit planes to describe the palette rule I'd be inclined to accept entries that did this as it opens up other interesting possibilities and doesn't really handicap anyone.
Shockwave ^ Codigos
Challenge Trophies Won:

combatking0

If I'm understanding this correctly, is this anything like the method used by the Mega Drive to render Sonic the Hedgehog?


Or have I missed the mark?
You are our 9001st visitor.
Challenge Trophies Won:

hellfire

#23
Quote from: Shockwave on January 07, 2013
this would allow you to draw one character over another to achieve the look of the screen shot.
Well, thinking of text-mode I somehow find it even more counter-intuitive to draw two different characters at the same position.

The effect in the screenshot uses monochrome characters and each character-position on the screen gets it's own fore- and background color from a separate color table.
With fixed-colored tiles you will have to store each tile in all possible color-combinations. So this doesn't work with a total of 8 or 16 tiles.

I don't think this is a problem, just wanted to point out it's quite different from standard text-mode effects and much more limited.

Quote from: combatking0 on January 07, 2013If I'm understanding this correctly, is this anything like the method used by the Mega Drive to render Sonic the Hedgehog?
First of all they use tiles to construct repeating patterns for the scrolling background layers to save space:
=>
So this is pretty much like a large text-mode screen which can be scrolled left and right.
And the same technique is applied for sprites. This way they can animate only those tiles which actually change (eg. sonic's face keeps constant most of the time).
Challenge Trophies Won:

Raizor

I'm just wondering how people are planning to approach this from an implementation point of view? My initial thought was to render the standard screen to a buffer and then re-render it using the tile blocks, choosing the most appropriate tile block for each 8x8 square of the screen buffer.
raizor

Challenge Trophies Won:

Canopy

#25
I think i'm going about it a long winded way and using triangle strips to make the grid

it'll be updated/populated from an in-memory byte array that holds each 8x8 glyphs state.  Its kind of like a back buffer, I could just use nibbles rather than bytes for this, but as i'm more concerned about getting it going i'm skipping concerns like that and going for simplicity plus i could use the top bit of the bytes in the state array to to flag updates for only parts that have changed.

so in short, i'm rendering from a state array, working within that like its a framebuffer, then updating the triangle strips either in its entirety or with the just changes.

I have spotted a slight loophole in the rules I may be able to exploit, which may make people think i'm performing one action a different way than how i really will be.  I don't think it'll be massively impressive, but to me at least - technically very cool.

Optimus

Something a friend noticed who started with 4*4 tiles and I first told him it's 8*8. Then he noticed that you said in the beginning of the rules that we are allowed to use tiles Up to 8*8 pixels. So, we can use smaller sizes or should they only be 8*8? Just to clarify for my friend..
Challenge Trophies Won:

Shockwave

Quote from: Optimus on January 08, 2013
Something a friend noticed who started with 4*4 tiles and I first told him it's 8*8. Then he noticed that you said in the beginning of the rules that we are allowed to use tiles Up to 8*8 pixels. So, we can use smaller sizes or should they only be 8*8? Just to clarify for my friend..

Hi mate,

The tiles definitely must be 8*8, sorry for any confusion.
Shockwave ^ Codigos
Challenge Trophies Won:

Canopy

#28
Quote from: Canopy on January 08, 2013
I think i'm going about it a long winded way and using triangle strips to make the grid

it'll be updated/populated from an in-memory byte array that holds each 8x8 glyphs state.  Its kind of like a back buffer, I could just use nibbles rather than bytes for this, but as i'm more concerned about getting it going i'm skipping concerns like that and going for simplicity plus i could use the top bit of the bytes in the state array to to flag updates for only parts that have changed.

so in short, i'm rendering from a state array, working within that like its a framebuffer, then updating the triangle strips either in its entirety or with the just changes.

I have spotted a slight loophole in the rules I may be able to exploit, which may make people think i'm performing one action a different way than how i really will be.  I don't think it'll be massively impressive, but to me at least - technically very cool.

scrap this, after some reading i'm using a VBO and 'instancing' it over and over to setting colour, position etc via the shaders

Raizor

Might be an idea to supply some sample tile sets to get people started Shockwave ;)

Canopy, nice :)
raizor

Challenge Trophies Won:

combatking0

I've got an idea that's so strange, you may not believe it's a UDG at first sight.
You are our 9001st visitor.
Challenge Trophies Won:

Shockwave

Quote from: Raizor on January 09, 2013
Might be an idea to supply some sample tile sets to get people started Shockwave ;)

Sure, I've attached some badly drawn examples.. Ignore the white borders, they are just there so you can see where each tile begins and ends.
Shockwave ^ Codigos
Challenge Trophies Won:

Shockwave

Quote from: combatking0 on January 09, 2013
I've got an idea that's so strange, you may not believe it's a UDG at first sight.

That's what I'm hoping! :)
Shockwave ^ Codigos
Challenge Trophies Won:

Shockwave

Quote from: Raizor on January 08, 2013
I'm just wondering how people are planning to approach this from an implementation point of view? My initial thought was to render the standard screen to a buffer and then re-render it using the tile blocks, choosing the most appropriate tile block for each 8x8 square of the screen buffer.

I think that I'm going to use the frame buffer approach rather than writing custom drawing routines.
Shockwave ^ Codigos
Challenge Trophies Won:

combatking0

#34
I'll reveal my tilesets - they lack the borders, but they're the ones I'm using for now.

Also a diagnostic image from the JavaScript UDG engine I'm writing. Many coders re-invent the wheel, but I've been re-inventing the triangle. :D

I've just noticed the JavaScript code (3.2kb) I've got so far is a lot larger than both of the tilesets put together. And the code will only get bigger.
You are our 9001st visitor.
Challenge Trophies Won:

Canopy

#35
nice!

Quote from: Raizor on January 09, 2013
Canopy, nice :)

considering when i posted that i'd never done it before, and now have it all up n running!

(I work full-time, so at best i get a couple hours mon/weds and maybe over the weekend - have managed sunday (before the comp existed) monday, tuesday and tonight so far though! tomorrow, friday, saturday will be a bust though)

after another coding session or two i'll have my actual grid/glyph renderer up and running and be playing with tiles themselves..!

Raizor

Good news and fast work.

The deadline isn't until the 23rd of next month though.
raizor

Challenge Trophies Won:

Raizor

Quote from: Shockwave on January 09, 2013
Quote from: Raizor on January 09, 2013
Might be an idea to supply some sample tile sets to get people started Shockwave ;)

Sure, I've attached some badly drawn examples.. Ignore the white borders, they are just there so you can see where each tile begins and ends.

Thanks Shockwave :)
raizor

Challenge Trophies Won:

relsoft

Man!!! This theme is kool!!!  I'll try to enter this after I finish my entry in another game compo (deadline for that is Feb 18th). That gives me a few days to do a simple entry. ;*)
Challenge Trophies Won:

Canopy

Quote from: Raizor on January 09, 2013
Good news and fast work.

The deadline isn't until the 23rd of next month though.

Doesn't feel like fast work!


Overflowing with ideas I don't have time to do.. hah..


Priorities!