![]() |
![]() |
#61 | |
Registered User
Join Date: Dec 2022
Location: UK
Posts: 5
|
Quote:
Not wishing to resurrect an old thread, but I started tinkering with some old ideas I'd had many aeons ago. I wanted to expand on the rotator I did for Brian the Lion to a full screen roto-zoom like effect, only to discover that Axis had already done something similar in RockLobster. Nevertheless I persevered and created a 320x256, 16 colour 1x1 pixel rotator running at 50fps using the old double shear technique. It's not really a roto-zoom as the zoom is just the usual side-effect from the double shear effect - Axis did comspensate for that in his code, so it's not entirely comparable, and used a C2P approach to doing the vertical shear. However the point of commenting on this thread is that for the vertical shear I'm using a similar technique to what's described here I believe. I shear within a 16 pixel wide block using 4 blitter passes, all at run-time. So unlike the full screen rotator which was incremental, this one can be set to an arbitrary angle at run-time. [ Show youtube player ] I could have 'optimised' it a bit to use fewer passes based on the shear angle, but it wasn't really worth it. It's already cutting down the number of horizontal copies based on shear angle, so in some frames there's a load of blitter time free. But in the worst case I think I'm using about 90% of the frame. I tried triple buffering so that some frames could run over a bit and claw back the time on the lighter frames. But the issue is that it goes in cycles, so I'd need far more than 3 buffers to avoid over-running before I had free frame time to claw it back. Still it can easily be optimised further, for one thing most of my code is written in C, only a few critical functions are hand optimised assembly. I thought at the time, this technique could be used for a sine scroller without even realising it had already been done ![]() |
|
![]() |
![]() |
#62 |
Lemon. / Core Design
Join Date: Mar 2016
Location: Tier 5
Posts: 1,214
|
That looks great!!!
You should definitely get back into demo coding! |
![]() |
![]() |
#63 |
Registered User
Join Date: Dec 2022
Location: UK
Posts: 5
|
|
![]() |
![]() |
#64 |
Defendit numerus
Join Date: Mar 2017
Location: Crossing the Rubicon
Age: 54
Posts: 4,513
|
|
![]() |
![]() |
#65 |
Registered User
Join Date: Aug 2020
Location: Huddinge
Posts: 25
|
When I got back into amiga coding (10 years ago now... time flies...), I tried to do bitmap rotation with shears, but I thought you had to use 3 shears. I was not aware of the fact that 2 was enough. I only managed to do a small one in 64x64 pixels or so in one bitplane.
Can only agree with @Dan and @Ross. Awesome, and please make a new demo! ![]() |
![]() |
![]() |
#66 |
Registered User
Join Date: Jun 2020
Location: Druidia
Posts: 391
|
Wow! Really cool to see Kreator on here and coding Amiga again!
That full-screen rotator looks very nice. Poking around your youtube channel I also spotted your 256x256x16 rotator, also excellent to see! I made my own tribute to your and Mr.Pets rotators in a recent demo: https://www.pouet.net/prod.php?which=96604 Would be cool to compare notes some day. |
![]() |
![]() |
#67 | |
Registered User
Join Date: Dec 2022
Location: UK
Posts: 5
|
Quote:
![]() |
|
![]() |
![]() |
#68 |
Thalion Webshrine
Join Date: Jan 2004
Location: Oxford
Posts: 14,581
|
Wowsers, Michael Troughton in the house. It's like having royalty pop over to borrow some tea.
|
![]() |
![]() |
#69 | |
Registered User
Join Date: Jun 2020
Location: Druidia
Posts: 391
|
Quote:
Yeah, it's roughly the same amount but I do need a bit more bitplane dma which soaks up the difference, I went for size over colors. I too have a few spare cycles but no magic to make the blitter faster and no memory left for triple buffering. I did manage to squeeze in copper bar colors to make up for 8 colors and then used some extra cycles to print the greets. It was a lot of fun and I'd been enamored by your Brian effects for 30 years so it felt great to finally make my own. |
|
![]() |
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
Thread Tools | |
![]() |
||||
Thread | Thread Starter | Forum | Replies | Last Post |
Alien Breed II title pixel by pixel logo removal | dex | project.Sprites | 17 | 06 May 2020 15:23 |
Sine scroller | pmc | Coders. Tutorials | 95 | 02 July 2017 16:40 |
Sinus Creator/Editor | Legionary | Nostalgia & memories | 2 | 11 February 2017 17:49 |
Working / Creating Sinus tables | h0ffman | Coders. Tutorials | 6 | 15 January 2011 23:37 |
Corkscrew scroller | pmc | Coders. Tutorials | 33 | 01 September 2010 12:41 |
|
|