Although the Cube Watch might look simple,

Although the Cube Watch might look simple, it is the most technically and graphically complicated that I’ve made… so far…

Hey man, that’s amazing! You are pushing the clockskin engine beyond its limits.

Really interesting. My PC is down currently so will look at the code later :slight_smile:

Wow! how did you do that? :clap::clap:

I started by (re) designing a new character set… I thought that a square-ish font would work best on the face of a cube… and I wanted something space-y and retro… with enough black-to-white ratio to make it easy to tell the time (it is a watch after all)…

Can you share the download link with us? I want to try floating it over my face in the dark in bed and imagine what it might be like to be a Borg.

now you have me puzzled … very cool

After redesigning the font I had to create 6 different character sets… this took a long time…

Yep but the big question I’m struggling with, how did you manage the masking to differentiate between most significant digits versus the least significant digits , since the are the same font pictures ?

Each face of the cube has two different character sets (2 x 0-9)… even though the font is the same… and the position of the number within the space of it’s character is very important…

Ahhh … got it … need to toy with this idea, this opens lots of new possabilities this way. Thx for sharing

Meredith Drew, can you send me the link to download?
Thanks.

@John_Raus Each face has two (digital) arrays… they are offset and overlay each other… if we consider the “seconds” face… array_a will count the seconds from 00-59 - the numbers in an array, are of course, side by side but this is not the desired effect that you want as this wouldn’t look right on the (angled) face of a cube… so, with array_a you use the last digits (0-9) and with array_b you use the first digits (0-5)… the two arrays can then be offset and overlayed in such a way so as to give the appearance of being correctly “angled” on the face of the cube…

The same applies to the other two faces of the cube… on the “minutes” face, array_c (0-9) and array_d (0-5)… on the “hours” face, array_e (0-9) and array_f (0-2)…

By the time you’ve got 6 offset and overlying arrays it’s starting to look pretty busy…

@Ricardo_Romero It’s easy, I used a great little program called ClockSkinMaker… :wink:

That all makes sense, but two things seem odd to me. I didn’t realize you can take control of the ten’s digit separately and refer to a different number array for display of that digit. I thought you had one set of font numbers available to cover both digits and the engine chose the correct individual number font whether it was tens or units position. That opens a whole new world. I think you’ve been using that on us in other designs, but I’m not sure. The other thing is being able to align and mask the digits with each other, like do you really control the ten’s digit by itself or is the engine displaying the tens and units digit in one font but you mask out the units digit and override it with the other font’s unit digit (with no ten’s digit displayed somehow)? You’re doing great work. Confusing as hell, but great work. Looking forward to seeing your code.

@SmartWatch_Ticks Part 1)… You wouldn’t normally but you can use two array_second on one watch face… and you can assign a different font set to each array… array_second uses tens and units but you cannot take control of the tens and units within a single array separately… at this point, re-examine the Space Invader graphic - by using a different “picture” for each of the digits 0-9, I got the watch to show a simple animation… I offset (off screen) the tens part of the array so as not to create a double image…
In a similar way I used the same logic on the Cube Watch… so stop thinking font and start thinking picture…

On the cube’s “seconds” face… array_a has pictures of numbers 0-9 and array_b is used for the pictures of numbers 0-5… the critical part here is that picture set _a and picture set _b are very different… the trick, is that the “font” looks the same but the position of a number within it’s picture is very different… by overlaying and offsetting array_a and array_b (both with similar pictures) you can give the illusion of one array that use the same font…

If the trick is different arrays with similar pictures… then the magic is in the masking… :wink:

Part 2 i)… A digital array will change it’s size according to the size of the pictures (of the numbers)… so, a character set where each number has very little white space (pixels) around it will show up as two numbers side by side… but if you add a lot of white space then you can “push” the picture in the other half of the array out of the way… “out of the way” could be behind a mask or off the watch screen… unlike the Space Invader example, where the array position was critical so as to view only half of the array, by using white space to push the array pictures apart you retain the ability to position the array anywhere on the screen that you want…

OK Andrew, this is getting very interesting, On the Space Invader watch you have the advantage of huge images so only the unit digits (images) will display on the watch and the ten’s digits will be off the watch to the left because of your positioning, right? The image for the 1st ten’s digit, which isn’t visible, is the same as the image for the 2nd of the ten unit’s pictures (associated with number 1). There’s no second font here, just playing with really big images and the fortunate edge of the watch. I’m pretty sure that was the concept behind doing a slide show type effect with individual disjointed pictures, only switching from the second array to the minute array or hour array for a longer linger on each image, right?

It’s this two array game that has me intrigued on this one. Also the fact that the images of these numbers appear to be much smaller so the associated tens digit for the unit array and unit digit for the tens array would still be on the screen. Unless, of course, you masked them out with an opaque overlay right up to the edge of the cube! I think. Hmmmm.

The engine wants these images for tens and units to be side by side, left to right, not slanted at these obtuse angles. So you’ve got to be messing with it in such a way that pushes them out of view without interfering with the other array of similar but different number images representing the other corresponding position to the left or right depending on which one you’re looking at and which one you’re not. Darn. I’m lost again. I think I need to sketch this out on paper and play with some number cutouts. There must be some optical illusion thing going on here, that’s for sure.

Wow, you were replying with part 2 while I was composing above conjuring that you were pushing the images somehow. Of course! White space! Padding with white space forces the digits further and further apart (by digits I mean images – no digits here, just pictures). But wouldn’t white – opaque white – block the digit from the other font set from being seen? Wouldn’t you need to pad with transparent so the excessive empty space would be transparent to the neighboring font number picture? In other words, it seems one or the other, whichever is on top layer wise, would mask the lower one with white padding, especially since they are slanted and not butting up against each other. OK, I still don’t quite have it, but it’s getting clearer! I think…

@SmartWatch_Ticks I didn’t mean to confuse with the term white space… the “white space” on each picture (number) would be transparent…