diff --git a/src/core/Expressions/expressionpresets.cpp b/src/core/Expressions/expressionpresets.cpp index dcf8c9059..de61d91be 100644 --- a/src/core/Expressions/expressionpresets.cpp +++ b/src/core/Expressions/expressionpresets.cpp @@ -372,6 +372,8 @@ void ExpressionPresets::firstRun() QStringList presets; presets << "copyX.fexpr"; presets << "copyY.fexpr"; + presets << "frameRemapLoop.fexpr"; + presets << "frameRemapLoopBounce.fexpr"; presets << "noise.fexpr"; presets << "orbitX.fexpr"; presets << "orbitY.fexpr"; diff --git a/src/core/Expressions/presets/frameRemapLoop.fexpr b/src/core/Expressions/presets/frameRemapLoop.fexpr new file mode 100644 index 000000000..3a885a2c8 --- /dev/null +++ b/src/core/Expressions/presets/frameRemapLoop.fexpr @@ -0,0 +1,13 @@ +[General] +author=pgilfernandez +bindings="frame = $frame;\n" +categories= +definitions= +description="Loop a linked scene with FRAME REMAPPING activated:\n1) create a scene you want to loop\n2) link that scene into another one\n3) select the linked scene object and choose FRAME REMAPPING\n4) select FRAME parameter and apply this preset to it\n5) change the LOOP_FPS value to your original loop scene size" +highlighters= +id=graphics.friction.frameRemapLoop +license= +script="loop_fps = 120; // change with your loop frame count\ntime = frame % loop_fps;\nreturn time" +title=Frame Remap Loop +url= +version=1 diff --git a/src/core/Expressions/presets/frameRemapLoopBounce.fexpr b/src/core/Expressions/presets/frameRemapLoopBounce.fexpr new file mode 100644 index 000000000..da26073b3 --- /dev/null +++ b/src/core/Expressions/presets/frameRemapLoopBounce.fexpr @@ -0,0 +1,13 @@ +[General] +author=pgilfernandez +bindings="frame = $frame;\n" +categories= +definitions= +description="Bounce loop a linked scene with FRAME REMAPPING activated:\n1) create a scene you want to loop\n2) link that scene into another one\n3) select the linked scene object and choose FRAME REMAPPING\n4) select FRAME parameter and apply this preset to it\n5) change the LOOP_FPS value to your original loop scene size" +highlighters= +id=graphics.friction.frameRemapLoopBounce +license= +script="loop_fps = 120; // change with your loop frame count\nperiod = loop_fps * 2;\nt = frame % period;\nreturn t < loop_fps ? t : (period - t);" +title=Frame Remap Loop (bounce) +url= +version=1 diff --git a/src/core/coreresources.qrc b/src/core/coreresources.qrc index fd0764dd2..86053b83a 100755 --- a/src/core/coreresources.qrc +++ b/src/core/coreresources.qrc @@ -26,6 +26,8 @@ Expressions/presets/lerp.fexpr Expressions/presets/copyX.fexpr Expressions/presets/copyY.fexpr + Expressions/presets/frameRemapLoop.fexpr + Expressions/presets/frameRemapLoopBounce.fexpr Expressions/presets/noise.fexpr Expressions/presets/orbitX.fexpr Expressions/presets/orbitY.fexpr