Log inRegister an accountBrowse CSDbHelp & documentationFacts & StatisticsThe forumsAvailable RSS-feeds on CSDbSupport CSDb Commodore 64 Scene Database
You are not logged in - nap
CSDb User Forums


Forums > C64 Coding > 'HCL-plasma' - how does it work?
2008-11-02 23:16
Shadow
Account closed

Registered: Apr 2002
Posts: 355
'HCL-plasma' - how does it work?

That fullscreen-fast-plasma-thing that we saw quite a few versions of in Edge Of Disgrace (with sprite zoomer on top, in sideborder, with techtech etc.) - what's the theory?
It is pretty obvious from speed and size that it is not done using per-pixel-code...
My theory was that it was done using FPP-technique, ie. we have a base-plasma-picture, and then by displaying cleverly chosen lines from this base-picture we get the plasma.
I did some prototyping on PC to test this theory, but I can't get anything that looks correct. Am I barking up the wrong tree here?
 
... 12 posts hidden. Click here to view all posts....
 
2008-11-03 03:45
A Life in Hell
Account closed

Registered: May 2002
Posts: 204
How a simple version works:

step 1: have an FPP routine of your choice. It's gonna need to be sprite FPP if you're in the borders, natch, charfpp if you don't, bitmap fpp if you want more colours, or some crazy assed fun combination.

step 2: for each possible FPP line (you need as many of these for maximum smoothness) calculate a sinus line for finalY=yval for this line. You can do this each frame, or once and just move the y sinus.

step 3: calculate each y line in your raster IRQ, and set the FPP display list appropraitely from a table based on the y output.

step 4: display fpp according to display table.

maybe i'll upload one appropriatly commented and commentated to codebase later this week, if people are interested in such things.
2008-11-03 07:33
HCL

Registered: Feb 2003
Posts: 728
Who came up with the name HCL-plasma?

..and if Mr.Krill would be so kind to show us a *link* to where this has been done long before.. Funny, i don't remember any full-screen-side-border-FPP-plasma, will be most interesting to see.
2008-11-03 08:27
JackAsser

Registered: Jun 2002
Posts: 2014
Quote: Who came up with the name HCL-plasma?

..and if Mr.Krill would be so kind to show us a *link* to where this has been done long before.. Funny, i don't remember any full-screen-side-border-FPP-plasma, will be most interesting to see.


Wasn't the end part of Cycle some kind of full screen sideborder FPP-plasma?
2008-11-03 08:37
HCL

Registered: Feb 2003
Posts: 728
Hmm, i don't really get what you're discussing here. It's mostly talk about the FPP-routine.. The're nothing fancy about that, except possibly for the plasma with the sprite-stretcher on top. The tricky thing in this plasma (compared to what we have already seen) is how the x-shit works. But i'll leave that if noone is really interested ;).

<edit>
@JA: That's exactly what's the difference. Those all-border "plasmas" only contain some kind of FPP-routuine and thus only a y-plasma (typically double sinus indexed plasma), the x-"plasma" is just some static graphics that has been generated once. The plasma we have here has an x-component also updated every frame, also typically a double sinus indexed plasma.
</edit>
2008-11-03 09:00
Shadow
Account closed

Registered: Apr 2002
Posts: 355
I didn't intend to step on any toes by calling it 'HCL-plasma', I just thought that everyone would know what I meant then, since the type of plasma I'm talking about has appeared in a few BD demos now (Royal Arte, Cycle, Edge Of Disgrace).

Seems like I have the technical theory correct then.

I have a precalced picture that looks about what a single frame from a normal per-pixel-double-sine-plasma looks like.

Then in the displayer I pick y-lines from that above plasma indexed on a double-sine.

However somehow it don't get that 'plasma'-feeling in it.

But now we hear that HCL has added some kind of extra X-component magic to it, which would explain why it looks even better in EoD. I'll have to start Cycle again and compare the last-part-plasma there.

2008-11-03 09:09
Oswald

Registered: Apr 2002
Posts: 5094
Quote: That fullscreen-fast-plasma-thing that we saw quite a few versions of in Edge Of Disgrace (with sprite zoomer on top, in sideborder, with techtech etc.) - what's the theory?
It is pretty obvious from speed and size that it is not done using per-pixel-code...
My theory was that it was done using FPP-technique, ie. we have a base-plasma-picture, and then by displaying cleverly chosen lines from this base-picture we get the plasma.
I did some prototyping on PC to test this theory, but I can't get anything that looks correct. Am I barking up the wrong tree here?


it's Graham's invention. I think the mod's should change the topic title if possible, before the credit will go to HCL in the scene's mind. :P
2008-11-03 09:14
Oswald

