Jump to content
IGNORED

rB+ tutorial: particle system starfield + other particle system thingies


sh3-rg
 Share

Recommended Posts

This next little "fx" tutorial came about thanks to a small discussion in Sporadic's Astro-Storm thread.

 

It's something that probably should have existed already - making use of rB+'s particle system to effect a 3D starfield.

 

The tutorial covers the creation of the starfield effect briefly (there's not much to it) and shows how to alter the dimensions of the particle buffer and how to assign the particle buffer to multiple sprites/objects.

 

There's a maximum of 768 stars at 60fps over an area of 352x152, each brightening as it gets "closer" to your face sat watching. This is achieved with 256 tracked stars and 2 further particle buffer copies - one flipped and one h-scaled for variety.

 

The most fun creating this was gained, as briefly hinted to in the tutorial, when working solely in Virtual Jaguar. Believe me when I say I've seen nothing more stunning on the Jaguar for quite some time than the1500 tracked stars over the full screen space of 352x240... absolutely fucking glorious... and a "stunning" 30fps on the Jaguar some time later... lolol etc.

 

You could easily modify this to twist and turn or whatever with either on-the-fly modification of the particle arrays, or add further dimensions with various adjustments to the relevant values.

 

Have fun!

starfield.zip

starfield.abs

Edited by sh3-rg
  • Like 5
Link to comment
Share on other sites

This next little "fx" tutorial came about thanks to a small discussion in Sporadic's Astro-Storm thread.

 

It's something that probably should have existed already - making use of rB+'s particle system to effect a 3D starfield.

 

The tutorial covers the creation of the starfield effect briefly (there's not much to it) and shows how to alter the dimensions of the particle buffer and how to assign the particle buffer to multiple sprites/objects.

 

There's a maximum of 768 stars at 60fps over an area of 352x152, each brightening as it gets "closer" to your face sat watching. This is achieved with 256 tracked stars and 2 further particle buffer copies - one flipped and one h-scaled for variety.

 

The most fun creating this was gained, as briefly hinted to in the tutorial, when working solely in Virtual Jaguar. Believe me when I say I've seen nothing more stunning on the Jaguar for quite some time than the1500 tracked stars over the full screen space of 352x240... absolutely fucking glorious... and a "stunning" 30fps on the Jaguar some time later... lolol etc.

 

You could easily modify this to twist and turn or whatever with either on-the-fly modification of the particle arrays, or add further dimensions with various adjustments to the relevant values.

 

Have fun!

attachicon.gifstarfield.zip

attachicon.gifstarfield.abs

 

Sounds amazing! I will download in a minute and have a look. I can't wait to see how you went about this.

I've just been playing around and have come up with something i'm happy with which i'll post in the other thread.

 

Mine may end up on the rubbish tip by the sounds of things but it taught me a lot just playing around for an hour or two and i'll probably particle all the things now.

Link to comment
Share on other sites

This next little "fx" tutorial came about thanks to a small discussion in Sporadic's Astro-Storm thread.

 

It's something that probably should have existed already - making use of rB+'s particle system to effect a 3D starfield.

 

The tutorial covers the creation of the starfield effect briefly (there's not much to it) and shows how to alter the dimensions of the particle buffer and how to assign the particle buffer to multiple sprites/objects.

 

There's a maximum of 768 stars at 60fps over an area of 352x152, each brightening as it gets "closer" to your face sat watching. This is achieved with 256 tracked stars and 2 further particle buffer copies - one flipped and one h-scaled for variety.

 

The most fun creating this was gained, as briefly hinted to in the tutorial, when working solely in Virtual Jaguar. Believe me when I say I've seen nothing more stunning on the Jaguar for quite some time than the1500 tracked stars over the full screen space of 352x240... absolutely fucking glorious... and a "stunning" 30fps on the Jaguar some time later... lolol etc.

 

You could easily modify this to twist and turn or whatever with either on-the-fly modification of the particle arrays, or add further dimensions with various adjustments to the relevant values.

 

Have fun!

attachicon.gifstarfield.zip

attachicon.gifstarfield.abs

That does look superb, thank you again for the help and information :) I like the way you defined all the arrays up front and then cycled between them. That gets around the possible problem with how I went about it in the other thread with using the RND on the fly.

 

Can't wait to try all this in the game and see what happens. Even if it doesn't help performance, it still looks much better.

 

Change your VSYNC for an RUPDALL(1) to go into hyperspace......

Link to comment
Share on other sites

Change your VSYNC for an RUPDALL(1) to go into hyperspace......

shudder... RUPDALL(1) gives me the chills...

 

:0)

 

Also, what do the raptor_particle_drift_x and raptor_particle_drift_y variables do?

 

I see you have set them to 1000 but I wasn't sure the exact effect of them?

 

I'm not sure I can see any difference.

Hah, they're set to 1000 exactly because I didn't know what they did and 1000 was where I got bored experimenting :P

 

I like the way you defined all the arrays up front and then cycled between them.

That was more about being lazy and trying to keep things simple than anything else. You could of course randomly choose between these to try and prevent any signs of repetition showing :0)

Edited by sh3-rg
  • Like 1
Link to comment
Share on other sites

Hah, they're set to 1000 exactly because I didn't know what they did and 1000 was where I got bored experimenting :P

 

 

That was more about being lazy and trying to keep things simple than anything else. You could of course randomly choose between these to try and prevent any signs of repetition showing :0)

Just wait till the jaguar guy wakes up - he'll explain this better.

Link to comment
Share on other sites

shudder... RUPDALL(1) gives me the chills...

 

:0)

 

 

Hah, they're set to 1000 exactly because I didn't know what they did and 1000 was where I got bored experimenting :P

 

 

That was more about being lazy and trying to keep things simple than anything else. You could of course randomly choose between these to try and prevent any signs of repetition showing :0)

 

I tried assigning RUPDALL(1) to the B button on the controller but VJ just crashed.

 

IF jpad=PAD_B THEN

RUPDALL(1)

ELSE

VSYNC

ENDIF

 

Then you could hold down to hyperspace.

Link to comment
Share on other sites

Just wait till the jaguar guy wakes up - he'll explain this better.

 

*Snoooore* *urgh* *Snoooore*

 

OK, for a static screen these should both be set to 0.

 

They are used to lock the particle effects to a set scroll rate. Say, for example you have a space ship that is moving x=x+2 every frame, and you trigger an effect for exhaust emissions coming out the back - with a drift of zero you would be leaving the effect behind you, and it would look odd. So in this case you would set the xdrift value to $00020000 (it's 16.16 sub-pixel) and the effect will trail nicely behind the ship.

 

Hope that helps.

  • Like 3
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...