1 Reply Latest reply on Jul 24, 2009 12:01 PM by maltaannon

    After Effects UI in Graphs (aeUIControl)

    maltaannon Level 1

      Hi. I'm currently developing a UV Mapper in Pixel Bender. Actually - I already did.

      Here is the concept and a preview: http://maltaannon.com/blog/uv-mapping-with-pixel-bender/

       

      It works great, but I wanted to make some improvements before I publish it, and that requires me to convert the whole thing to a graph instead of a single kernel plugin.

       

      I can't find any docs on how to create aeUIControl in the graph language. For example, how to I create a point controller. In single kernel BPK file it would look like this:

       

      parameter float2 pCropTop

      <

           aeUIControl: "aePoint";        

           aePointRelativeDefaultValue: float2(0.0, 0.0);

           aeDisplayName: "Crop: Top Corner";    

      >;

       

      So the question is: How do to that in the graph language? There are the specs in the docs about adding metadata and such, but AE UI Controllers is a special case which is not covered in the docs.

       

      Please post examples for all aeUIControl types.

      Thank you.

        • 1. Re: After Effects UI in Graphs (aeUIControl)
          maltaannon Level 1

          Ok. I think I got it. Sorry for putting a junk post, but maybe this will become useful for someone else as well.

          If the point controller looks like this:

           

           

              parameter float2 pCropTop

              <

                  aeUIControl: "aePoint";

                  aePointRelativeDefaultValue: float2(0.0, 0.0);

                  aeDisplayName: "Crop: Top Corner";

              >;

           

           

          and the graph specs for parameters looks like this:

           

           

          <parameter type="float" name="scale" >

               <metadata name="minValue" type="float" value="0.0" />

               <metadata name="maxValue" type="float" value="100.0" />

               <metadata name="defaultValue" type="float" value="1.0" />

          </parameter>

           

           

          than the trick is to spimply take out the "type" attribute out of the metadata definition.

          then the final code of the point controller in graphs would look like this:

           

           

              <parameter type = "float2" name = "position" >

                   <metadata name = "aeUIControl" value="aePoint" />

                   <metadata name = "aePointRelativeDefaultValue" type = "float2" value = "0.0, 0.0" />

                   <metadata name = "aeDisplayName" value = "Crop: Top Corner" />

              </parameter>

           

           

          The only exception is the "aePointRelativeDefaultValue" which "type" had to be defined in order for it to work.

           

          Follow this rule for every other parameter types. If any other will require a special treatment I will post it in this thread as well.

          Happy AfterEffecting.