New Scenecontrol Features #23
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Changelog
BooleanChannelto handle boolean values, comparisons, and if-else operationsBooleanChannelconversionChannel._and,Channel._or, andChannel._notto perform boolean operationsChannel.equal,Channel.greaterThan, andChannel.lessThanin order to compare values, both numbers and stringsChannel.timeScale,Channel.timeWarp,Channel.chain,Channel.timing, andChannel.absChannel.sineandChannel.coswhich take in only one parameter%operator on channelsGroupPropertiesin order to interface withNoteIndividualPropertiesandNotePropertieswhen necessaryTRSstruct, which provides easy access to the TRS components of a matrixTRS + TRSresults in a newTRSwhich adds translation and rotation, and multiplies scaleTRS * TRSresults in a newTRSwhich performs a matrix transform and extracts the resulting TRS valuesTRS.Matrixgets theMatrix4x4from aTRS, which is also implicitNoteDatato access per-instance data from a noteNote.timing()returns the start timing of a noteNote.delta()returnsChannel.timing() - Note.timing()Note.x/y/z()returns the position, without any modification by angles or scenecontrol, of a note's start at the current timeNote.floorpos()returns the floor position of a noteNote.isArc()returns if a note is an arcNote.type()returns a string representative of the note's typeEmmySharpin order to produce a more comprehensible library, without making any breaking API changesEmmyType("Easings")instead of repeatedEmmyChoice(. . .))Editor.ScenecontrolCheckswhich reports an error if a channel type is created in code but not handled by serialization or deserializationKnown Issues