2.08.2012

If that's not something awesome

I got a great idea for an "analogue" value/memory system: there are no integers but only float/fixpoint values. May sound weird and utterly useless? Well, let's just imagine you want to do something more "fuzzy" and you know that the systems you're coding in knows no adresses or direct indices but just those floating values and "memory areas" that resemble sets of n interpolated values you can expand by just writing a float value to a floating point position and an algorithm behind will include or reject the new point if it meets a certain difference between the value of the interpolated position and itself. What you get is some sort of string with "floating" values. So why do something like that? Why throw fast index access away and use this vague stuff? Well, because it's interesting for certain graphical effects and simulations of analogue systems. Everytime I played a console game on my old TV it looked exactly like it should because the TV's analogue display has some unique illumination abilities compared to more sterile LCD displays. This makes it hard to completely enjoy an old video game using a TV card for example. Also, a cathode ray is no pixel array, takes it time to display and cycle through the screen. And now let's imagine you want to create a more unique way of displaying your retro video game by simulating those TV screens. Sure you'd start still using pixels and use some filter to let it look right. But it won't look as sloppy as the real thing, ay? Using a more analogue way of storing and displaying data brings the ability to simulate the illumation effect a bit more nicely as you can just "plant" illumination behaviour on your analogue memory and do interpolation models the rest. Even more interesting, values could have an alteration ability where they mutate or age on every access or after a certain time. Iteration may be slower than with an array, but some sort modified binary search or binary tree should do the trick here to find the analogue values you wrote randomly. Yep, I think this can be very interesting, indeed. Something I could definitely use if a huge dynamic field of values is required but only a few of them are actually unique and stretch across the whole area. Moreover, an different interpolation model can be chosen to have some more value-oriented interpolation that resemble illumination of certain curves. I like the idea very, very much and I can also think of a complete game display written using such analogue rendering approaches, floating between sprite arrays and so on. Using n-dimensional floating memories one can directly map multiple graphics to the display, giving a completely sloppy and unique way of rendering graphics and sound. Yeah, that would be very interesting. Definitely need to do this during the term break. And who knows - maybe this can come in handy for graphics effects in my bachelor project.

No comments: