ABX/doc/versions.txt

144 lines
5.5 KiB
Plaintext

I started ABX very informally, so I did not really have logical version numbers
initially, and I'm not sure about the earliest packages I made.
In April 2021, I started trying to formally package with a consistent version
number, with the following meanings:
0.1.0 (<2021):
Versions before 2021, with "Copy NLA" and "L.Ink Compos" and not much else.
There were some experimental version of context.py, file_context.py, and
blender_context.py in the source, but they were unused and buggy or incomplete.
0.2.0 (2021-02 to 2021-05):
Versions from April/May 2021, with major design changes:
* "Copy NLA" became "Copy Animation", and acquired new options:
- NLA (Old NLA behavior)
- Dopesheet (copy the "active action", which appears in the dopesheet).
- Copy/Rescale (instead of linking the animation, copy it, possibly rescaling)
- Scale Factor (if other than 1.0, the animation is scaled when copied)
* "L.Ink Compos" became "Ink/Paint Config", and also got new options:
- Ink-Thru (Freestyle ink workaround for transparency, can now be turned off)
- Billboards (Accurate alpha-billboard ink masking technique)
- Separate Sky (Generate sky on a separate render layer for accurate compositing)
* "Lunatics! Properties" got a new field for the scene "suffix" or title, used
exclusively to give some extra information in the scene name. This was to
accommodate short shot codes I was using, like "G.PoV" meaning "Georgiana
point-of-view shot", to clarify the letter-codes for the shots, especially
since I was changing some of them around.
0.2.5 (2021-05):
The last version before introducing the file_context data system into the main
functions of the program. It contains fully-working and tested file_context.py
and accumulate.py, but they haven't been updated with specific changes to
accommodate the Blender UI yet, and the abx_ui.py module doesn't use them.
I made this version as a stable fallback for production with all of the recent
bugfixes, but none of the new (and likely buggy) data system features.
Includes:
* render_profiles feature in the Render panel. This is a quick select for
changing the render settings and output filepath to be named consistently
and use the correct settings for the most common pre-visualization renders
I make, and the full PNG stream render.
- The profiles are hard-coded, because there's no contextual data yet.
- EXR files may be generated from previz. I didn't make any attempt to
stop this, because it's usually not relevant (they'll be clobbered by
the full PNG renders, which are done last -- but this could be a problem
if I tried to regenerate the previz later)
0.2.6a (2021-06):
* Default behavior from YAML files.
* Attempts to automate file and scene naming.
* Render Profiles basically works, and uses defaults set in the project's
abx.yaml file(s).
This is the last version with the full file_context system, and I never really
got it to work right. So, I decided to move on without it.
CURRENT DEV:
0.2.7:
After another review, I decided to eliminate file_context and related modules
from ABX, replacing them with a much simpler "abx_context" module that just
updates from the filepath and gets the relevant 'abx.yaml' files from the project
directories, using "accumulate" (which is still present).
I never got the ranks/branches system working as planned, and it's increasingly clear
that this code is more appropriate to use with KitCAT. It has unnecessary features to
support non-Blender files, and it's possible for it to mess things up or break, if the
project context is unexpected.
Project Properties will exist, but will be a very simple naming utility, with the
various names we need implemented simply as Blender scene properties.
Lunatics Properties will be removed after moving dependencies in Ink/Paint to the
new system.
ROADMAP (for 2021?):
0.2.8:
?
0.2.9:
?
0.3.0:
New features. Hopefully:
* Recognize/use "role" field.
* Ink/Paint Config for compositing (as opposed to rendering)
* Appropriate config tools for anim, mech, etc -- other roles
* Automate Freestyle "Ink-Camera" clipping system.
* Character Armature comparison (find misnamed or extra bones)
* Insert characters into an animation file
* Find/report broken dupligroups and/or animation proxies
* Generate linking report(s) -- information to support correct
linking diagrams, or possibly source for auto-generating them?
0.3.1:
Pop-up report generation? I had this working experimentally, years ago, and
it'd be useful to generate pop-up reports for some of the introspection
features I want to add.
0.3.x:
Improvements to data system and other capabilities.
* Possible integration with KitCAT? There's significant overlap between ABX
and KitCAT and I already call the metadata files "kitcat" data in the sources.
Will they be merely interoperable, or should I actually make ABX into the KitCAT
plugin for Blender?
* Port ABX to Blender 2.8+, keeping 2.7 support, if possible. If I'm really
going to use 2.8 for compositing, I will need this.
0.4.x & beyond:
Version with fairly-complete Blender 2.7 & 2.8 support & integration with KitCAT.
Might consider adding support for MoCap and Digital Puppetry tools?
Possibly add tools for "machinima workflow" with UPBGE or Godot platforms.
Integration with Papagayo / Lipsync data for animation?
Maybe find the appropriate data files and run the lipsync importer on them?
Or perhaps incorporate the lipsync importer code?