Rhino/BG information 313 glöps

- general:
- level: user
- personal:
- first name: Alejandro
- last name: del Campo
- cdcs:
- cdc #1: Enigma by Phenomena
- cdc #2: Mental Hangover by Scoopex [web]
- cdc #3: Blood Sugar Rises by AttentionWhore
- demo Amiga OCS/ECS Batman Rises by Batman Group
- In order that the @Photon review is not misleading (since he refers to the whole demo as if it were a "played back") and some clueless person thinks that the whole demo is a played back, I provide this detail of the fxs where you can see which ones include a vector player and which ones do not.
As you can see, we have 14 fxs/parts that do not include vector player and 8 that include vector player, many of these as addition to real-time code (for example, the ball explosion over Gotham which includes a fire fx below, the greetings, where the lighting and the red vector beam are real-time, the Joker over Gotham whose distortion fx is real-time, or the crow's textured background). For reference, regarding the amount of fxs, recent Amiga demos like Rule 30 has 10 fxs in total, Transhuman/Pachinkoland has 13 fxs or Hologon 14 fxs. So, we can say that even removing all the fxs that included vector player, you still have a demo full of other fxs.
About the eternal realtime vs precalculated debate, I have to say that what often determines the increased complexity of a code and the involvement of more innovative techniques is not the division between realtime and precalculated, but the level of performance optimization that an fx has. You can make a real time starfield routine that only moves 100 dots at 50 fps and it will be much simpler and easier to program than one that moves 5000 dots at 50 fps using innovative precalculated techniques of your own invention.
On the other hand, anyone who has experimented with making new fxs knows that it is common to first devise the fx in real time and in later steps to think of new precalculated techniques to increase the performance of the fx. So, precalculated techniques come as a result of the evolution to make the fx look more spectacular within the limits of each platform.
Therefore, the obsession by the real time seems to me to be typical of a coder without much real experience programming demo fxs and who does not know very well what he is seeing when he sees a demo. An experienced coder should know when an fx (whether precalculated or not) implies an innovation that significantly improves performance of previous versions of the same fx and, of course, to qualify anything that has a vector player as worthless also denotes little experience and thoroughness.
It is true that in a vector player there is a large amount of pre-calculated data in PC, but even in this matter achieving maximum performance has implications that make programming a vector player not so obvious as from the lack of experience and rigor would have us believe. For reference, I will now go into some details about some innovations involved in the vector player that I implemented to increase performance.
A new thing with respect to other vector players was to separate the thread that visualizes the frames (which is executed by interruptions) and the one that renders the frames, then I included a big chip buffer so that the render goes rendering frames in advance in the buffer while it has memory. Thus, during the rendering of less complex frames, the renderer gains time by prerendering more frames in advance so that when it is time to render complex frames, the thread that displays the animation will show the prerendered frames in the buffer and they will still be displayed at 50 fps.
Then, the prerendered frames are not buffered as full screens, but only the screen area used by each frame, and the display thread also displays them this way, adjusting the screen size to each frame. In this way more frames can fit in the buffer while the dma is freer, and the previous frames can be deleted optimally with long movems while the blitter also does its job.
Another additional optimization, in order to keep the cpu busy all the time, is that when the thread that renders cannot render any more because the buffer is full, it caches the line drawing blits of the complex frames that are about to be rendered overwriting the data of frames already rendered, that is, it advances the calculations that transform the coordinates of the lines into the data that are sent to the blitter so that when it has to render complex frames, it can do it ultra-fast.
Without going into the details of compression and real-time decompression of data involved in order to play animations of more than 2000 frames, I hope that these brief notes can give an idea of the code-complexity that can be behind a high performance vector player, which, as I said before, to me is just another fx, which can be optimized with innovative techniques to render spectacular things.
Still, when a demo is 90% vector player, even considering the complexity behind it, I understand that it had less code work and demonstrated less diversity of coding techniques than traditional demos, and somehow that should be reflected in the ratings as well. - isokadded on the 2022-12-30 13:53:33
- demo Amiga OCS/ECS Batman Rises by Batman Group
- Live recording at Posadas Party Autumn Edition 2022 added!
- isokadded on the 2022-12-27 12:06:06
- demo Amiga OCS/ECS HAM Eager by Platon
- It stands out for its originality and code work.
- rulezadded on the 2022-12-23 13:25:13
- demo Amiga OCS/ECS Batman Rises by Batman Group
- We have added a minisite with a write-up about the narrative side of the demo. We hope you enjoy it!
Once again, thank you all for the feedback! - isokadded on the 2022-12-22 17:22:44
- demo Atari Falcon 030 Own by Lamers [web]
- Short but cool.
- rulezadded on the 2022-12-20 14:46:04
- demo Amiga OCS/ECS Batman Rises by Batman Group
- Soundtrack from DJ Uno now available for download in mod format!
- isokadded on the 2022-12-20 00:45:10
- intro Amiga OCS/ECS 30 Years by Crass [web]
- I loved it! Classic crackto spirit.
- rulezadded on the 2022-12-18 15:18:22
- demo Amiga OCS/ECS Batman Rises by Batman Group
- @mikev @Jumbo Burger @Aghnar Thanks!
@Charlie
Yes, we are now trying to fix some compatibility issues in order to release a trackmo update and then we will release a file version as well.
Thanks! - isokadded on the 2022-12-18 15:17:17
- demo Amiga OCS/ECS Batman Rises by Batman Group
- @bifat Thank you for your honest feedback! We really did everything we could to keep the classic old school spirit of fxs at 50 fps :)
About vector players, I like to see it as an fx in itself that can be implemented more or less efficiently, just like any other fx. In our case, the challenge was to beat Eon's vector player by implementing similar scenes but at 50 fps instead of 25 fps, which implied not only improving the player speed but also the data compression, since double the fps also implies double the frames. The optimization here involves not only the player but also the additional tools and, overall, I would say that from a strict code point of view, it is a bigger challenge than breaking the record for the number of dots in a tunnel or the faces of a glenz vector.
I also think vector animations are a powerful storytelling tool and can complement the classic fxs concept well. I don't see it as a Manichean question about classic demos vs anim demos but it can all be tools that we have at our disposal.
On the other hand, objectively I can't agree that the fxs in this demo are few, since you can remove the parts that include vector animations and still get a demo of about 4-5 minutes, many of the parts where we use vector anims are complemented with additional code fxs, for example, the background of the crow scene or in the greetings, where the lighting of the background vector anim is in real time, as well as the vector red light beam. On the other hand, there are parts that are composed of 4 or 5 simultaneous fxs, such as for example the formation of our BG logo at the beginning, that includes a background plasma, zoom out of the logo with curves, classic realtime vectors for the "group" zoom out, and a little vector animation too :) - isokadded on the 2022-12-17 14:02:56
- demo Amiga OCS/ECS Mental Hangover by Scoopex [web]
- This demo marked a before and after, it deserves all the praise we can give it and even more.
- rulezadded on the 2022-12-15 23:40:13
account created on the 2010-11-10 19:57:09