Log inRegister an accountBrowse CSDbHelp & documentationFacts & StatisticsThe forumsAvailable RSS-feeds on CSDbSupport CSDb Commodore 64 Scene Database
 Welcome to our latest new user Sepa ! (Registered 2024-05-13) You are not logged in - nap
CSDb User Forums


Forums > CSDb Entries > Release id #225094 : Skybox
2022-11-08 20:45
Burglar

Registered: Dec 2004
Posts: 1041
Release id #225094 : Skybox

ok, I need to know before I cast my vote :P

https://youtu.be/yFWPWbhGrvA?t=89

that almost 3d like effect (brown background), how did u do it :)
is it full anim, how did u generate it? if it's not, or hybrid, do tell. probably my fav effect of the compo :)
2022-11-08 23:45
Krill

Registered: Apr 2002
Posts: 2854
If this is "full anim", worth a downvote! =)
2022-11-09 08:11
mankeli

Registered: Oct 2010
Posts: 110
Thanks. It's no animation at all! But still lots of precalc. :) "Filterplotter" is it's name. Totally underused in the demo, because it is probably one of the oldest effects and mangled so many times I couldn't touch the code any more :)

Anyway:
Zooming/rotating Starfield stars / triangle vertices are calculated with some adhoc product-to-sum trigonometric lookups.

Triangles were originally meant to be "filled" with more delicate patterns. Basically building on the idea from Mixeri's Sierpinski plotter: Calculate averages between edge points by using carry bit as 9th bit (LDA ADC ROR), store the intermediate values and do this intelligently to build "textures". Iirc I may have got disappointed about the performance initially, left it for "fix it later" and then never got back to it. And there's also a problem that even with 9 bits there's not enough room for guard bands so I would have resort to clipping and detecting overflows.

The plotter itself has 64 (8x8) 256 long tables. Each basically containing "if I have petscii character A, and it would have a pixel plotted in coords X,Y, what character would best represent the resulting bitmap". (Some ad-hoc magic is required to calculate this, as for example $20 + single pixel plot is usually best represented by $20)

The clearing of the screen was also fun: No time to clear the whole screen, so what to do? Generated a custom charset from petscii that has chars $00 and $20 swapped. This meant that after I LDX'd the existing char from memory, I could just BEQ AddToClearList. The clearlist is just a prefilled LDA #0 STA STA STA STA STA routine, and then RTS gets patched in the end after all the plots were done.
2022-11-09 11:12
Oswald

Registered: Apr 2002
Posts: 5025
thats one of the coolest fx from the demo, I'm impressed how smooth it looks when the plots leave trails. would like to see it longer, annyoing its so short and interrupted with the logo screen.

A table for each pixel inside a char ? how does that work ? and I assume you plot bigger virtual pixels than 1x1, otherwise you would always get an empty char.
2022-11-09 12:46
Flotsam

Registered: Jan 2004
Posts: 81
I'm guessing the scrolling logos are needed for the pre-calc. Personally I dig the switching between the two. Both views look fab, even tough only one is ultimate code porn.
2022-11-09 17:32
Burglar

Registered: Dec 2004
Posts: 1041
@Mankeli, thanks for your elaborate answer and I'm impressed it's not an anim :D
now that I've read your approach a couple of times, I think I understand most of it.
also interesting to read your clearscreen approach, I've done similar things (injecting dynamic rts in generated speedcode and reverting back for next frame) when there were just not enough cycles.

I have now cast my vote ;)
2022-11-10 06:35
ChristopherJam

Registered: Aug 2004
Posts: 1381
Very very cool. Thanks for the explainer!
2022-11-10 07:37
mankeli

Registered: Oct 2010
Posts: 110
@Flotsam, nah they are needed for dezing ;) And they are also easy on the rastertime and memory usage so it's possible to load during them.

@Burglar, no problem. Thanks for asking! I love reading demo writeups myself, but I never got around to write them after releasing something even if I always mean to do so.

@Oswald, Kolmiolaeaeke is actually older version of the effect that was shown at Zoo 2019. It doesn't have the cuts.
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
Beast/Crescent
lucadip
MCM/ONSLAUGHT
Magic/Nah-Kolor
Clayboy
sebalozlepsi
Didi/Laxity
csabanw
iAN CooG/HVSC
Krill/Plush
hedning/G★P
Quetzal/Chrome
Guests online: 131
Top Demos
1 Next Level  (9.8)
2 13:37  (9.7)
3 Mojo  (9.7)
4 Coma Light 13  (9.7)
5 Edge of Disgrace  (9.6)
6 Comaland 100%  (9.6)
7 Uncensored  (9.6)
8 No Bounds  (9.6)
9 Wonderland XIV  (9.6)
10 Bromance  (9.5)
Top onefile Demos
1 Party Elk 2  (9.7)
2 It's More Fun to Com..  (9.6)
3 Layers  (9.6)
4 Cubic Dream  (9.6)
5 Copper Booze  (9.5)
6 TRSAC, Gabber & Pebe..  (9.5)
7 Rainbow Connection  (9.5)
8 Dawnfall V1.1  (9.5)
9 Quadrants  (9.5)
10 Daah, Those Acid Pil..  (9.5)
Top Groups
1 Oxyron  (9.3)
2 Nostalgia  (9.3)
3 Booze Design  (9.3)
4 Censor Design  (9.3)
5 Crest  (9.3)
Top Coders
1 Axis  (9.8)
2 Graham  (9.8)
3 Lft  (9.8)
4 Crossbow  (9.8)
5 HCL  (9.8)

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