Monday, December 31, 2007

Creating a Coherent LCARS Interface

Happy New Year Viewer :D

I had just spend my time creating a tutorial on something that most designers would deem as a complete freaking waste of time.

But...I disagree. I love the LCARS interface, first and foremost because it looks nice...to me.
Haaaaaaaaaaaa

OK OK enough said, I've created a set of guidelines for implementing
the LCARS interface in real world applications.


For those that love the LCARS interface, enjoy.
For those not into LCARS, don't bother looking at it, it's not for you.

Friday, December 21, 2007

Trigonometry Based Collision/Bounce Algorithm

During the creation of the “Idiot-Prove collision bounce” article, I’ve come to realize the limitation of directly interfacing with the Horizontal & Vertical speed of an object to assign motion; I find it to be rather barbaric.

A better approach will be to assign motion based on Direction [Angle], and Speed. I find it to be much more elegant and human.




My approach on deploying this function is through the use of trigonometry, I do not know if there are other techniques, but I do know trigonometry will suffice.

Using the power of Sine, Cosine and Tangent, I realize that not only can I assign motion based on Direction and Speed, but because of the ability to move by angle, one can also detect collision angle and hence, bounce by angle!
We are talking about accurate bounce effect here !

The interface you are seeing is a rather limited example of what trigonometry can do, you can click anywhere in the interface to change the ball’s angle of motion in a random manner, the four “short” walls can, by means of trigonometry “predict” the ball’s “out of screen” location and move to intercept, quite a clever thing for the walls to do have I not understand trigonometry.

You can download the source code here, if you have any questions, feel free to contact me.

Wednesday, December 19, 2007

How Religion got started and the celebration of Stupidity

Humans have an innate need to feel secure, as does all animals, but our requirements are more extreme compared to our animal counterpart.

To feel secure over a world of unknowns, some choose to investigate, but it’s a dangerous world out there, it would be safer to be in some cave or your own house and make up stories that will at least convince you for a while that you know everything.

It must be a popular contest of some sort I believe, with everyone wanting to know “Why”, the one that can provide all the answers is the “Alpha” and BOSS of the community, this would prove useful in a world where food doesn’t come as easy.

Even if you did know everything, conveying information to the public is a whole new art of its own.
Which one is easier to understand ? God created everything end of question or a whole excursion of natural/physical laws ?

People like to feel smart and every time they don’t understand something they don’t think “I’ll like to investigate”, most of them would just think “I don’t understand it…I feel stupid…I don’t like to feel stupid…I hate this explanation…so it's wrong!” but the idea “God made everything? Now I like that explanation, because I don’t feel stupid as I don’t have to think further” works for a lot of people.

People will fight to protect the idea that they are not stupid, that they know the truth, along with the nature that human don’t like changes and will do everything to protect it even if it’s inferior to the new that is to come, hence religion wars are common throughout human history.

With all the comfort that comes from the delusion of knowing everything, one have to wonder why Science would even have a place in human society at the beginning for it to reach the respectable state that it is today.

The Pope that sends Galileo Galilei to condemnation should have given a clear message to the world that the idea of True Science is not something that should be “preached” in its fullness.

Fortunately, not everyone likes stupidity.
Science matches on...

Today we are enjoying all the fruits and labor of what Science had brought us and scientist are now the new Pope.

The religious people spend their time telling people how right they are and how many mistake Science makes and how the law of physics are always changing a little here & there, what they fail to understand is Science don’t pride itself as absolute truth, Science is “True” learning, always making mistakes, always improving. Religion on the other hand is absolute, end of question, or else you of little faith, why do you question ?

I believe in God, but to be honest, the truth is I need the idea of God.
In time of crisis, the idea of an all powerful loving God proves to be very comforting to me.
The idea that his Son Jesus died for my Sins [what’s Sin anyway ? Why are they Sin ?] is something that brings comfort to me all the time.
Does that mean that I’m stupid ? Perhaps, and I gladly admit the possibility that I might very well be. Still this part of my humanity that seeks after comfort persist.

I think religion has its place, but I think Science should be the way of thinking for the next generation if we never want to see the dark ages again.

From my country of origin, we are told to “respect” religion, I agree with the idea of “respect” but if a particular religion prompts stupidity, we should make sure that it doesn’t get out of hand and turn the entire state into a degenerate.

It sounds impossible but we Chinese have a saying, it’s easy to turn evil in three days but three years to turn good[of course the concept of Good & Evil is debatable but let not this article get out of hand and out of range]. It’s easy to promote stupidity than intellect.

America is currently under such crisis, it was founded on many ideas one of which is the separation of Church & State.

I love the ideas of America, the idea that power belongs to the people and many of the ideas that it holds, but stupidity is creeping back on the all powerful nation that is America for a long time, instead of the celebration of Scientist and their discoveries, we look to Hollywood actors for advise and Pope for what Science ought not to do [what can he say either than what not to do ? How to do it ? I don’t think so…].

