| |
wacek
Registered: Nov 2007 Posts: 513 |
Release id #218343 : E2IRA
User Comment
Submitted by Mojzesh [PM] on 27 July 2022
@wacek Before I left arise (a year ago), the only language on PC you knew at that time was PC Basic. Your poor coding skills and the absence of own demosystem developed solely by arise (it was all spaghetti code) was one of the key points that made me leave your group (among several others). It’s clear to me - especially by judging your answer to this - that you didn’t write the compressor yourself (don’t lie, I know you well enough) … To change my mind, just prove it (there are lots of ways to prove it without the need to reveal the source code).
And do you finally know in 2022 how many CPU cycles are eaten by a given number of sprites, you so-called ‘brilliant coder’?
Ps. You were using the same compressor in the past and you told me so yourself back then you didn’t write it :D |
|
... 25 posts hidden. Click here to view all posts.... |
| |
CreaMD
Registered: Dec 2001 Posts: 3050 |
Quote: What Krill said! A good show is a good show, basta!
What Krill and Joe said. |
| |
DeMOSic
Registered: Aug 2021 Posts: 126 |
Quote: What Krill and Joe said.
What Krill, Joe and CreaMD said. |
| |
Raistlin
Registered: Mar 2007 Posts: 659 |
I would love to know what “real-time” graphics even is ;-)
No sine tables
No colour tables
No textures/pre-drawn pictures?
No pre-canned physics
Etc etc.
From the very first computers through to the very latest, “real-time” is a moving goalpost. |
| |
Krill
Registered: Apr 2002 Posts: 2969 |
Quoting RaistlinI would love to know what “real-time” graphics even is ;-) As i said, it boils down to degrees of freedom in rendering. Look-up tables etc. don't factor in, as long as you can rotate that cube about 3 axes with arbitrary angles. =) |
| |
chatGPZ
Registered: Dec 2001 Posts: 11357 |
reminds me a lot of the comments we got for Crowd Pleaser (which kindof uses a similar approach). Funny really :) |
| |
Mojzesh
Registered: Jul 2006 Posts: 12 |
@Raistlin
Animations are a pretty repeatable thing - apart from things like cropping and moving them on the screen.
Write code for playing it once, and repeat it everywhere (as Bitbreaker said).
You might occasionally need to correct some of the frames manually for either removing artefacts or for gaining better compression ratio.
Recipe for ANIMATION-BASED demo is simple:
- create something on a PC using either 2D / 3D editor or modern programming language (with high precision floating point numbers, almost infinite memory and CPU power).
- create a set of bitmaps out of it.
- compress animation frames
- use your player (occasionally, change some colors or move clip on the screen, but you’re limited of what you can do here…)
For me, REALTIME effect is an effect which has the following properties:
* it’s CALCULATED and not DEPACKED / DECOMPRESSED while you watch it on every frame of the effect;
* your effect is parametrised, so that you can control it in a way where you can quickly change its property, like: direction of movement, speed, colors, shape etc… you name it;
* good proof of such a parametrisation is using randomness for params, I’m using this technique in some of my effects (find them yourself);
* in most cases this means that the effect has to be rasterised (drawn pixel by pixel or byte by byte) (or you have to sync with VIC to achieve raster tricks, for which (in most cases) you also need to calculate some data every frame);
* most GFX rasterisation algorithms are realised in sequential order following specific and strict (from mathematical or logical point of view) steps, some of those steps are costly for CPU (and any tricks to speed this bit up are fine in my opinion);
* examples of such steps would be as follows (I will use wireframe vectors from E2IRA as an example of what it would require IF IT WAS REALTIME):
* Calculate coordinates of all vertexes in 3D or 2D space (depending on your effect) or get them pre-calculated (I’m still fine with it), in this particular effect this applies to all diagonal lines, all points where diagonal lines meet side edges, positions of flying bits;
* Apply perspective projection on all points (to convert from 3D to 2D space);
* Run elimination of hidden surfaces using either face normal vector method, Z-Buffering (or you can even use cleverly encoded LUT for it);
* then either: Draw lines of all faces on a frame-buffer, draw any other flying objects (whose coordinates and visibility you also calculated or obtained from LUT);
* or: Rasterise it pixel by pixel or byte by byte following any other rasterisation algorithm of your choice (which also consist of a set of sequential operations);
* Clear the frame;
* Start calculating then drawing the next frame;
* At this point the entropy of complexity of your code is high (code is less similar to itself, or less repeated, and more “random”);
* This way you’re proving that you really know what you are doing and how the algorithm is working in details.
IMHO It’s fine to:
* use any kind of lookup tables (LUT) (e.g. Multiply / Division tables, sine/cosine, color tables etc.)
* use single code loop
* use crafted speed code fragments which you either loaded from disk or generated on the fly (even if it fills the entire RAM)
* use DriveCalc
* use pre-calculated positions of some objects on screen
* use textures of all kinds for any texturing effects (or distorters, flexers etc.)
* also it’s fine to use plain frame animations when they are used as animated texture on other objects for example
* use any tricks with VIC since this is already realtime, as you have to sync to the raster line, and do your job while the raster beam goes through the screen.
Also, for anyone concerned:
I know over 20 programming languages and countless of other IT technologies, and daily I use at least a half of them - so please show some respect and don’t even get me started
on what I really know & can code.
ps.
I’m ignoring other ignorants’ comments here, I have no time for senseless divagations. |
| |
chatGPZ
Registered: Dec 2001 Posts: 11357 |
Quote:I know over 20 programming languages and countless of other IT technologies, and daily I use at least a half of them - so please show some respect and don’t even get me started
on what I really know & can code.
https://en.wikipedia.org/wiki/Argument_from_authority
Funny |
| |
Mojzesh
Registered: Jul 2006 Posts: 12 |
Yes, you're right, you're funny @Groepaz
Show us what you know. We will laugh... |
| |
Mojzesh
Registered: Jul 2006 Posts: 12 |
@Groepaz Also I have to admit that your comment was very "substantial"... |
| |
chatGPZ
Registered: Dec 2001 Posts: 11357 |
I got nothing to prove here. Posing with knowing 20 programming language in a thread where most ppl probably do the same is still funny however. Keep it coming! |
Previous - 1 | 2 | 3 | 4 - Next |