Registered: Apr 2002
Posts: 5094
Quote: I didn't intend to step on any toes by calling it 'HCL-plasma', I just thought that everyone would know what I meant then, since the type of plasma I'm talking about has appeared in a few BD demos now (Royal Arte, Cycle, Edge Of Disgrace).

Seems like I have the technical theory correct then.

I have a precalced picture that looks about what a single frame from a normal per-pixel-double-sine-plasma looks like.

Then in the displayer I pick y-lines from that above plasma indexed on a double-sine.

However somehow it don't get that 'plasma'-feeling in it.

But now we hear that HCL has added some kind of extra X-component magic to it, which would explain why it looks even better in EoD. I'll have to start Cycle again and compare the last-part-plasma there.



how do you calculate a plasma?

mix 2 sines to get a "verticalsine"
mix other 2 sines to get a "horizontalsine"

then each pixel: pixel(x,y)=palette(vertsine(y)+horsine(x))

note that on a horizontal line vertsine(y) is constant. so if we reduce the vertsine values to smth like 0-16, then we may precalculate 16 gfx lines (horsine still changes each frame, thats where you got it wrong!) and choose from them along the line as dictated by adding up 2 sines where the result is 0-16.
2008-11-03 09:20
HCL

Registered: Feb 2003
Posts: 728
Well, maybe i mis-interpreted the term "base-plasma-picture".. I thought of this as a static picture, but in the case of EoD, this base-plasma-picture is always calculated and updated each frame.

This effect is so over-used ever since Krestyron, so i thought everyone knows the difference between this and the static FPP-plasma in e.g. Coma Job.

With a faster calculation of the base-plasma-picture, i managed to squeeze out a little bit more of this poor plasma-effect, but then again it felt a bit old in 2004 already when i coded it..
2008-11-03 09:28
HCL

Registered: Feb 2003
Posts: 728
Quote: it's Graham's invention. I think the mod's should change the topic title if possible, before the credit will go to HCL in the scene's mind. :P

Yepp, shit like that always happens. When you reach a certain level of popularity, people will start giving you credit for stuff that others made.. That also happens to Graham. e.g. the all-border sprite-zoomer from ComaJob, which ppl think is Graham's invention, but just look at this.. Fierce Creations or was it Design Overdose. And many more examples in *real life*(tm).
2008-11-03 09:30
Oswald

Registered: Apr 2002
Posts: 5094
Quote: I didn't intend to step on any toes by calling it 'HCL-plasma', I just thought that everyone would know what I meant then, since the type of plasma I'm talking about has appeared in a few BD demos now (Royal Arte, Cycle, Edge Of Disgrace).

Seems like I have the technical theory correct then.

I have a precalced picture that looks about what a single frame from a normal per-pixel-double-sine-plasma looks like.

Then in the displayer I pick y-lines from that above plasma indexed on a double-sine.

However somehow it don't get that 'plasma'-feeling in it.

But now we hear that HCL has added some kind of extra X-component magic to it, which would explain why it looks even better in EoD. I'll have to start Cycle again and compare the last-part-plasma there.



better calling it FPP plasma, as the technique (*drums*) was invented by Graham. :)
Previous - 1 | 2 | 3 - Next
RefreshSubscribe to this thread:

You need to be logged in to post in the forum.

Search the forum:
Search   for   in  
All times are CET.
Search CSDb
Advanced
Users Online
Shogoon/Elysium/MSL
marley
rexbeng
Jazzcat/Onslaught
Chesser/Blazon
sachy/BOOM!
Gordian
B.A./QUANTUM
Guests online: 123
Top Demos
1 Next Level  (9.7)
2 13:37  (9.7)
3 Mojo  (9.7)
4 Coma Light 13  (9.6)
5 Edge of Disgrace  (9.6)
6 What Is The Matrix 2  (9.6)
7 The Demo Coder  (9.6)
8 Uncensored  (9.6)
9 Comaland 100%  (9.6)
10 Wonderland XIV  (9.6)
Top onefile Demos
1 No Listen  (9.6)
2 Layers  (9.6)
3 Cubic Dream  (9.6)
4 Party Elk 2  (9.6)
5 Copper Booze  (9.6)
6 Dawnfall V1.1  (9.5)
7 Rainbow Connection  (9.5)
8 Onscreen 5k  (9.5)
9 Morph  (9.5)
10 Libertongo  (9.5)
Top Groups
1 Performers  (9.3)
2 Booze Design  (9.3)
3 Oxyron  (9.3)
4 Censor Design  (9.3)
5 Triad  (9.3)
Top Graphicians
1 Mirage  (9.8)
2 Archmage  (9.7)
3 Pal  (9.6)
4 Carrion  (9.6)
5 Sulevi  (9.6)

Home - Disclaimer
Copyright © No Name 2001-2024
Page generated in: 0.059 sec.