I feel that I have to stop myself from writing as my topic on the raise of religion has swept to anger at stupidity and the spread and praise of it. Perhaps someday, I’ll calm down and write something of worth.

Monday, December 17, 2007

“Collision Detection & Bounce” is a very commonly implemented effect in games and the most accurate way to simulate this is by using trigonometry.

However, if you are just dealing with horizontal/vertical walls and regular shaped bounce objects [square/circle], there is an almost idiotic approach, it’s not accurate, but it gets the idea through.




The logic is very simple, if the ball were to hit the side walls, reverse its horizontal speed, if the ball were to hit the ceiling or floor, reverse its vertical speed. There, simple and idiot prove :D

Monday, December 10, 2007

Star Trek: The Next Generation – Interactive Technical Manual

Star Trek: The Next Generation Technical Manual
This piece of art was created 13 years old, that’s like hundreds of years in technology terms, however, when we talk about interactive, this piece of work encapsulates the best of what the multi-media hey days offers back then. This software and what it had achieved is still a formidable accomplishment by today’s standard.

I have a lot of difficulty trying to open this software with my desktop computer due to the different in age of the necessary hardware and software technologies required to operate it.

I have to salvage my laptop from the place of darkness and gnashing of teeth that still runs on Windows 98 in order to run this software “correctly” and even then, I still have some problems with the QuickTime VR.

Star Trek: TNG Technical Manual
The minute the software starts “operating”, I’m greeted by the UFP Logo and was soon flooded by the beautiful LCARS interface [Michael Okuda’s baby] and Computer voice [The beautiful voice of Majel Barrett] from the Star Trek universe. I am given options to be toured or to just go around on my own.

Star Trek: TNG Technical Manual
As an LCARS fan myself, it’s almost heartwarming seeing the state of LCARS as it is during the TNG era, the look and feel of LCARS had not yet settle down and there are so many experimental looks here and there on the ship and that somehow brings a smile to my face, it’s like seeing the birth of an “ideal” that I’m so accustomed to.

Star Trek: TNG Technical Manual
Star Trek: TNG Technical Manual
Star Trek: TNG Technical Manual
The amount of “media” would had mean little compared to the internet itself but still, it’s very impressive as a project, you have walk through environments, videos, photos, schematics, technical diagrams. I find the whole “Dither” look of the images due to limited color depth display abilities back then very chucky, and to think that to this day and age...Director still ask about the whole color depth thing when you import an image in it, it’s the small things about Director that makes me goes “wtf” at times…

Star Trek: TNG Technical Manual
Star Trek: TNG Technical Manual
What is impressive too is how they try to make the LCARS interface work by using it as the main interface for the delivery of all the information within.
Simon & Schuster [developer] did a very good job.

My description of this piece of art does not do justice to the amount of work that went into it. If you ever get your hands on this work, you’ll understand what I mean.

And how can I forget to mention that all this…is packaged using….MACROMEDIA DIRECTOR Yeh !!!!!

I’ll keep my eyes out for anything that Director still excels in today…

PS: The laptop that is used to run this software is so badly damaged that all its outputs are unusable, I have to use my camera to literally take screen shots of the LCD display screen. I think I did a very good job ! he he he

Sunday, December 2, 2007

The Fate Of Director


Before I even start expressing my personal view, I just want to say that I love Director.


There's something to be said about the old school coding language Lingo that is Director and
its old school "32 or 24 bit image?" dialog question that is such an indication of its age today.


Fast forward to the present day, fast computer, real time simulations, and web videos everywhere.


It's all good, very good indeed, and still better things to come…Where does Director fit in all these ?

Sadly in all my experiences, I have to say that I simply cannot see how Director is the much sole after solution anymore. Everything Director can do, there's an application out there that can do just that and does a much better job simply because it was created for that very single purpose.

The "jack of all trades masters of none" attitude of Director is destroying itself from existence regardless of how glorified it used to be. It almost seems that Director's era started dying along with the "Multimedia CD-Rom" craze.

Allow me to elaborate why I believe Director is nearing its end, efficient/popular/usage wise.





















For DirectorReality
Adobe Director makes interactive interface programming easy.


Film Loop offers independent animation without taking up the score’s space.

Adobe Flash's concept of the Movieclip, the ease of creating the Movieclip and the ease of deploying it totally smack Director's linear timeline in the face.
Sure Director can do the whole parent script thingy but why bother to do all that Lingo when you don't have to…in Flash ?

In Flash, you focus more time on how to use the power of independent timelines instead of the time spend on creating one in the first place.

Flash's movieclip and all the flexibility it encompasses make Director's film loop just about as interesting as a wet carrot.

Director is SO user friendly that when you make a mistake, you had better make sure you undo it immediately cause it only allows a single step undo. Isn't it amazing! Like totally awesome !

