Latest post Thu, Sep 5 2019 9:04 PM by bwilhelm. 1 replies.
Page 1 of 1 (2 items)
Sort Posts: Previous Next
  • Thu, Sep 5 2019 7:31 PM

    AVX2 Partial Render Support

     

    A bit confused about what this means pasted below:

    1) Do we need to flag this if we are doing temporal processing (e.g. request more than a frame at current time)?

    2) Do we need to flag this if we are reading parameter values at other time?

    i.e. what is considered sharing?

    /// pasted from email alert

    AVX2 Partial Render Support:

    For distributed processing plug-ins that share render information between frames need to flag this requirement.  Plug-ins need to register a silent, static, Boolean parameter, and the parameter value should be True to flag the requirement.  The ID of the parameter is:

     

     

    DEFINE_ACFUID(acfUID, ACFATTR_ParamDefinition_NeedAccumulationBuffer, 0xb5d3b187, 0x84a9, 0x46ec, 0xb5, 0xd3, 0xd7, 0x7c, 0xe2, 0x63, 0x28, 0x73 );

  • Thu, Sep 5 2019 9:04 PM In reply to

    • bwilhelm
    • Not Ranked
    • Joined on Thu, Mar 19 2009
    • Avid (Burlington, MA)
    • Posts 159
    • Points 2,060
    • Avid Employee

    Re: AVX2 Partial Render Support

    Here is a little more info from the header file in the ACF SDK...

    /*!
     \remarks A hidden parameter that indicates whether or not an effect internally uses an accumulation buffer so that the results of one frame depend on the results of previous frames.
     A True value signifies that the effect must always be fully rendered in one atomic operation, while a False value (the default) means the effect is allowed to be partially rendered.
     \note FX should not create this parameter themselves, but only get access to it via a "find" or "get" mechanism instead.
     \n <b> type: </b> Boolean  \n <b> method:  </b>IAVXParameterDefinition; \n <b> context: </b> parameter definition \n
     \n <b> AVX Namespace name: </b>
     \n <b> UID String: </b> B5D3B187-84A9-46EC-B5D3-D77CE2632873
    */
    DEFINE_ACFUID(acfUID, ACFATTR_ParamDefinition_NeedAccumulationBuffer, 0xb5d3b187, 0x84a9, 0x46ec, 0xb5, 0xd3, 0xd7, 0x7c, 0xe2, 0x63, 0x28, 0x73 };

    I don't believe that temporal-based FX will automatically need to set this.
    It really depends more on the internal implementation of the effect.

    Some examples of MC FX that set this are Illusion/FluidBlur and 3D Warp when Stamps or Trails are enabled.
    In these cases, the results of rendered frames can contribute to the output for successive frames.
    That's why Partial Render must be disallowed for these FX - they must be fully rendered in one continuous operation.

    Bruce

Page 1 of 1 (2 items)

© Copyright 2011 Avid Technology, Inc.  Terms of Use |  Privacy Policy |  Site Map |  Find a Reseller