I created my new website with JoomLa!
BLProductions
I'll slowly phase out from Blogger and use that website. Though, I must warn you, that website is only on when I'm on. I'm usually online most of the time, so don't worry...
Sunday, 20 December 2009
Saturday, 19 December 2009
AI
Artificial Intelligence eh? I wonder have I ever disclosed the AI system of Mr Ball? It's not that advanced really, as compared to today's AI, which uses things like Neural Networks and stuff like that. Those are serious maths, but in Mr Ball's case, the AI system is basically a...
Random Number Generator
Not convinced that the whole game is governed by a random number generator? Well, here's the proof:
See the random(...) command there? That's the proof!
Well, I'm just using what's given to me in Game Maker to my advantage. But it's just a number generator, how significant is it?
Now, the whole AI system of the enemy is basically like this:
-choose a random attack
-executes that attack
-repeat
But then, if you were given a chance to look deeper into the source code, it's not that simple. It used to be only that simple, but as the AI system grew and matured for 4 years, it has many more additions.
The AI system is actually a big timer. Whenever the timer reaches its target, it executes a long list of codes, which is the "main code" for the boss character (the one that makes the boss attack).
When the battle begins, the boss character sets one of its properties, aprev, to -1. This property just means "previous attack". Each attack has its own id number.
Attacks that are very simple will not change the value of aprev. But for an attack that is made of chains of different motions and animations, that attack change the value of aprev to its id number.
Every boss has this part of code:
if(aprev>-1)
{
a=aprev;
}
else
{
a=floor(random(.... /*Number of attacks*/))
}
which basically means that when "aprev>-1", keep executing the same attack as the previous, otherwise, choose another random attack.
Chained Attacks (the ones like the Deperation Attacks, or attacks that require the boss to move to a specific place) are subdivided into many different parts, which are called "phases" in the system. So, everytime the "main code" is executed and a Chained Attack is chosen, the "main code" will execute once for every phase.
This may sound a bit confusing, but that's just the way how Mr Ball works.
This system, as I have said, it's about 4 years old. The longest "main code" that I have written so far stretches for 958 lines (around 17.8 KB, for about 30 different attacks, in Mr Ball 2D)
There is one bad flaw about this system though, it's very HARD to debug. Yea, whenever something goes wrong, sometimes, it's very difficult to look for the error.
Another bad thing about this system is that the timer for the "main code" must always be reset. If the timer were to stop, the main code will not execute and the boss will do nothing. Now, this may not be so bad in some cases, but most of the time, when the boss stops doing anything, the level becomes boring. This is usually one of the most annoying bugs in the game.
Well, that's all about the basics of the AI system of Mr Ball. Nothing much to it really, it's just a creation of my imagination. It may not be the best, but as long as it works, it's good enough for me. See you then!
Random Number Generator
Not convinced that the whole game is governed by a random number generator? Well, here's the proof:
See the random(...) command there? That's the proof!
Well, I'm just using what's given to me in Game Maker to my advantage. But it's just a number generator, how significant is it?
Now, the whole AI system of the enemy is basically like this:
-choose a random attack
-executes that attack
-repeat
But then, if you were given a chance to look deeper into the source code, it's not that simple. It used to be only that simple, but as the AI system grew and matured for 4 years, it has many more additions.
The AI system is actually a big timer. Whenever the timer reaches its target, it executes a long list of codes, which is the "main code" for the boss character (the one that makes the boss attack).
When the battle begins, the boss character sets one of its properties, aprev, to -1. This property just means "previous attack". Each attack has its own id number.
Attacks that are very simple will not change the value of aprev. But for an attack that is made of chains of different motions and animations, that attack change the value of aprev to its id number.
Every boss has this part of code:
if(aprev>-1)
{
a=aprev;
}
else
{
a=floor(random(.... /*Number of attacks*/))
}
which basically means that when "aprev>-1", keep executing the same attack as the previous, otherwise, choose another random attack.
Chained Attacks (the ones like the Deperation Attacks, or attacks that require the boss to move to a specific place) are subdivided into many different parts, which are called "phases" in the system. So, everytime the "main code" is executed and a Chained Attack is chosen, the "main code" will execute once for every phase.
This may sound a bit confusing, but that's just the way how Mr Ball works.
This system, as I have said, it's about 4 years old. The longest "main code" that I have written so far stretches for 958 lines (around 17.8 KB, for about 30 different attacks, in Mr Ball 2D)
There is one bad flaw about this system though, it's very HARD to debug. Yea, whenever something goes wrong, sometimes, it's very difficult to look for the error.
Another bad thing about this system is that the timer for the "main code" must always be reset. If the timer were to stop, the main code will not execute and the boss will do nothing. Now, this may not be so bad in some cases, but most of the time, when the boss stops doing anything, the level becomes boring. This is usually one of the most annoying bugs in the game.
Well, that's all about the basics of the AI system of Mr Ball. Nothing much to it really, it's just a creation of my imagination. It may not be the best, but as long as it works, it's good enough for me. See you then!
Tuesday, 15 December 2009
Talk about cataclysm!
I just updated Mr Ball 2. I just made a new "special" attack, but it's not for Mr Ball (boohoo!)
Yea, it took me a total of 5 hours to finish it (and that includes 1-2 hours of constant testing). It wasn't easy, but I managed it. This "special" attack uses a new system.
Usually, the "special" attacks that I have made before this are all controlled by a single "controller". The Controller does all the work like moving the camera and timing the special effects and the voices.
This time, I split the work to 4 different "sub-controllers", 1 for creating the glyphs (my proudest work! =D), 1 for moving the camera, 1 for creating the random laser beams and 1 as the "master", which basically starts the whole process.
So, all that increased the source code by about 1MB. gg.com!
Yea, it took me a total of 5 hours to finish it (and that includes 1-2 hours of constant testing). It wasn't easy, but I managed it. This "special" attack uses a new system.
Usually, the "special" attacks that I have made before this are all controlled by a single "controller". The Controller does all the work like moving the camera and timing the special effects and the voices.
This time, I split the work to 4 different "sub-controllers", 1 for creating the glyphs (my proudest work! =D), 1 for moving the camera, 1 for creating the random laser beams and 1 as the "master", which basically starts the whole process.
So, all that increased the source code by about 1MB. gg.com!
Tuesday, 8 December 2009
Tales of vesperia FTW!
Though it's in Japanese, it's still fun! I guess spending some time learning Katakana is worth it. I love to use spellcasters in Tales games, especially Rita Mordio. Gosh, when you start to spam her most powerful spells, you'll know what I mean.
I'm gonna try Grade Farming, so when my sis and I start a new game, we can get more bonus. Seriously loving the game!
Anyway, I just came back from a scouts camp, and it was fun, if not amazing! There were so many firsts for me during the camp, like walking on burning charcoal (yea, that's right, I walked on burning hot charcoal!!) and surviving in the wilderness. Though, I have a very BIG phobia of the jungle, not because of the creepy noises and the darkness, but it's because of the insects and spiders. Really, I don't like insects at all. I can practically scream like a girl when I even think of it. Leeches, well, not too bad, but they are a little freaky to me.
The best part of the camp was the campfire. We did one of the longest sketches in our campfire history. It's basically a long musical/sketch thing where we spontaneously insert a music/parody of a music randomly. The list of music is in mah friend's blog.
Hmm... 30 over music in a single sketch.
I came back all battered up and bruised, with cuts and slits all over my hands, all because of my carelessness while cutting the bamboo. Never knew bamboo was that, erm... sharp. To tell you the truth, I never really felt anything slicing my epidermis and through my dermis while I was cutting the bamboo. It was when I saw my hand bleeding, then I noticed something just opened a wound on my hands (wait, make that 11 wounds!)
So, through out the entire camp, I had to endure the sharp and intense pain from the cuts. It was worse when I dipped my hand into the river water and touched salt.
Did I mention how much fun chopping logs can give you? Though it may be tiring, but when you feel the satisfaction from breaking the log into two, the tired feeling seems to fade away. You feel all pumped up.
Too bad I do not have any photos as I did not bring my camera along. To summarise it, it was really awesome! Encountered 5 leeches, but only 2 of them managed to suck my blood.
I'm gonna try Grade Farming, so when my sis and I start a new game, we can get more bonus. Seriously loving the game!
Anyway, I just came back from a scouts camp, and it was fun, if not amazing! There were so many firsts for me during the camp, like walking on burning charcoal (yea, that's right, I walked on burning hot charcoal!!) and surviving in the wilderness. Though, I have a very BIG phobia of the jungle, not because of the creepy noises and the darkness, but it's because of the insects and spiders. Really, I don't like insects at all. I can practically scream like a girl when I even think of it. Leeches, well, not too bad, but they are a little freaky to me.
The best part of the camp was the campfire. We did one of the longest sketches in our campfire history. It's basically a long musical/sketch thing where we spontaneously insert a music/parody of a music randomly. The list of music is in mah friend's blog.
Hmm... 30 over music in a single sketch.
I came back all battered up and bruised, with cuts and slits all over my hands, all because of my carelessness while cutting the bamboo. Never knew bamboo was that, erm... sharp. To tell you the truth, I never really felt anything slicing my epidermis and through my dermis while I was cutting the bamboo. It was when I saw my hand bleeding, then I noticed something just opened a wound on my hands (wait, make that 11 wounds!)
So, through out the entire camp, I had to endure the sharp and intense pain from the cuts. It was worse when I dipped my hand into the river water and touched salt.
Did I mention how much fun chopping logs can give you? Though it may be tiring, but when you feel the satisfaction from breaking the log into two, the tired feeling seems to fade away. You feel all pumped up.
Too bad I do not have any photos as I did not bring my camera along. To summarise it, it was really awesome! Encountered 5 leeches, but only 2 of them managed to suck my blood.
Tuesday, 1 December 2009
The power to conquer demons, Fatal Circle!
My Mr Ball 2 is still suspended as I do not have the mood to continue, but I won't give up on it. I still have 3 more levels to create before I can make the final build of the game. In the meantime, I'm trying to make an "extreme" version of Breakout. It won't be the normal, move platform, bounce ball, hit brick type of game. There'll be more and I'll probably incorporate stuff from my Mr Ball game (don't worry, there won't be Mr Ball).
Mr Ball 3 will be a very "highly unlikely" game to be made, as I do not have plans for it. But who knows? Anyway, if I were gonna make it, I'm gonna have to remake the Battle System as it's getting quite old (2-3 years old to be precise) and it's too sophisticated to the point that it's very hard to add new things into it.
Well, that's basically all about my progress in Mr Ball.
You may have noticed that I'm not that active in blogging anymore. Actually, I just have too little time these days and everytime I come back from school, I'll doze off.
I'm kinda overdue for another Math Twister post, where I make everyday math a little bit more complicated for no apparent reason. Well, I will be digging something up, so you Math freakos out there who can't live without numbers, hold yer horses.
Mr Ball 3 will be a very "highly unlikely" game to be made, as I do not have plans for it. But who knows? Anyway, if I were gonna make it, I'm gonna have to remake the Battle System as it's getting quite old (2-3 years old to be precise) and it's too sophisticated to the point that it's very hard to add new things into it.
Well, that's basically all about my progress in Mr Ball.
You may have noticed that I'm not that active in blogging anymore. Actually, I just have too little time these days and everytime I come back from school, I'll doze off.
I'm kinda overdue for another Math Twister post, where I make everyday math a little bit more complicated for no apparent reason. Well, I will be digging something up, so you Math freakos out there who can't live without numbers, hold yer horses.
Wednesday, 25 November 2009
So....
Well, I know I haven't been blogging for quite sometime because of the holidays and all the EdBoard/Interact stuff. School life hasn't been any easier. At least right now I can relax a bit.
Recently I terkena Conjuntivitis, at least on my left eye. My right eye is partially infected, it hurts but it's not as red as my left eye. It's not very pleasant, but it's better than getting canker sores, or in other words, mouth ulcers. Yerr...
So, now that my eyes have almost recovered, I hope I can go for the Senior Camp later at 4th December. This would be my second time camping in a jungle (sorta). The first time was back in Standard 6.
Meanwhile, I shall ....
drink more coffee! (bet'cha didn't see that one coming!)
Recently I terkena Conjuntivitis, at least on my left eye. My right eye is partially infected, it hurts but it's not as red as my left eye. It's not very pleasant, but it's better than getting canker sores, or in other words, mouth ulcers. Yerr...
So, now that my eyes have almost recovered, I hope I can go for the Senior Camp later at 4th December. This would be my second time camping in a jungle (sorta). The first time was back in Standard 6.
Meanwhile, I shall ....
drink more coffee! (bet'cha didn't see that one coming!)
Thursday, 5 November 2009
Hot headed Bee Lee
Gah! What in the world!? Even if you're out of the committee already and your more so-called "senior" then us, that doesn't give you the rights to order my friend, and even me like that!
Come on, like you said, it's simple to do the task that you asked me to do. Why can't you do it? As least say like, "I'm sorry, but I can't do it", instead of "It's YOUR responsibility...". Don't try to think that since you're already out means that you don't have to do anything anymore. Don't even try to act all "professional" over me. What the f*** is that? And you call your self a (jawatan). Really? Do you even deserve to be called that?
I don't like the way you're treating the current (jawatan). Don't make me resort to physical means just to teach you what's respect and what's responsibility.
Clearly, you're just using the excuse of "Oh, Imma out of the committee, byes!" just to use the current committee. It's your task, so YOU do it. It was YOUR committee's issue, so YOU do it.
I always thought you were a person I can look up to, but apparently, I could not see through your skin. I have my own rights, and I'll fight for it.
I hope the person that I'm hating ACTUALLY read this, but I think that'll be highly unlikely.
Anyway, I'm just voicing out just how much I hate that person. Damn it! I feel like slapping him, oh wait, better yet, PUNCHING him, but then again, I have to control my anger. Physical attacks are really a no-no in public.
Seriously, some people just don't know what's responsibility and what's respect. This guy here, really no respect AT ALL. And he expects me to respect him. I ask, what for? If it's a war he wants, it's a war he shall get (yea, that's right, I got that from Narnia)
I can't reveal out who is that though, just to preserve his identity, omg, I don't even know why am I even doing that for him. Might as well let his name be known around the globe. Nah...
Anyway, to that most-hated person on my most-hated people list,
What President?
Come on, like you said, it's simple to do the task that you asked me to do. Why can't you do it? As least say like, "I'm sorry, but I can't do it", instead of "It's YOUR responsibility...". Don't try to think that since you're already out means that you don't have to do anything anymore. Don't even try to act all "professional" over me. What the f*** is that? And you call your self a (jawatan). Really? Do you even deserve to be called that?
I don't like the way you're treating the current (jawatan). Don't make me resort to physical means just to teach you what's respect and what's responsibility.
Clearly, you're just using the excuse of "Oh, Imma out of the committee, byes!" just to use the current committee. It's your task, so YOU do it. It was YOUR committee's issue, so YOU do it.
I always thought you were a person I can look up to, but apparently, I could not see through your skin. I have my own rights, and I'll fight for it.
I hope the person that I'm hating ACTUALLY read this, but I think that'll be highly unlikely.
Anyway, I'm just voicing out just how much I hate that person. Damn it! I feel like slapping him, oh wait, better yet, PUNCHING him, but then again, I have to control my anger. Physical attacks are really a no-no in public.
Seriously, some people just don't know what's responsibility and what's respect. This guy here, really no respect AT ALL. And he expects me to respect him. I ask, what for? If it's a war he wants, it's a war he shall get (yea, that's right, I got that from Narnia)
I can't reveal out who is that though, just to preserve his identity, omg, I don't even know why am I even doing that for him. Might as well let his name be known around the globe. Nah...
Anyway, to that most-hated person on my most-hated people list,
What President?
Monday, 2 November 2009
Gimme a break...
Seriously man, people are spamming my mail with chain letters. Especially my Hotmail account. ...
Now my Gmail.
I need not tell you that this is just another one of those hoaxes. Don't get fooled so easily. MSN won't be closing down anytime soon, don't worry.
Internet is definitely a place of knowledge and abuse. Don't believe everything you see on the net.
Now my Gmail.
I need not tell you that this is just another one of those hoaxes. Don't get fooled so easily. MSN won't be closing down anytime soon, don't worry.
Internet is definitely a place of knowledge and abuse. Don't believe everything you see on the net.
Monday, 19 October 2009
It's not just mail, it's deception!
Well, I wanna try to raise awareness among those who read my blog here on how dangerous the cyberworld can be.
As technologies become more and more advanced, with so many capabilities, exploiting them could mean a lot of ka-ching. A lot of people today just wanna get their hands on easy money by fooling other people.
Ever received this in your mail?
This "YouAreBlocked Team" claims that this is not a spam, well, yeah... right...
Remember to think twice before hitting that "Click Here". Sure, it may be fun if you could know who blocked you, but is it worth giving out your email account details to other people? Very dangerous...
Oh, and read this:
Dear,
How are you today? May this emergency appeal finds you well, I am sorry that I did not inform you about my travel to Africa
for a program. The program is taking place in three major Countries in Africa which includes Ghana, Nigeria and South Africa.
It has been a very sad and bad moment for me that the present condition i found myself is so intoxicated to explain.
I am stranded in Nigeria because I forgot my little bag and my ATM card in a Taxi where my money ,documents and other
valuable things were kept, I am so confused right now that I do not know what to do or where to go. I need your urgent help
and i want you to please loan me the sum of $2,000 USD to enable me sort-out myself and confirm my Basic Traveling Allowance
fees back home, but if you could not come up to the requested amount due to the short notice, kindly go ahead and send to me
any amount you can afford right now and email me the transfer details I will be so grateful to receive it. However, I will
return the money back to you as soon as I get back home I promise.
.....
Below is the information where to send me the western union.
Receiver's Name: (...............)
Address: 45 Methodist Church Avenue
City: Ikeja
State: Lagos
Zip Code:23401
Country: Nigeria
Test Question: Who is the receiver?
Answer: (...............)
After you have sent the money email me the western union transfer details such as:
MTCN (Money transfer control number)
Amount Needed: $2,000 USD I will check my email soonest to pick up the western union transfer details to enable me return
back home with the next available flight, I need the transfer # MTCN (money transfer control number) as soon as possible.
Thanks,
(...............)
Recently, my friend's email got "hijacked"... (Poor guy), and now, these idiots are using his email to spam other people (his contacts). I replaced parts of the email with "(...............)" to keep him anonymous, but anyway, the "(...............)" were actually my friend's name.
By studying the mail, there are a few "flaws". I doubt my friend has any relations or any connections with "45 Methodist Church Avenue". And Nigeria? He's currently having exams in Malaysia, and you tell me he's halfway around the globe? Really?
Anyway, here's a tip: Just delete spams. Don't read them. Leave them alone.
Oh, some spammers are smart. They disguise themselves as a large company staff, such as Microsoft or the email service provider and asks you to provide your account details for things that are "related to your account" and if you refuse to do so, they threaten to shut down your account.
Yea anyway, keep your account password to yourself. ;)
As technologies become more and more advanced, with so many capabilities, exploiting them could mean a lot of ka-ching. A lot of people today just wanna get their hands on easy money by fooling other people.
Ever received this in your mail?
This "YouAreBlocked Team" claims that this is not a spam, well, yeah... right...
Remember to think twice before hitting that "Click Here". Sure, it may be fun if you could know who blocked you, but is it worth giving out your email account details to other people? Very dangerous...
Oh, and read this:
Dear,
How are you today? May this emergency appeal finds you well, I am sorry that I did not inform you about my travel to Africa
for a program. The program is taking place in three major Countries in Africa which includes Ghana, Nigeria and South Africa.
It has been a very sad and bad moment for me that the present condition i found myself is so intoxicated to explain.
I am stranded in Nigeria because I forgot my little bag and my ATM card in a Taxi where my money ,documents and other
valuable things were kept, I am so confused right now that I do not know what to do or where to go. I need your urgent help
and i want you to please loan me the sum of $2,000 USD to enable me sort-out myself and confirm my Basic Traveling Allowance
fees back home, but if you could not come up to the requested amount due to the short notice, kindly go ahead and send to me
any amount you can afford right now and email me the transfer details I will be so grateful to receive it. However, I will
return the money back to you as soon as I get back home I promise.
.....
Below is the information where to send me the western union.
Receiver's Name: (...............)
Address: 45 Methodist Church Avenue
City: Ikeja
State: Lagos
Zip Code:23401
Country: Nigeria
Test Question: Who is the receiver?
Answer: (...............)
After you have sent the money email me the western union transfer details such as:
MTCN (Money transfer control number)
Amount Needed: $2,000 USD I will check my email soonest to pick up the western union transfer details to enable me return
back home with the next available flight, I need the transfer # MTCN (money transfer control number) as soon as possible.
Thanks,
(...............)
Recently, my friend's email got "hijacked"... (Poor guy), and now, these idiots are using his email to spam other people (his contacts). I replaced parts of the email with "(...............)" to keep him anonymous, but anyway, the "(...............)" were actually my friend's name.
By studying the mail, there are a few "flaws". I doubt my friend has any relations or any connections with "45 Methodist Church Avenue". And Nigeria? He's currently having exams in Malaysia, and you tell me he's halfway around the globe? Really?
Anyway, here's a tip: Just delete spams. Don't read them. Leave them alone.
Oh, some spammers are smart. They disguise themselves as a large company staff, such as Microsoft or the email service provider and asks you to provide your account details for things that are "related to your account" and if you refuse to do so, they threaten to shut down your account.
Yea anyway, keep your account password to yourself. ;)
Lasers run wild!
I just recently finished the 7th level in Mr Ball 2. I'm halfway through the game now, but there's still a lot to do. Anyway, I gotta say, after playing that level, it seems pretty tough.
As you can see, the level is set on a very tall platform, surrounded by 5 platforms rotating around it. But, that's not it.
See those rings around the battle area, they aren't just for decorations. They are for making your life harder!
It's recommended to have a very high defense points if anyone were to succeed in this level as the lasers are quite damaging for a weak Mr Ball. Oh, you can't stand still on the moving platform, you have to keep moving. This adds more to the challenge.
But why do you even need to stand on those moving platforms? Well, occasionally, a Power Orb will appear, which makes the enemy invulnerable. Thankfully, the Power Orbs are easy to destroy, and if your Attack Points are high enough, it only takes about 3-4 seconds to destroy it.
The recent addition to this level is that, once you deplete the enemy's HP enough, 5 Power Orbs will appear at once, and you're gonna have to destroy all of them. Quite a simple task, if you'd ask me.
Why lasers? Alright, this question is very hard to answer, but then I find lasers are quite fun to play with, and this level makes the boss in Level 5 (the one that uses Lasers) look like child's play.
Oh, and Mr Ball in 2D is out! The very first Beta version! Though, I don't plan to release it out here in my blog due to some "problems" ;)
Oh, aren't I supposed to be studying? Yea, actually, I should be studying, but to me, Mr Ball comes first! Ok, let's get started with Biology!
As you can see, the level is set on a very tall platform, surrounded by 5 platforms rotating around it. But, that's not it.
See those rings around the battle area, they aren't just for decorations. They are for making your life harder!
It's recommended to have a very high defense points if anyone were to succeed in this level as the lasers are quite damaging for a weak Mr Ball. Oh, you can't stand still on the moving platform, you have to keep moving. This adds more to the challenge.
But why do you even need to stand on those moving platforms? Well, occasionally, a Power Orb will appear, which makes the enemy invulnerable. Thankfully, the Power Orbs are easy to destroy, and if your Attack Points are high enough, it only takes about 3-4 seconds to destroy it.
The recent addition to this level is that, once you deplete the enemy's HP enough, 5 Power Orbs will appear at once, and you're gonna have to destroy all of them. Quite a simple task, if you'd ask me.
Why lasers? Alright, this question is very hard to answer, but then I find lasers are quite fun to play with, and this level makes the boss in Level 5 (the one that uses Lasers) look like child's play.
Oh, and Mr Ball in 2D is out! The very first Beta version! Though, I don't plan to release it out here in my blog due to some "problems" ;)
Oh, aren't I supposed to be studying? Yea, actually, I should be studying, but to me, Mr Ball comes first! Ok, let's get started with Biology!
Friday, 9 October 2009
PS2 Dev
I came across this cool SDK for PS2 games. But first, before I even get started, I need a good Emulator. I think PCSX2 is good, but then my computer doesn't really work well with all the fancy PS2 stuff.
I just need to find a way to get the emulator working for me, because I don't plan to burn all PS2 games into expensive DVDs just to test it on my sister's PS2. Besides, that's my sister's PS2!
I really want to develop a console game. It's like gg.com for me!
I just need to find a way to get the emulator working for me, because I don't plan to burn all PS2 games into expensive DVDs just to test it on my sister's PS2. Besides, that's my sister's PS2!
I really want to develop a console game. It's like gg.com for me!
Wednesday, 7 October 2009
Atropine Sulphate
I've learned my lesson the hard way... Never assume medicines do not have side effects.
I took my anti-diarrhoea drug this morning, just to end up really sick and nauseous during the exam. I think I did really badly in my BM test because it was very hard to think. Just thinking of the words make me wanna throw up. (Well, I did threw up in the toilet. Sigh... there goes my RM2.80 chicken rice)
Atropine Sulphate was the drug's name. It's really a nasty drug. Even doses as small as 0.025 mg (A grain of rice weighs around 20-30 mg, so you can imagine how small that dosage is!) can cause a major bad hair day. Now seriously, guys, if you are given this medication, be sure to take it when the time is right only, ie, when you're not driving, or taking an exam like me!
Sigh... I can't imagine how badly I screwed up for BM. But, I did manage to answer most of the questions. Oh, what the -toot-!
I took my anti-diarrhoea drug this morning, just to end up really sick and nauseous during the exam. I think I did really badly in my BM test because it was very hard to think. Just thinking of the words make me wanna throw up. (Well, I did threw up in the toilet. Sigh... there goes my RM2.80 chicken rice)
Atropine Sulphate was the drug's name. It's really a nasty drug. Even doses as small as 0.025 mg (A grain of rice weighs around 20-30 mg, so you can imagine how small that dosage is!) can cause a major bad hair day. Now seriously, guys, if you are given this medication, be sure to take it when the time is right only, ie, when you're not driving, or taking an exam like me!
Sigh... I can't imagine how badly I screwed up for BM. But, I did manage to answer most of the questions. Oh, what the -toot-!
Tuesday, 6 October 2009
Play that BGM!
Well, the next boss fight in my life will be in the School Dungeon, tomorrow. Hmm... Crap... So not looking forward to it!
And why does it have to happen on the same day as PMR? It's as if I'm retaking PMR, with more subjects. Gah, I can see that the teachers are taunting all of us Form 4's and saying things like:
"Muahahaha, pay for your transgressions, blah Form 4s!"
"Feel the wrath of exam papers!"
"I can't wait to see you in agony! Hahahaha!" *cue lighting*
"Hi! How are you class!?", said the English teacher
Well, life is full of hurdles. It's not a straight and smooth track when you can just run blindly and not hit anything. I mean, come on, life is not that easy.
It's time to continue studying Sejarah. Sigh... screw Sejarah man...
And why does it have to happen on the same day as PMR? It's as if I'm retaking PMR, with more subjects. Gah, I can see that the teachers are taunting all of us Form 4's and saying things like:
"Muahahaha, pay for your transgressions, blah Form 4s!"
"Feel the wrath of exam papers!"
"I can't wait to see you in agony! Hahahaha!" *cue lighting*
"Hi! How are you class!?"
Well, life is full of hurdles. It's not a straight and smooth track when you can just run blindly and not hit anything. I mean, come on, life is not that easy.
It's time to continue studying Sejarah. Sigh... screw Sejarah man...
Saturday, 26 September 2009
OMG! Home made touch screen!
I saw a video on youtube, which teaches you how to make a cheap DIY Multi touch screen. I can't remember the link, but you can try searching for MTmini on google/youtube.
It basically consists of a cardboard box, an acrylic/plastic sheet/glass, a webcam, some tape, computer, and good lighting (which sadly I do not have).
Yeah, so I tried building it. It's freaking simple, except for the part where I have to cut some acrylic sheet. I've never done it before, and neither did I ever use a scoring tool.
The small notepad is there just to prop up the cam a little. My webcam is just a little too stubborn. It just won't sit still!
Here you can see the acrylic sheet and the A4 paper. Yea, you need A4 paper.
Believe it or not, that is basically it. The surface that you're gonna touch is the paper.
Plug in the webcam, download the appropriate software that is written in the sidebar of the youtube video.
Here's a short demo:
Still, it's a little glitchy because of the lighting. You need a seriously even lighting here because having shadows of your entire hand on the surface can screw up the software because it works by looking at the shadows of your fingertips that are casted onto the paper. Yea, it'll just pick up any shadow and interpret that as your finger.
It basically consists of a cardboard box, an acrylic/plastic sheet/glass, a webcam, some tape, computer, and good lighting (which sadly I do not have).
Yeah, so I tried building it. It's freaking simple, except for the part where I have to cut some acrylic sheet. I've never done it before, and neither did I ever use a scoring tool.
The small notepad is there just to prop up the cam a little. My webcam is just a little too stubborn. It just won't sit still!
Here you can see the acrylic sheet and the A4 paper. Yea, you need A4 paper.
Believe it or not, that is basically it. The surface that you're gonna touch is the paper.
Plug in the webcam, download the appropriate software that is written in the sidebar of the youtube video.
Here's a short demo:
Still, it's a little glitchy because of the lighting. You need a seriously even lighting here because having shadows of your entire hand on the surface can screw up the software because it works by looking at the shadows of your fingertips that are casted onto the paper. Yea, it'll just pick up any shadow and interpret that as your finger.
Wednesday, 23 September 2009
Damage invalid!
Mr Ball 2D has a Shield! Another new feature in the Mr Ball series. Because it's so impossible to avoid all the enemy's attacks (making death so damn inevitable) in Mr Ball 2D, I made a shield for Mr Ball, and increased his max MP to 300. The shield should only be used at the right time. Spamming the shield by holding down the X-key just drains your MP. But when used at the right moment, ie, when being attacked, the shield can absorb the damage and turn it into extra MP! Yay!
Anyway, I just came back from Shan Min's house. We were having a sort of a game party. Haha, Heart Attack was really fun, though I had to sacrifice half of my deck of cards. :(
Anyway, I just came back from Shan Min's house. We were having a sort of a game party. Haha, Heart Attack was really fun, though I had to sacrifice half of my deck of cards. :(
Saturday, 19 September 2009
Progress...
Mr Ball 2D is seriously growing fast. In just a month of development, it has grown to 2MB in size. I think one of the big contributors to the size is the sprites. And the AI code for the boss is incredible! If you copy and pasted it into Microsoft Word, it would stretch for 14 pages! OMG! I've never typed so much for a boss before (780+ lines of code, fuyoh!). The AI code is capable of executing 21 types of attacks currently. Don't worry, more attacks are coming up. Just got to be a little imaginative. Hehehehe!
Sad thing is, the game is a little glitchy. The game shuts down randomly while running, so it'll be a bummer when you successfully kicked so much of the boss' HP. I'm gonna keep testing the game to see if it's caused by a memory leak, since I'm loading quite a number of external resources.
Sad thing is, the game is a little glitchy. The game shuts down randomly while running, so it'll be a bummer when you successfully kicked so much of the boss' HP. I'm gonna keep testing the game to see if it's caused by a memory leak, since I'm loading quite a number of external resources.
Friday, 18 September 2009
Gutentag!
Gosh! Exams are getting closer and closer. Seriously hate exams. Gah!! Anyway, here's a random screencap of Mr Ball 2D:
It's a bit dark right? It's the screen-darkening effect that I've always used in my Mr Ball to make things a little more dramatic. And and, things look smoother than before, in terms of graphics la, after I switched on the so-called Linear Interpolation thingie.
Anyway, Mr Ball 2D will be done by the end of October. In the meantime, I have to pick up a book and start studying! Why is it so hard to do so???
It's a bit dark right? It's the screen-darkening effect that I've always used in my Mr Ball to make things a little more dramatic. And and, things look smoother than before, in terms of graphics la, after I switched on the so-called Linear Interpolation thingie.
Anyway, Mr Ball 2D will be done by the end of October. In the meantime, I have to pick up a book and start studying! Why is it so hard to do so???
Sunday, 13 September 2009
Okami
I started playing a PS2 game, which I've never seen before! It's called Okami and the graphics are very unique. It has this watercolour feel. It kinda suits the main theme of the game which talks about Japanese folklore and things like that. You basically control a wolf, which is a god named Amaterasu. Like most of the games I've played, this is one of those save-the-world type of game.
Yea, the evil 8-headed demon thing called Orochi was released from its seal somehow when someone pulled the sacred sword, of which I have forgotten the name. Gah! And so, you know what comes next.
There are also battles, and you battle with your weapons that you've equipped and also, get ready for this, a paintbrush and a rice paper!
YEAP! That's right, you fight by drawing! Isn't that cool! Ok, the brush and paper are not only weapons of destruction, they can help you to traverse through dungeons and explore hidden places. This cool brush, called the Celestial Brush, has a total of 13 powers apparently, and each must be unlocked by completing the constellations in the sky when they appear (just put a dot on the sky using the paintbrush to form a star).
The powers are damn cool, you can make a sun/moon appear, thus changing the time of day. Then you have the Bloom power, where you can make withered plants look lively again. Somemore, there's my favourite, the Cherry Bomb, which can blow stuff apart, especially enemies! And the one of the most basic of all power, the Power Slash, which can slash almost anything (except really solid stuff!)
Yea, the evil 8-headed demon thing called Orochi was released from its seal somehow when someone pulled the sacred sword, of which I have forgotten the name. Gah! And so, you know what comes next.
There are also battles, and you battle with your weapons that you've equipped and also, get ready for this, a paintbrush and a rice paper!
YEAP! That's right, you fight by drawing! Isn't that cool! Ok, the brush and paper are not only weapons of destruction, they can help you to traverse through dungeons and explore hidden places. This cool brush, called the Celestial Brush, has a total of 13 powers apparently, and each must be unlocked by completing the constellations in the sky when they appear (just put a dot on the sky using the paintbrush to form a star).
The powers are damn cool, you can make a sun/moon appear, thus changing the time of day. Then you have the Bloom power, where you can make withered plants look lively again. Somemore, there's my favourite, the Cherry Bomb, which can blow stuff apart, especially enemies! And the one of the most basic of all power, the Power Slash, which can slash almost anything (except really solid stuff!)
Thursday, 27 August 2009
Stupid hummm
I dunno why, but nowadays, when I record with my Microphone, it's producing a strange hum. I tried searching through the net and the only possible factor I can think of is electrical interference. Not that I'm 100% sure though. It could also be that I dropped my microphone until it gone all funky. Grr!1 There goes RM30!!!
Anyway, here's Mr Ball in 2D first and probably last special attack (because I'm not really a big fan of making Special Effects for these kind of attacks):
Until I get my mic fixed, there won't be any incantations... Bummer...
Anyway, here's Mr Ball in 2D first and probably last special attack (because I'm not really a big fan of making Special Effects for these kind of attacks):
Until I get my mic fixed, there won't be any incantations... Bummer...
Wednesday, 19 August 2009
Demo
Anyway, I'm proud to say that my Mr Ball in 2D is coming along well. A little too well, I suppose... I made the boss kinda hard to kill, because he keeps spamming the lasers! I can't even kill him with 5 lives! Ooh, I did a great job! Hahaha!
I doubt 512 MB of RAM can cope with the vast amount of objects, especially the lasers, but who knows, maybe 512MB is enough.
Do take note however that the mode shown in the video is Insane Mode, that means, the boss will go all out on the player and doesn't matter whether the player wins or loses.
The AI is fairly simple and this AI system has been used through my Mr Ball games, with a little addition la, of course. What the enemy will do is:
As you deplete the boss' HP, the boss will choose his attacks faster, giving less time for the player to recover after getting pummeled. Now, in the Normal mode, the boss won't really speed up that much, but in the Insane Mode, Woooowie!
Anyway, the Insane Boss will speed up so much, he'll take no longer than 0.1 second to choose an attack, so that's one attack after another after another!
Oh, good news! Most of the projectiles (spears, CDs, etc), can be repelled off by the water gun!
You can also see the "Critical Moment" in the video (when the screen becomes white-ish). That's the right time for the player to deal some significant damage to the enemy. All he needs to do is press [Space]. With this, the level should not take too long to complete (well, hopefully).
Anyway, currently, the boss has 11 types of attacks. Some are variations of others, but they all are for one thing only, to destroy Mr Ball!
I doubt 512 MB of RAM can cope with the vast amount of objects, especially the lasers, but who knows, maybe 512MB is enough.
Do take note however that the mode shown in the video is Insane Mode, that means, the boss will go all out on the player and doesn't matter whether the player wins or loses.
The AI is fairly simple and this AI system has been used through my Mr Ball games, with a little addition la, of course. What the enemy will do is:
- The enemy chooses an attack from a list of attacks after a few seconds.
- The enemy executes that attack.
As you deplete the boss' HP, the boss will choose his attacks faster, giving less time for the player to recover after getting pummeled. Now, in the Normal mode, the boss won't really speed up that much, but in the Insane Mode, Woooowie!
Anyway, the Insane Boss will speed up so much, he'll take no longer than 0.1 second to choose an attack, so that's one attack after another after another!
Oh, good news! Most of the projectiles (spears, CDs, etc), can be repelled off by the water gun!
You can also see the "Critical Moment" in the video (when the screen becomes white-ish). That's the right time for the player to deal some significant damage to the enemy. All he needs to do is press [Space]. With this, the level should not take too long to complete (well, hopefully).
Anyway, currently, the boss has 11 types of attacks. Some are variations of others, but they all are for one thing only, to destroy Mr Ball!
Tuesday, 18 August 2009
Never give the enemy the advantage!
Well, I didn't really obey that saying, so I gave Mr Ball's enemy some lasers!
I added some new features that never existed in any of my Mr Ball games, which is the so-called "Critical Moment". It's the moment when the enemy is going to execute an attack. Before the enemy sucessfully unleashes his attack, the player has to press [SPACE] to sort of like "counter" him, and cancels of his attack. Quite a good thing actually. I might implement this into my 3D Mr Ball game.
A number of visual effects were incorporated, such as the err... crappy zoom blur effect when the player successfully executed the Critical Moment.
Oh, and I also used the particle system in Game Maker. This is really the first time I am using it, and the results are stunning!
I added some new features that never existed in any of my Mr Ball games, which is the so-called "Critical Moment". It's the moment when the enemy is going to execute an attack. Before the enemy sucessfully unleashes his attack, the player has to press [SPACE] to sort of like "counter" him, and cancels of his attack. Quite a good thing actually. I might implement this into my 3D Mr Ball game.
A number of visual effects were incorporated, such as the err... crappy zoom blur effect when the player successfully executed the Critical Moment.
Oh, and I also used the particle system in Game Maker. This is really the first time I am using it, and the results are stunning!
Sunday, 16 August 2009
Ah! It's finally taking shape
So, another 2 hours of tweaking and drawing, and I finally got a working boss fight:
It's not really done yet though. Originally, this boss has like 20 attacks. I'm planning to make more for this boss. I want to make this one of the hardest boss fights (I mean seriously HARD) in Mr Ball history!
The spears are greatly improved from the original. It is not able to move in all 360 degrees. Originally, it's only able to move in 8 directions. Hahaha!
It's not really done yet though. Originally, this boss has like 20 attacks. I'm planning to make more for this boss. I want to make this one of the hardest boss fights (I mean seriously HARD) in Mr Ball history!
The spears are greatly improved from the original. It is not able to move in all 360 degrees. Originally, it's only able to move in 8 directions. Hahaha!
That's weird...
Well, anyway, in just 3-4 hours, I finally finished the foundation for the Mr Ball in 2D mini game:
The background's kinda dynamic, so it moves and and fades, creating a dark and gloomy environment. It works well with the music.
The background's kinda dynamic, so it moves and and fades, creating a dark and gloomy environment. It works well with the music.
Saturday, 15 August 2009
The heck?
After looking through about DarkBASIC, I'm not quite happy with the collision detection for 2D. It's very insufficient for me. So, what I think is, I'll try to use DarkBASIC for 3D instead.
Anyway, I'll use back again my trusty old Game Maker. Sigh... How I wish I can master DarkBASIC... but you know what they say, it takes practice.
But, for 2D games, Game Maker 6.1 is seriously great.
Anyway, I'll use back again my trusty old Game Maker. Sigh... How I wish I can master DarkBASIC... but you know what they say, it takes practice.
But, for 2D games, Game Maker 6.1 is seriously great.
Thursday, 13 August 2009
The game is being recreated!
The first ever game I made (well, not really MADE! But modified from another game), is sorta making a comeback. I'm planning to write it in DarbBASIC so that I can learn how to program in DarkBASIC. The language seems simple enough for me, so yea, I'm giving it a try. I don't wanna rely too much on Game Maker already.
All I'm gonna do is recreate the Secret Battle of BeeCatzArena game (mod of the original Catz game, which I do not own), but instead of the Cat as the main character, Mr Ball will be the main character. This game is actually what started the Mr Ball project, would you believe that?
Anyway, a preview of the BeeCatzArena I posted long time ago: http://blproductions93.blogspot.com/2008/07/ooh.html
Yea, so anyway, I can't wait to get started. Though, I'm still very very new to DarkBASIC.
All I'm gonna do is recreate the Secret Battle of BeeCatzArena game (mod of the original Catz game, which I do not own), but instead of the Cat as the main character, Mr Ball will be the main character. This game is actually what started the Mr Ball project, would you believe that?
Anyway, a preview of the BeeCatzArena I posted long time ago: http://blproductions93.blogspot.com/2008/07/ooh.html
Yea, so anyway, I can't wait to get started. Though, I'm still very very new to DarkBASIC.
Wednesday, 12 August 2009
Blast it to bits!
Wow! I never knew Mr Ball could control a thermonuclear explosion!
A very simple attack, Mr Ball says some incantation, then the stage explodes! Had a few problem with the texturing, but in the end, it looks damn cool!
A very simple attack, Mr Ball says some incantation, then the stage explodes! Had a few problem with the texturing, but in the end, it looks damn cool!
Monday, 10 August 2009
Rest in peace
So, today, I received a terrible news that my teacher's spouse passed away. I won't disclose the name here. I really feel sorry for ..., but the only think I can do is wonder. I'm just curious as to how it happened, but some questions are best left unanswered, though, I'm still very eager to know the real truth behind the sudden passing. I plan to attend the funeral, just to pay my last respects. This just reminds me of my grandma. Death is something very unpredictable. But let's look at the bright side, without death, this whole world will be overcrowded, and everyone will be competing for food, resources and what not.
Thursday, 6 August 2009
Impale 'em!
And there you have it! Mr Ball's 5th Special Attack, the mock version of the "Ground Dasher" but I prefer calling it the "Raging Tremor"!
It's going to be the second special attack you can obtain. It does pack a punch in the ass, provided that the enemy is in the active site of the attack. Lol! Active site! Sorry, got caught up with bio there.
One big disadvantage is that it is kinda inaccurate. It's only very useful for slow moving enemies, It's possible to miss the enemies who are moving at moderate speeds entirely.
Here's a demo:
Wow, in just about 1.5 months, the source code of Mr Ball 2 grew by 3 MB. WTF? Anyway, I'm proud to see my Mr Ball growing!
Wednesday, 5 August 2009
Luminol!!!!
To be honest, Luminol is my favourite chemical. Why? Because it can glow! (Provided that you mix the right chemicals la)
Awh,... don you just love that blue glow of Mr. Luminol??
If I can get hold of at least a few ml of Luminol, I'll be over the moon, no, over Mars! I seriously wanna try making my own glowy stick. Did I mention that I love chemistry?
Awh,... don you just love that blue glow of Mr. Luminol??
If I can get hold of at least a few ml of Luminol, I'll be over the moon, no, over Mars! I seriously wanna try making my own glowy stick. Did I mention that I love chemistry?
Sunday, 2 August 2009
Rock n Roll!
I'm in the middle of making the sixth level for Mr Ball, well, here's a little screen cap:
Well, I think this is a better view of the stalagmites:
As you can see, it's the rock-using boss. Well, I really love the stalagmites. They are so damn freaking cool! I love it so much I made the boss spam stalagmites! Uh oh, not good...
Oh oh, and in this level, I assume the player buffed up Mr Ball's defense, because the rocks can be a little painful. I tried playing the level and I died like 3 times in less than a minute!
Well, I think this is a better view of the stalagmites:
As you can see, it's the rock-using boss. Well, I really love the stalagmites. They are so damn freaking cool! I love it so much I made the boss spam stalagmites! Uh oh, not good...
Oh oh, and in this level, I assume the player buffed up Mr Ball's defense, because the rocks can be a little painful. I tried playing the level and I died like 3 times in less than a minute!
Saturday, 1 August 2009
Yay!
Yesh! Interact Installation is over! It's like one big burden's been lifted. Yeah!
It was really a success. All the committee members did their job, though most of them (including me) had procrastinated. In the end, everything came together like pieces of jigsaw puzzle.
It was really a success. All the committee members did their job, though most of them (including me) had procrastinated. In the end, everything came together like pieces of jigsaw puzzle.
Tuesday, 28 July 2009
Stress and more stress
Not liking stress. I am hating it. What's the opposite of love? Hate! HATE! Stress is horrible!
Argh! I feel like punching someone in the face. Gah! I know, I have very bad stress management. Ok, I am seriously hating Form 4. Hate it! Gyah!!
GYAH!!!!
Alright, chill Bee Lee...
Hmm... well, I have to go to bed. It's already 10.30pm.
Argh! I feel like punching someone in the face. Gah! I know, I have very bad stress management. Ok, I am seriously hating Form 4. Hate it! Gyah!!
GYAH!!!!
Alright, chill Bee Lee...
Hmm... well, I have to go to bed. It's already 10.30pm.
Thursday, 23 July 2009
Ooh, that's so fake!
This is actually not a very rare occasion. A lot of computer users are gullible enough to fall for pranks, well, sorta.
Now, yesterday, I was searching for something in google, and one of the links that I clicked on redirected me to a fake anti-virus website. The website is scripted to close down the internet browser and show a pop-up asking you to download a fake antivirus software. I fell for it once, that was a few years ago, I am so not gonna fall for it again. I did a research before on these kind of pop-ups, and the things you should do is:
1) Don't EVER respond to the pop-up (even clicking the corner "X" button). Just leave it alone. Some rogue anti-virus software pop-ups (especially those triggered by the Vundo Trojan horse) are scripted to download the fake anti-virus program even if you close the pop-up or click anything on the pop-up.
2) Cut your internet connection: Unplug the ethernet cable, telephone cable, off the modem, whatever, as long as the internet is down. This is just to prevent the pop-up from downloading the fake anti-virus software, if it plans to.
3) Now, close the pop-up. Clicking the "X" button should not do any harm, since the internet connection is down. Alternatively, you can always use the Ctrl+Alt+Delete method.
The most important thing of all is not to panic.
I could not record a video of it because strangely, the link disappeared. Hmm... well anyway, when a pop-up comes up from nowhere, you'll know what to do.
Now, yesterday, I was searching for something in google, and one of the links that I clicked on redirected me to a fake anti-virus website. The website is scripted to close down the internet browser and show a pop-up asking you to download a fake antivirus software. I fell for it once, that was a few years ago, I am so not gonna fall for it again. I did a research before on these kind of pop-ups, and the things you should do is:
1) Don't EVER respond to the pop-up (even clicking the corner "X" button). Just leave it alone. Some rogue anti-virus software pop-ups (especially those triggered by the Vundo Trojan horse) are scripted to download the fake anti-virus program even if you close the pop-up or click anything on the pop-up.
2) Cut your internet connection: Unplug the ethernet cable, telephone cable, off the modem, whatever, as long as the internet is down. This is just to prevent the pop-up from downloading the fake anti-virus software, if it plans to.
3) Now, close the pop-up. Clicking the "X" button should not do any harm, since the internet connection is down. Alternatively, you can always use the Ctrl+Alt+Delete method.
The most important thing of all is not to panic.
I could not record a video of it because strangely, the link disappeared. Hmm... well anyway, when a pop-up comes up from nowhere, you'll know what to do.
Wednesday, 22 July 2009
Is there something wrong?
Though it's hard to bear my own depression, it's even harder to bear with another's anger and sorrow. Why? Well, it's mainly because I feel kinda helpless. All I can do is listen to his/her sufferings. Life is really harsh, and one of the teachers I know kinda mistreated my friend today. Not sure whether it's because she is forgetful, or just care more about school's magazine than the welfare and the emotions of others. But there's really nothing I can do. Sorry.
Anyway, I got blacklisted by my Maths Teacher, because I passed up my homework late, TWICE. I really need to earn back her trust. Hahahaha!
Strangely, I tried going to youareblocked(dot)com, and apparently, the domain expired two days ago. Phew!
Hmm... Itsy Bitsy Teenie Weenie Yellow Polka dot Bikini. Hahaha. One of my favourite songs. It's just amusing.
Anyway, I got blacklisted by my Maths Teacher, because I passed up my homework late, TWICE. I really need to earn back her trust. Hahahaha!
Strangely, I tried going to youareblocked(dot)com, and apparently, the domain expired two days ago. Phew!
Hmm... Itsy Bitsy Teenie Weenie Yellow Polka dot Bikini. Hahaha. One of my favourite songs. It's just amusing.
Tuesday, 21 July 2009
80 cents, so awesome!
Ok, let's compare some stuff:
The print on the far left is from Shannen (thx Shannen, I owe you man!), but then, there were errors, so I terpaksa edit it. So, because I don't wanna waste too much of Shannen's ink, I asked my dad to bring the document to a shop to print, and that shop is Fuji shop, the one that prints photos. Ironically, the print didn't really turn out right (as you can see on the far right). I was like WTF? A photoshop which can't print a simple document nicely? Really ah, horrible. And some more, that shop charged my dad RM4.00, and took like 3-4 hours to print. Yea right? Are you trying to con my dad, Mr I-Print-Photos-but-I-Suck? Goodness.
Finally, my dad took me to a normal, ordinary looking shop which specializes in photocopying. And you know what, they successfully printed it (you can see it in the middle of the two prints). It's as good as Shannen's, though a little bit darker, but it's alright. And it costs only like what? 80 CENTS? And it took me not more than a minute to get it done. I was like Photocopy Lady FTW! I am so not trusting that Fuji Shop anymore.
The print on the far left is from Shannen (thx Shannen, I owe you man!), but then, there were errors, so I terpaksa edit it. So, because I don't wanna waste too much of Shannen's ink, I asked my dad to bring the document to a shop to print, and that shop is Fuji shop, the one that prints photos. Ironically, the print didn't really turn out right (as you can see on the far right). I was like WTF? A photoshop which can't print a simple document nicely? Really ah, horrible. And some more, that shop charged my dad RM4.00, and took like 3-4 hours to print. Yea right? Are you trying to con my dad, Mr I-Print-Photos-but-I-Suck? Goodness.
Finally, my dad took me to a normal, ordinary looking shop which specializes in photocopying. And you know what, they successfully printed it (you can see it in the middle of the two prints). It's as good as Shannen's, though a little bit darker, but it's alright. And it costs only like what? 80 CENTS? And it took me not more than a minute to get it done. I was like Photocopy Lady FTW! I am so not trusting that Fuji Shop anymore.
Saturday, 18 July 2009
A very important announcement
Don't go to youareanidiot(dot)org. Seriously, don't. DON'T. Must I rephrase that? I don't think so.
Ok, DON'T!
If you are not aware of this, you should continue reading...
Apparently, that website drops a javascript that disables some of your keys (F4, Ctrl, and Delete), stopping you from using that Ctrl+Alt+Delete or Alt+F4. Now, this malware is seriously a pain in the ass, so don't try to go there, unless you really want to. This trojan causes many many many popups to fly around your screen, and slowing down your comp significantly. I won't be responsible for any damages caused ok. And remember, I am using a VIRTUAL PC, therefore, all damages are limited within that virtual pc. Here's a video I recorded.
(Oh, if you see the Task Manager in the video, that Task Manager actually belongs to the host computer, my computer, not the virtual pc)
Upon further investigation on that popup-swarmed website, it actually activates the javascript it left in your Temporary Internet Files folder after you exit from the page (go back or close the IE). It then creates 6 IE windows showing the open.html page, which resides in the youareanidiot(dot)org website.
The open.html page has quite a similar HTML code as the youareanidiot(dot)org main page. When you try to close the open.html window, it runs the javascript, and creates another 6 windows!
Now, strangely, if you're using Windows XP Service Pack 2, you should be ok because the IE has a pop-up blocker. A pop-up blocker is enough to stop it from creating those annoying pop-ups. Still, I don't really guarantee that.
And guys, if you are sent an email recommending you to sign up in youareblocked(dot)com, it's really a phishing website. It will steal your hotmail/live account id and password. That's what I read la, at least, but I'll go test it out when I have the time. Wow, first time I had an adrenaline rush by playing with computer malwares!
Well, if you did type your password in that youareblocked website, which claims to tell you who blocked you in MSN, I suggest you go change your password.
Ok, DON'T!
If you are not aware of this, you should continue reading...
Apparently, that website drops a javascript that disables some of your keys (F4, Ctrl, and Delete), stopping you from using that Ctrl+Alt+Delete or Alt+F4. Now, this malware is seriously a pain in the ass, so don't try to go there, unless you really want to. This trojan causes many many many popups to fly around your screen, and slowing down your comp significantly. I won't be responsible for any damages caused ok. And remember, I am using a VIRTUAL PC, therefore, all damages are limited within that virtual pc. Here's a video I recorded.
(Oh, if you see the Task Manager in the video, that Task Manager actually belongs to the host computer, my computer, not the virtual pc)
Upon further investigation on that popup-swarmed website, it actually activates the javascript it left in your Temporary Internet Files folder after you exit from the page (go back or close the IE). It then creates 6 IE windows showing the open.html page, which resides in the youareanidiot(dot)org website.
The open.html page has quite a similar HTML code as the youareanidiot(dot)org main page. When you try to close the open.html window, it runs the javascript, and creates another 6 windows!
Now, strangely, if you're using Windows XP Service Pack 2, you should be ok because the IE has a pop-up blocker. A pop-up blocker is enough to stop it from creating those annoying pop-ups. Still, I don't really guarantee that.
And guys, if you are sent an email recommending you to sign up in youareblocked(dot)com, it's really a phishing website. It will steal your hotmail/live account id and password. That's what I read la, at least, but I'll go test it out when I have the time. Wow, first time I had an adrenaline rush by playing with computer malwares!
Well, if you did type your password in that youareblocked website, which claims to tell you who blocked you in MSN, I suggest you go change your password.
Friday, 17 July 2009
Soon...
Mr Ball 2 was suspended for a month and a half already, because of EdBoard and Interact Installation. After I've finished my EdBoard duty, I can continue Mr Ball 2 already!
Yeah!
Yeah!
Thursday, 9 July 2009
Stressful life
I have to admit, these few days had been one of the most stressful days in my life. I have to know how to organise my time man. The EdBoard thing is really eating up my homework time and my napping time. I'm exhausted and stressed up.
Oh, and today, the teachers had a meeting. ... Not really liking the outcome...
They made a new rule:
"No student will be allowed to exit the class during lesson, unless it's urgent"
This rule, plus with the staffroom thing is really getting to my last nerves. Sometimes I feel like ranting to the headmistress or the HEM. Then again, I'm just a student. What power do I have?
Why? Why at this time?
Should I continue? Or should I just pass my job to someone else and run away from the challenge like a coward? Sigh... I'm facing one of the worst dilemmas in my life.
Oh, and today, the teachers had a meeting. ... Not really liking the outcome...
They made a new rule:
"No student will be allowed to exit the class during lesson, unless it's urgent"
This rule, plus with the staffroom thing is really getting to my last nerves. Sometimes I feel like ranting to the headmistress or the HEM. Then again, I'm just a student. What power do I have?
Why? Why at this time?
Should I continue? Or should I just pass my job to someone else and run away from the challenge like a coward? Sigh... I'm facing one of the worst dilemmas in my life.
Wednesday, 8 July 2009
Gargh!!
I wonder why I even took up the offer to collect class photo order forms. Sheesh! You know how stressful is it? I had to stay back in school almost everyday!
Oh, you'll like this. Yesterday, one of the teacher's handbag got stolen, and so, the only way the school thought that can help to solve the teacher's-items-go-missing problem is to lock the staff room from the students! Yeah right... as if that will do any help? Because of that, I can't reach quite a number of teachers to collect the order forms. It's like WTH!!!?
I am so furious about it. Well, I do pity the teacher, but still, is locking the staff room from the students gonna do any help? If you want the problem to go away, might as well lock the whole school away since there are so many items to steal from the teachers all over the school. ... Ok, maybe I'm like "over reacting" and all, but this locking the staff room thing has really made my life that little bit harder.
Hmm... not to mention I got "halau-ed" out by the afternoon's discipline teacher from the staffroom just now. I don't blame her, she's just doing her job. Gosh, of all the things to lock??
Somemore, how can you prove that students are the ones responsible for the missing handbag?
Oh, you'll like this. Yesterday, one of the teacher's handbag got stolen, and so, the only way the school thought that can help to solve the teacher's-items-go-missing problem is to lock the staff room from the students! Yeah right... as if that will do any help? Because of that, I can't reach quite a number of teachers to collect the order forms. It's like WTH!!!?
I am so furious about it. Well, I do pity the teacher, but still, is locking the staff room from the students gonna do any help? If you want the problem to go away, might as well lock the whole school away since there are so many items to steal from the teachers all over the school. ... Ok, maybe I'm like "over reacting" and all, but this locking the staff room thing has really made my life that little bit harder.
Hmm... not to mention I got "halau-ed" out by the afternoon's discipline teacher from the staffroom just now. I don't blame her, she's just doing her job. Gosh, of all the things to lock??
Somemore, how can you prove that students are the ones responsible for the missing handbag?
Sunday, 5 July 2009
Kick it into Gear!
Hmm....
Kick it into Gear - Country bears
I've finally found this song after 4 years of searching! I've never really liked Country Bears, which is a Disney Movie about some bears. But I really liked this song, sang by Jennifer Paige. Strangely, I dunno why it was so hard to look for this song back then. It's kinda catchy.
Kick it into Gear - Country bears
I've finally found this song after 4 years of searching! I've never really liked Country Bears, which is a Disney Movie about some bears. But I really liked this song, sang by Jennifer Paige. Strangely, I dunno why it was so hard to look for this song back then. It's kinda catchy.
Monday, 29 June 2009
Oh my GG.COM!
What happened to BLProductions' layout?? Well, apparently Google Pages is moving, therefore, the files hosted there will disappear. So, to avoid any unpleasant background picture, I reverted back to the old layout. Kinda disappointing, actually. I need to find sometime to go look for a permanent webhost which can host files for me.
Sunday, 28 June 2009
3D Studio Max! Whee!
Finally, my wish came true! I got my 3D Studio Max! I can finally scrap that Blender3D! It looks easier to model in 3D Studio Max compared to Blender3D. The tutorials provided are quite detailed. Ahh...
Well, I tried modelling a chess piece, namely, the Pawn.
Well, I know, it looks weird, but that's a start! I pwn man! Hahahaha! I crack myself up!
Well, I tried modelling a chess piece, namely, the Pawn.
Well, I know, it looks weird, but that's a start! I pwn man! Hahahaha! I crack myself up!
Friday, 26 June 2009
Sports Day!
Ahh! Today was quite a satisfying day! Good things happened! Scouts won 2nd place for marching! Did I mention scouts rock? Hahaha.
And and, Blue house won second place overall! Congrats to blue house!
Tomorrow, Saturday... gah! Replacement school. What the hell? Well, I shall be a good boy and attend the class. =D
Currently, I haven't continued Mr Ball 2. I'm a little busy with school stuff, especially Interact Club stuff. Installation Day is coming, so I have a lot of letters to type, as soon as Mr. Zol approves the Installation Day.
And and, Blue house won second place overall! Congrats to blue house!
Tomorrow, Saturday... gah! Replacement school. What the hell? Well, I shall be a good boy and attend the class. =D
Currently, I haven't continued Mr Ball 2. I'm a little busy with school stuff, especially Interact Club stuff. Installation Day is coming, so I have a lot of letters to type, as soon as Mr. Zol approves the Installation Day.
Monday, 22 June 2009
Is it the past?
It may not be obvious, but what you are seeing is actually the past. What the? Who the? How the?
I know, it sounds incredibly weird. How can what we are currently seeing be the past, when it's clearly the present? Ok, I don't even understand what that means.
We all know that light travels around 300,000,000m/s in vacuum right? That is very fast, I mean, REALLY FAST! Anyway, when light travels through a non-opaque medium like air, it slows down. It's not very hard to understand why that happens.
Supposed that you are a light particle, a photon! Let's assume the empty LRT station be the vacuum of space. Don't you think it is easy to run around the station?
Now, imagine it is rush hour, and suddenly, the whole place is filled with smelly and fat people. Each person is like a molecule in the non-opaque matter which I mentioned above. I mean, there are so many people, it's so hard to move around, so you slow down. Likewise, light travels slower in a denser medium.
Well, anyway, back to the matter at hand. Why did I say that what ever you are currently looking at is the past? Like I said, light need to travel to your eye before you can actually see.
Assuming the distance between your eyes and the monitor of the screen is 30cm. Speed of light=300,000,000m/s. If you work it out using the Speed=Distance/Time formula, you'll find that time=1 nanosecond.
So, what you are seeing on the screen now happened 1 nanosecond ago! But 1 nanosecond is so tiny, you won't be able to notice it. Cool right?
Oh, this will be even cooler if you could see a delayed reflection of yourself on the mirror. Let's say you are standing in front of a mirror, then you move your arm. 1 second later, you'll notice that your image moves his arm. To actually see this delay, you'll have to be standing 300000km away from the mirror.
Light, isn't it cool?
I know, it sounds incredibly weird. How can what we are currently seeing be the past, when it's clearly the present? Ok, I don't even understand what that means.
We all know that light travels around 300,000,000m/s in vacuum right? That is very fast, I mean, REALLY FAST! Anyway, when light travels through a non-opaque medium like air, it slows down. It's not very hard to understand why that happens.
Supposed that you are a light particle, a photon! Let's assume the empty LRT station be the vacuum of space. Don't you think it is easy to run around the station?
Now, imagine it is rush hour, and suddenly, the whole place is filled with smelly and fat people. Each person is like a molecule in the non-opaque matter which I mentioned above. I mean, there are so many people, it's so hard to move around, so you slow down. Likewise, light travels slower in a denser medium.
Well, anyway, back to the matter at hand. Why did I say that what ever you are currently looking at is the past? Like I said, light need to travel to your eye before you can actually see.
Assuming the distance between your eyes and the monitor of the screen is 30cm. Speed of light=300,000,000m/s. If you work it out using the Speed=Distance/Time formula, you'll find that time=1 nanosecond.
So, what you are seeing on the screen now happened 1 nanosecond ago! But 1 nanosecond is so tiny, you won't be able to notice it. Cool right?
Oh, this will be even cooler if you could see a delayed reflection of yourself on the mirror. Let's say you are standing in front of a mirror, then you move your arm. 1 second later, you'll notice that your image moves his arm. To actually see this delay, you'll have to be standing 300000km away from the mirror.
Light, isn't it cool?
Friday, 19 June 2009
WTF?
Hmm... I never knew there was a 3D Game Engine made for Game Maker. If I only knew earlier, I wouldn't have depended on Game Maker's 3D engine, just because it sux! ...
Well, maybe Mr Ball 3 will be built using Ultimate3D engine for Game Maker. It's really good as it eliminates the z-buffer transparency problem, well, at least I think it does.
Hmm... I don think I will even call it Mr Ball 3 by then, probably some other name but it is still Mr Ball. I really wish that in the third installment, it will have a storyline.
Well, maybe Mr Ball 3 will be built using Ultimate3D engine for Game Maker. It's really good as it eliminates the z-buffer transparency problem, well, at least I think it does.
Hmm... I don think I will even call it Mr Ball 3 by then, probably some other name but it is still Mr Ball. I really wish that in the third installment, it will have a storyline.
Wednesday, 17 June 2009
I got sacked, and then rehired!
I'm officially the Secretary of Interact Club of SMKTS. Ahh! I feel so proud saying that! lol! But, this is not a joking matter, as I can see a lot of stress and challenges ahead.
I hope I will be a great secretary, though, to do that, I have to kick my habit of procrastinating.
And I've been offered to join the 3D Games design competition with Gavin. Hmm... I must quickly start learning how to use C++. But I think Game Maker is still sufficient, but the graphics in Game Maker is quite limited.
Hmm... I only got like one month to finish my game. This could be hard. Sigh...
I hope I will be a great secretary, though, to do that, I have to kick my habit of procrastinating.
And I've been offered to join the 3D Games design competition with Gavin. Hmm... I must quickly start learning how to use C++. But I think Game Maker is still sufficient, but the graphics in Game Maker is quite limited.
Hmm... I only got like one month to finish my game. This could be hard. Sigh...
Monday, 15 June 2009
Run a line through
I shall pick up where I left off in my previous post...
Right, in my previous post, it was about Billboarding, one of the techniques used in 3D Games. Professional games use this technique so well, it's very hard to tell whether they are using 3D models or just plane rectangles!
There are advantages. One very important advantage is that it reduces polygon count. If you burden the video card with too many things to draw on the screen, the game will lag. So, for very complicated objects, it's better to use billboard.
But when there are advantages, there should be disadvantages. Though you can draw a lot of details on a billboard, it's quite limited. What do I mean by this?
Imagine you want to draw a 3D object on a billboard. So you draw an image of a sphere as a texture for the billboard. As the billboard turns around to face your camera (your eye), it shouldn't be too much of a problem, since spheres are round however you see them.
But let's say you drew an image of a cube as a texture for the billboard. As the billboard turns around, the same image of the cube keep on facing towards you. It's as if the the cube is turning around to face you with the same... err... face! That'll look weird, unless you intended to do that.
Still billboards are very cool!
Hmm... let's get on with Axial Billboards (or Axis-aligned billboards). Axial Billboards can still turn around to face the camera, but they can only rotate around an arbitrary axis.
Assuming Z is up on the Cartesian coordinate system, if the billboard is aligned with the Z-axis, it's very simple to rotate it and face the camera. All you've got to do is get the horizontal direction from the billboard to the camera.
Using my previous diagram:
Point A is the position of the billboard object, B is the camera. All you've got to do is solve for angle y. Angle x is not needed.
Then draw a quad the same way as shown in the previous post, but this time, the transformations are as follows:
-Rotate around z-axis at "y" angle
-Translate to object's position
That is only for Billboards aligned with the Z-Axis.
For a billboard with an axis that is aligned with the x-y plane (horizontal axis), there are a few more steps in the calculations.
Oh my! WTF??
Chill, relax, sip some coffee. All will be revealed in a moment.
Line AC defines the axis for the billboard. So, r is the angle of point C from A.
Before I continue, I should tell you that because Line AC is parallel to the x-y plane,
Getting r could not be any more easier! Just a little trigonometry and...
Now, what about q? q is a little tricky. To solve it, we need to know the direction of B from A on the x-y plane. Then, subtract it from r.
So,
Since we have q, we can now solve for d.
Oh, we're almost there. We just need to solve for h before we can get angle p.
h is simply the difference of z value between A and B.
Now, using tan,
Finally, that horrible p!
Now, draw the quadrilateral:
Transform it as follows:
-Rotate it around x-axis at -p angle
-Rotate it around z-axis at r angle
-Translate it to its position.
Now, I may be wrong with the rotation around the x-axis. I get confused easily with the negative and positive angles, so if you find that I made a mistake, do tell me.
And that's that! But this only applies to axes that are aligned horizontally (parallel to the x-y plane, assuming z is up).
Gosh, such wonderful maths. Now, don't you think 3D games are cool? You better do!
Billboards are best used when the camera is not too close. Otherwise, its secrets will be revealed to the player. Well, it's not that bad, but it won't look too pretty.
Here, you can see the laser beam in Mr Ball 2:
It's an axial billboard!
Now over here, you can see how the beauty of billboards can be ruined:
The billboard passing over an object will reveal its "flatness", most of the time
Oh, and this one. Seeing the end of the billboard just kills the illusion, doesn't it?
Well, that's all! Lol!
Right, in my previous post, it was about Billboarding, one of the techniques used in 3D Games. Professional games use this technique so well, it's very hard to tell whether they are using 3D models or just plane rectangles!
There are advantages. One very important advantage is that it reduces polygon count. If you burden the video card with too many things to draw on the screen, the game will lag. So, for very complicated objects, it's better to use billboard.
But when there are advantages, there should be disadvantages. Though you can draw a lot of details on a billboard, it's quite limited. What do I mean by this?
Imagine you want to draw a 3D object on a billboard. So you draw an image of a sphere as a texture for the billboard. As the billboard turns around to face your camera (your eye), it shouldn't be too much of a problem, since spheres are round however you see them.
But let's say you drew an image of a cube as a texture for the billboard. As the billboard turns around, the same image of the cube keep on facing towards you. It's as if the the cube is turning around to face you with the same... err... face! That'll look weird, unless you intended to do that.
Still billboards are very cool!
Hmm... let's get on with Axial Billboards (or Axis-aligned billboards). Axial Billboards can still turn around to face the camera, but they can only rotate around an arbitrary axis.
Assuming Z is up on the Cartesian coordinate system, if the billboard is aligned with the Z-axis, it's very simple to rotate it and face the camera. All you've got to do is get the horizontal direction from the billboard to the camera.
Using my previous diagram:
Point A is the position of the billboard object, B is the camera. All you've got to do is solve for angle y. Angle x is not needed.
Then draw a quad the same way as shown in the previous post, but this time, the transformations are as follows:
-Rotate around z-axis at "y" angle
-Translate to object's position
That is only for Billboards aligned with the Z-Axis.
For a billboard with an axis that is aligned with the x-y plane (horizontal axis), there are a few more steps in the calculations.
Oh my! WTF??
Chill, relax, sip some coffee. All will be revealed in a moment.
Line AC defines the axis for the billboard. So, r is the angle of point C from A.
Before I continue, I should tell you that because Line AC is parallel to the x-y plane,
Getting r could not be any more easier! Just a little trigonometry and...
Now, what about q? q is a little tricky. To solve it, we need to know the direction of B from A on the x-y plane. Then, subtract it from r.
So,
Since we have q, we can now solve for d.
Oh, we're almost there. We just need to solve for h before we can get angle p.
h is simply the difference of z value between A and B.
Now, using tan,
Finally, that horrible p!
Now, draw the quadrilateral:
Transform it as follows:
-Rotate it around x-axis at -p angle
-Rotate it around z-axis at r angle
-Translate it to its position.
Now, I may be wrong with the rotation around the x-axis. I get confused easily with the negative and positive angles, so if you find that I made a mistake, do tell me.
And that's that! But this only applies to axes that are aligned horizontally (parallel to the x-y plane, assuming z is up).
Gosh, such wonderful maths. Now, don't you think 3D games are cool? You better do!
Billboards are best used when the camera is not too close. Otherwise, its secrets will be revealed to the player. Well, it's not that bad, but it won't look too pretty.
Here, you can see the laser beam in Mr Ball 2:
It's an axial billboard!
Now over here, you can see how the beauty of billboards can be ruined:
The billboard passing over an object will reveal its "flatness", most of the time
Oh, and this one. Seeing the end of the billboard just kills the illusion, doesn't it?
Well, that's all! Lol!
Labels:
math
Sunday, 14 June 2009
Random post
Well, I dunno what else to post, so I shall post some "numbers" again! Whee!
Seriously, if you hate maths, just don't look.
Remember a few posts ago, I talked about the so-called Axial Billboarding? It's a billboard aligned with an axis! Yay!
So far, I only manage to figure out how to orientate the billboard along an axis that is aligned to either the x-y plane or z-axis, assuming z is the "up" on the Cartesian Plane.
Before I continue on with Axial Billboarding, I should start with a normal billboard. A billboard is just a sprite that faces the camera wherever the camera goes.
Here, you can see the damage display (highlighted with blue circle). It's actually a billboard, because wherever I move the camera, it will face it.
So, how does the math go for this normal billboarding? Alright, we need to know 2 very important info, well, actually, 2 angles to be more precise.
Let's assume point A represents the position of the quadrilateral (usually a rectangle) that is going to be "billboard-ed".
Now, let's place the camera. Let's call the camera position, B.
Oh crap! So complicated! So many lines! Anyway, to put things in simpler terms,
Oh, I forgot to mention that line h and line d are perpendicular to each other. L is the distance from A to B.
Would you believe that from those 3 variables, we can solve for angles x and y, well, at least for x? Haha, here comes the magic of trigonometry (oh boy...)!
To solve for angle x, we can choose to use sin, cos or tan. It doesn't matter since we have all 3 sides of the triangle. But I would recommend using sin or cos because tan reaches infinity when the angle is equal to 90, 270, ...
Ok, let's use sin just because I had committed a lot of sins. Haha, get it? sine, sin! Lol! Ok, I shall stop.
So,
We got x! Now for y.
Angle y is basically the direction of B from A.
It's very simple to get y. See the "u"? u is the difference in x between A and B.
You can use the difference in y as well, but for that, you'll have to use sin instead of cos, which I'll be using.
Anyway,
We got x, and we got y!
With these 2 variables, we can finally turn the quad to face the camera. Now, it's very important to draw the quadrilateral with its centre as its origin to make it look good, unless, of course, you have your own reasons otherwise.
And, the quadrilateral should be facing the x-axis.
So, this will be how you'll draw your quadrilateral in a 3D game:
Next, you want to rotate it around the y-axis at x angle. Followed by a rotation around the z-axis at y angle. After all that, translate it to the object's position.
And that's all for the normal billboard. I won't go on with Axial Billboarding now because I'm just lazy to draw all the diagrams and blah. Maybe later.
Well, have a nice day!
Seriously, if you hate maths, just don't look.
Remember a few posts ago, I talked about the so-called Axial Billboarding? It's a billboard aligned with an axis! Yay!
So far, I only manage to figure out how to orientate the billboard along an axis that is aligned to either the x-y plane or z-axis, assuming z is the "up" on the Cartesian Plane.
Before I continue on with Axial Billboarding, I should start with a normal billboard. A billboard is just a sprite that faces the camera wherever the camera goes.
Here, you can see the damage display (highlighted with blue circle). It's actually a billboard, because wherever I move the camera, it will face it.
So, how does the math go for this normal billboarding? Alright, we need to know 2 very important info, well, actually, 2 angles to be more precise.
Let's assume point A represents the position of the quadrilateral (usually a rectangle) that is going to be "billboard-ed".
Now, let's place the camera. Let's call the camera position, B.
Oh crap! So complicated! So many lines! Anyway, to put things in simpler terms,
Oh, I forgot to mention that line h and line d are perpendicular to each other. L is the distance from A to B.
Would you believe that from those 3 variables, we can solve for angles x and y, well, at least for x? Haha, here comes the magic of trigonometry (oh boy...)!
To solve for angle x, we can choose to use sin, cos or tan. It doesn't matter since we have all 3 sides of the triangle. But I would recommend using sin or cos because tan reaches infinity when the angle is equal to 90, 270, ...
Ok, let's use sin just because I had committed a lot of sins. Haha, get it? sine, sin! Lol! Ok, I shall stop.
So,
We got x! Now for y.
Angle y is basically the direction of B from A.
It's very simple to get y. See the "u"? u is the difference in x between A and B.
You can use the difference in y as well, but for that, you'll have to use sin instead of cos, which I'll be using.
Anyway,
We got x, and we got y!
With these 2 variables, we can finally turn the quad to face the camera. Now, it's very important to draw the quadrilateral with its centre as its origin to make it look good, unless, of course, you have your own reasons otherwise.
And, the quadrilateral should be facing the x-axis.
So, this will be how you'll draw your quadrilateral in a 3D game:
Next, you want to rotate it around the y-axis at x angle. Followed by a rotation around the z-axis at y angle. After all that, translate it to the object's position.
And that's all for the normal billboard. I won't go on with Axial Billboarding now because I'm just lazy to draw all the diagrams and blah. Maybe later.
Well, have a nice day!
Labels:
math
Subscribe to:
Posts (Atom)