Adobe Director was known for its Full screen video support in exe mode.Flash's web capability, on the other hand, had revolutionaries web video, giving raise to the whole youtube bloom with all its fullscreen support in web mode.
Flash as a projector can fullscreen too, and Adobe had announced on 20 August 2007 that they will eventually support the MPEG-4 international standard in the Flash Player itself.
Adobe Director's graphic format
support rocks !
Let's talk fundamentals here, the most common thing for us to do is import graphics.

Let's say a simple photoshop file with transparencies, to make sure Director handle the anti-alised outline correctly, I have to create a seperate grayscale image to tell director how to handle the transparencies, then engage the "mask" ink.
The "Background Transparent" ink simply will not do as it's a "cheat" and it doesn't handle anti-alised graphic correctly.

Adobe Flash on the other hand, handle it with grace, transparency data is simply imported along with the graphic without any extra work. This is what should had been expected, compared to this, I find Director's image transparency handling workflow unacceptable.

What is even more outrageous is when I'm importing a graphic, it ask me whether
I want to match the stage image bit or the imported image's bit depth data.

Why would I want to import an image of a lesser depth and increase it's depth during import ? For the sake of increasing file size for fun and laughter ?


I can understand if the image bit depth is higher than the stage and it ask me this question but when the imported bitmap's bit depth is lesser then the stage, I don't understand why Director still ask this question ! Not to mention that this is not even that important anymore in today's computer unless you're talking about floating point image formats.

Flash simply don't ask questions like these.

Adobe Director can interface with the computer's serial port and things like that using a third party Xtra.Flash can do the SAME thing using third party software.
Adobe Director offers real time 3D in the web.This is Director's last stand, and as far as I’m concern, it's the only reason it's still standing.
The support is extremely rudimentary, it doesn't even support animated texture !

I've seen some good games created using Director but again, there are programs out there created solely to do 3D games and the only reason Director is still holding up is due to its shockwave plugin penetration compare to its competitors. If Director doesn't do any more fundamental 3D support improvements beyond where version 8.5 left off, it's just a matter of time…
By the way, at the present moment, people are writing APIs for flash to handle software rendering of 3D models, the support might not be native but the point is Director is no longer the one and only that it used to be.

Let's hope that Director stop behaving like a wanna-be, “jack of all trade master of none” old man that refuses to let the old order of things go, else its days are numbered.

My life story...if you are interested...

When I was very young, I had always been fascinated by the world, I picked up a lot of hobbies that have to do with knowledge collection and understanding, from drawing, origami, magic tricks to astrology, numerology and so forth…

As time went by, Science related topics seem to hold my interest more and it soon overshadows everything else for they do not satisfy my quest for true understanding.

At the age of 11 after watching Power Rangers, I was mesmerized by the “Command Center” with all its flashing lights and computer “beeps”. It looks so high-tech to me then, makes me feel science and technology is the future that is to come, I fall in love with that “Future”.

At the age of 12, I started to spend all my time playing with batteries, light bulbs etc…
I would spend hours being in awe as to how and why when everything is connected, it gives off light.

I’m fascinated by science and all that it has given us. I broke a lot of bulbs, glasses and even spill a couple of chemical experiments but my mother had always been supportive of my desire to understand.

I soon get bored with conventional electrical experiments, I want the “Lights” to flash automatically instead of me having to do it manually.
My Grandfather upon seeing my enthusiasm, introduced me to the wonderful world of electronics.
“Cool!” I say to myself, “How does the light switch on and off without user input ? “
I eventually spend two years going all “electronic” crazy.

By age 14, I have transformed my “storeroom” into a mini room filled with flashing lights and sound, it even have a simple water detection circuit but it’s all too lame to be mention. Ha ha ha

At the age of 15, after watching Star Trek, The Next Generation with its cool computer interfaces and speech recognition computers, I set out to do just that with electronics.
However I simply cannot finance myself buying all those electronic parts over time. I thought this is it.

I soon have a computer brought for me to do my “school work”, initially I try to be like every other school boys, to get into the “Computer Games” craze.
However after playing games for one day, I’m already disturbed by the fact that I’m playing a game instead of making it.

By the second day of owning a computer I set out to learn computer programming, in one year, I exposed myself to Visual Basic, C++, Pascal Delphi, Java, Javascript, vbscript, HTML, Perl etc…though I have to say that I no longer remember them all as a single entity for all programming languages are more or less the same. I soon get the overall idea of what computer programming is about.

At the age of 16, I created a couple of programs but the one that are most memorable is a series of speech recognition applications that act and behaves similarly to the Computers I see in Star Trek, The Next Generation. I was thrill !

At the age of 17, after seeing computer animations like Jimmy Neutron and Final Fantasy the spirit within, I was so fascinated by what computer can do graphically that I move on to the world of computer graphics !

After my military service at age 22, I continue to pursue my interest in computer programming, interface designs and the almighty computer graphics.

At the age of 23, which is where I am now at this point in writing, my 3D work hit front page cover in the Photoshop *.PSD Magazine.

I am currently a freelancer and I love to embrace and experiment on all sorts of projects that are fun and challenging.

All my achievements I give it to God. For without him, I’m nothing.