Skip to main content
Participant
June 12, 2025
Question

Applying 3D LUT (.cube) file to Color Lookup adjustment layer via batchPlay — is there any working m

  • June 12, 2025
  • 1 reply
  • 274 views

Hi everyone,

I'm trying to automate applying a 3D LUT (.cube file) to a Color Lookup adjustment layer in my UXP plugin.

I am able to create the Color Lookup layer itself via batchPlay without any issue:

 

await action.batchPlay([{
  _obj: "make",
  _target:[{ _ref: "adjustmentLayer" }],
  using: {
    _obj: "adjustmentLayer",
    name: layerName,
    type: { _class: "colorLookup" }
  }
}], { synchronousExecution: true });

However, applying an external 3D LUT file after that has not been successful.
I tried using batchPlay to set lookupFile, lookupType, and related properties — the batchPlay call completes without errors, but the LUT is not applied. The UI still shows "None", and the image appearance does not change.

Here is one of the batchPlay patterns I tried (called after creating the Color Lookup layer):

await action.batchPlay([{
  _obj: "set",
  _target: [{ _ref: "adjustmentLayer", _enum: "ordinal", _value: "targetEnum" }],
  to: {
    _obj: "adjustmentLayer",
    type: {
      _obj: "colorLookup",
      lookupType: { _enum: "lookupType", _value: "3DLUT" },
      lookupFile: lutFilePath, // full path to .cube file
      lookupTable: "",
      dither: true
    }
  }
}], { synchronousExecution: true });

Result: no error, but LUT is not applied (UI shows "None").

From what I’ve researched so far, it seems this may not be fully supported in the current UXP APIs.
I do understand this limitation — but if anyone knows of any practical workaround (for example: using built-in presets, preset copying, alternative API usage, or other approaches), I would very much appreciate your advice!

Environment:

  • Photoshop 26.1.1 and 25.9.x tested

  • Windows 11 Pro 23H2

  • UXP Plugin (JavaScript)

Thank you in advance!

1 reply

creative explorer
Community Expert
Community Expert
July 9, 2025

@novy_jp by this point, if nobody hasn't helped you, have you tried using ChatGPT? CoPilot? DeepSeek? etc. I could do  that and copy and paste... but.... 

m