Status update time:
The longer I work on DeleD, the more I realize just how much the application as a whole was held back by the fact that the original developers were actively concerned about maintaining backwards compatibility with hopelessly outdated hardware and ancient Delphi versions like Delphi 5/6/7. Well, maybe Delphi 7 I could have
vaguely understood in 2011 (the last year the Delphi version was worked on, before JuhaManninen started the Lazarus port in 2013), but 5 and 6? Give it up already! To be more specific, what I mean is that after getting the application to a relatively "stable" point (as in stable
including the major project-wide changes I've made) a couple of weeks ago, I started going through unit-by-unit specifically looking for areas where I could further "trim the fat", as I obviously don't share the original developers compatibility concerns (or any compatibility concerns when it comes to Delphi for that matter, as it would be literally impossible now).
There were/are so many. To provide (just one) example, there was an 800-line (now unused) unit called "unit_TextureManipulator" that did absolutely nothing other than to (somewhat poorly) implement a total of
four unique image-editing functions (drawing a line on an image, blitting text to an image, adjusting the alpha channel of an image, and finally,
performing a flood-fill on an image.) Woo-hoo! Not. Every instance of its use in the application has been replaced with a call to the relevant BGRABitmap function/procedure, which reduces each of those instances from about 20 to 40 lines to 1 or 2. (As there is no longer a need to create a unique TTextureManipulator instance, pass the texture data to it, and so on, because all images are now themselves BGRABitmaps to begin with!) From there, the rabbit hole just gets deeper... I mean, here is a literal, direct copy-and-paste of a comment that was left in the code of a function called Tfrmside.UpdateProjection (which as the name suggests, updates the OpenGL projection of the 2D "side" viewport):
// INFO, PJ: On my Win98 Laptop, UpdateProjection is called before camera is initialized.
Cool, man! That matters a lot, currently, and I will be sure to keep it in mind.
Even in the somewhat unlikely case that "PJ" wrote that comment in
2004 (which is the year development on DeleD first began, as near as I can tell), it still would have been a borderline irrelevant issue referring to an outdated operating system running on the most niche hardware possible. (How many people who weren't lawyers or "businesspeople" that got issued them them by their employers really
bought Windows 98
laptops for home use? And to those who did...
Why? I personally found it extremely obvious (back then) that buying a laptop meant a drastic loss in performance for a non-trivially higher amount of money).
Not to fret, though: I'm no fan of vaporware personally, so although I've mostly stopped caring about trying to "release" the updated codebase by a specific date (my real-life job has enough deadlines to begin with!
) I will say that you can all 100% for real expect to see a full-project upload by the end of the summer (meaning late August or so).
Also, just to be clear, none of this was meant to suggest that the original developers were individually "bad" at what they did. Obviously, that isn't true, or DeleD would never have reached the point it did. More so this was just kind of a tongue-in-cheek venting on my dislike of the combined "too-many-cooks-in-the-kitchen"/general red-tape syndrome that too often creeps into collaborative projects.