We have the foundation laid (necessary changes in runtimes and editor) and some basic UI that allows for editing the curves. Unfortunately it's not quite ready for the beta. We need to be quite sure of the project file format changes since once people start saving project files, we have to support opening those with any later version. Mostly though it needs to work correctly in all situations, where currently there are some cases that aren't yet handled. For example, moving keys past other keys needs to have sensible behavior regarding how the curves are adjusted. Anyway, how long will it be? I wish I could say! I could hope to start the beta in a week or two, but don't hold me to that! :wounded:
Regarding the graph being separate from the dopesheet, currently you can choose which timelines are shown in the graph by choosing rows/keys in the dopesheet. The graph has a list of timelines and you can pin and hide/show them.
The graph itself works like the viewport mouse zoom, but also has a timeline and transport controls like the dopesheet. We have a few modes when manipulating keys to decide how the curves are adjusted and we'll have lots of other useful tools in the end. We won't hold back the first beta for such niceties, we just need the basics to be reasonably solid.
The graph is super exciting! It of course makes animating both easier and higher quality. Plus we've improved a number of things about the runtimes (the commits can be seen in the 3.9-beta branch), such as just generally being more efficient, changes that allow us to increase the number of different types of timelines, and to have multiple curves for a single key. This allows you to have separate curves for RGBA or XY, even when those properties are keyed combined. Yes, settle down, we'll allow you to key them separately :p, but we still need separate curves for combined keys because 1) existing projects have many XY combined keys, 2) keying XY combined reduces the timeline count, which is good for performance, and separate curves means you often don't need separate X and Y timelines, and 3) it's needed for other timelines, like RGBA or IK.