Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - Builderboy

Pages: 1 ... 107 108 [109] 110 111 ... 375
1621
Axe / Re: Flames tutorial
« on: February 20, 2011, 02:57:57 am »
No problem :) lol acyglobis? haha whyy

1622
Axe / Re: Flames tutorial
« on: February 20, 2011, 02:53:29 am »
It sure would be faster, but since you were only doing it once, i went for readability, since this is a tutorial :)

1623
Axe / Re: Flames tutorial
« on: February 20, 2011, 02:31:16 am »
Absolutely not, go ahead! :D thats what tutorials are there for, so you can learn and use it :)

1624
Axe / Re: Flames tutorial
« on: February 20, 2011, 02:28:00 am »
Yes it would, you would get a nice flaming rectangle :) Also note that with this routing there is no need to erase your sprites unless you don't want them to be on fire

1625
Axe / Re: Axe Q&A
« on: February 20, 2011, 02:17:17 am »
yep, OR works with the bits for us :)

1626
Axe / Re: Flames tutorial
« on: February 20, 2011, 01:59:05 am »
Hmmm well using only one buffer, it shouldn't matter whether or not you have it before or after the for loop, unless you were XORing it right after you displayed it.

1627
Axe / Re: Flames tutorial
« on: February 20, 2011, 01:56:59 am »
o.O Gotcha.  Well, to summarize, I was merely responding to your original post, since you didn't say anything about 2 or 3 buffers or anything, I didn't understand ^^

1628
Axe / Re: Flames tutorial
« on: February 20, 2011, 01:52:50 am »
Gotcha, although how are you using both the buffers?  Are you copying from one buffer to another?  Using greyscale?

1629
Axe / Re: Flames tutorial
« on: February 20, 2011, 01:49:52 am »
Wait do you use the backbuffer then?  I was responding to your original idea, where you just said to do it after the for loop

1630
Introduce Yourself! / Re: Why, hello there!
« on: February 20, 2011, 01:49:02 am »
Welcome Welcome weeeelcooome brooooooooooooooom  :hyper: heh we all hope you enjoy your stay :)  Its names like yours and Eeeeems that I love to sayyyyyyyy

1631
Axe / Re: Flames tutorial
« on: February 20, 2011, 01:45:02 am »
Oh do you XOR it on, and then XOR it off?

1632
Axe / Re: Axe Q&A
« on: February 20, 2011, 01:42:24 am »
You could do something like this:

Code: [Select]
For(F,0,767
{L3+F} or {L6+F}->{L6+F}
End

1633
Axe / Re: Flames tutorial
« on: February 20, 2011, 01:40:02 am »
@Qwerty that wouldn't work because there is no ClrDraw, so there is no difference between doing it before or after.

It could work very well for animated sprites, and with masking you could make it so that only the top of them is on fire and nothing inside.

However, making only a section of the screen create fire is difficult.  This is a screen effect, not an object effect, so anything that passes into the 'fire field' will catch on fire.  Also, since this is byte based, you would have to make the fire field out of whole bytes, unless you wanted to get into some complicated byte masking.

1634
Welcome to Omnimaga, and if you are worried that you will quickly lose interest and leave, I myself am evidence of one who posted in this section and went on to become Admin of the site :) Who knows, there is every possibility you could too one day!  Welcome to the site! :D

1635
Axe / Flames tutorial
« on: February 20, 2011, 01:20:16 am »
Do you want your title screens to look like this?


If so, go no further because in this tutorial, I will be discussing how to get epic fire effects into your games and title screens using Axe.  This is applicable to either white fire or black fire, with, or without objects in the fire.

The rules of the fire are simple.  Take each pixel, move that pixel up, then also randomly erase pixels.  Since each pixel on the screen has an equal probability of being erased, pixels near the top have a lower probability of being set, because the pixels would have had to travel all the way from the bottom to the top without getting erased.  But thats a lot of mumbo jumbo, lets get straight to the code:

Code: [Select]
.Axe
ClrDraw
[FEFDFBF7EFDFBD7F]->Str1  //Each Byte here has 7 bits set and 1 bit not set (like FE is 11111110 in binary)
                      //This is so that we can erase a random pixel, since Axe has no built in way to do that
Line(0,63,95,63       //the pixels to catch fire, explained a little later

Repeat getKey(15)    //until we press clear

For(F,L6+12,L6+767       //loop through all of the screen pixels except the last 12
{F} and {rand^8+Str1}->{F-12}   //take the byte, use AND to erase a single bit from it, and then store it into the byte directly *above* it
End                     //this makes it so that as the byte rises, each frame a pixel is erased from it

DispGraph

End

So why do we need the line command?  Well because this routine needs fuel.  What that means is that if you draw a sprite onto the screen while this routine is running, that sprite will catch fire automatically.  If you stop drawing the sprite, it will rise and vanish like smoke.  Anything you draw onto the part of the screen that is being 'flamed' will automatically catch fire, and will continue to be on fire until you stop drawing it, at which point it will vanish like smoke.  Go ahead try it out!

Also, some of you may want to try a black background with white smoke.  the principles are exactly the same, but everything is inverted.  Instead of FE (11111110), you would use 01 (00000001), and instead of using AND, you would use OR.  Its that simple :)

Pages: 1 ... 107 108 [109] 110 111 ... 375