BabylonJS/Babylon.js · error · Error
Easing type not yet implemented
Error message
Easing type not yet implemented
What it means
CreateEasingFunction maps an EasingFunctionType enum value to a concrete easing class, but only a subset (e.g. CubicEase, ElasticEase, ExponentialEase, ...) is implemented. Requesting any other easing type hits the default branch and throws this explicit not-implemented error.
Source
Thrown at packages/dev/core/src/FlowGraph/Blocks/Execution/Animation/flowGraphEasingBlock.pure.ts:55
*/
function CreateEasingFunction(type: EasingFunctionType, ...parameters: number[]): EasingFunction {
switch (type) {
case EasingFunctionType.BezierCurveEase:
return new BezierCurveEase(...parameters);
case EasingFunctionType.CircleEase:
return new CircleEase();
case EasingFunctionType.BackEase:
return new BackEase(...parameters);
case EasingFunctionType.BounceEase:
return new BounceEase(...parameters);
case EasingFunctionType.CubicEase:
return new CubicEase();
case EasingFunctionType.ElasticEase:
return new ElasticEase(...parameters);
case EasingFunctionType.ExponentialEase:
return new ExponentialEase(...parameters);
default:
throw new Error("Easing type not yet implemented");
}
}
/**
* An easing block that generates an easingFunction object based on the data provided.
*/
export class FlowGraphEasingBlock extends FlowGraphBlock {
/**
* Input connection: The type of the easing function.
*/
public readonly type: FlowGraphDataConnection<EasingFunctionType>;
/**
* Input connection: The mode of the easing function.
* EasingFunction.EASINGMODE_EASEIN, EasingFunction.EASINGMODE_EASEOUT, EasingFunction.EASINGMODE_EASEINOUT
*/
public readonly mode: FlowGraphDataConnection<number>;
View on GitHub (pinned to 0592b347b8)
Solutions
- Use one of the supported easing types (CubicEase, ElasticEase, ExponentialEase, etc. per the factory's switch)
- Check the EasingFunctionType value in the block config against the types the installed core version implements
- Upgrade @babylonjs/core if the desired easing type was added in a newer release, or implement a custom easing function
Example fix
// before config.easingFunction = EasingFunctionType.BezierEase; // not implemented // after config.easingFunction = EasingFunctionType.CubicEase;
Defensive patterns
Strategy: validation
Validate before calling
const SUPPORTED = [EasingFunctionType.CubicEase, EasingFunctionType.ElasticEase, EasingFunctionType.ExponentialEase];
if (!SUPPORTED.includes(config.easingFunction)) throw new Error('Unsupported easing type: ' + config.easingFunction); Try / catch
try { fn = CreateEasingFunction(type, params); } catch (e) { if (e.message === 'Easing type not yet implemented') { fn = new CubicEase(); } else throw e; } Prevention
- Only use easing types listed in the CreateEasingFunction switch for your core version
- Version-check serialized graph configs against the installed Babylon version
- Fall back to a supported easing type with a warning when loading foreign graphs
When it happens
Trigger: Configuring a FlowGraphEasingBlock with an easingFunction type value that the factory has no case for — e.g. BezierEase, BackEase, or an out-of-range/typo'd numeric enum value.
Common situations: Serialized graph configs produced by a newer editor version using easing types this core version doesn't support; typos or numeric literals in hand-written configs; confusion between easing-mode and easing-type values.
Related errors
- You must implement this method
- step size should be less than 1.
- Invalid property (${name}) in property path (${targetPropert
- Invalid property (${this._targetPath}) in property path (${t
- Loading textures from IInternalTextureLoader not yet impleme
AI-assisted analysis of BabylonJS/Babylon.js@0592b347b8 (2026-08-30).
Data as JSON: /api/errors/11fe70f9eebfc16d.
Report an issue: GitHub.