The Luma Concepts node allows you to apply predefined camera concepts to the Luma generation process, providing precise control over camera angles and perspectives without complex prompt descriptions.

Node Function

This node serves as a helper tool for Luma generation nodes, enabling users to select and apply predefined camera concepts. These concepts include different shooting angles (like overhead or low angle), camera distances (like close-up or long shot), and movement styles (like push-in or follow). It simplifies the creative workflow by providing an intuitive way to control camera effects in the generated output.

Parameters

Basic Parameters

ParameterTypeDescription
concept1selectFirst camera concept choice, includes various presets and “none”
concept2selectSecond camera concept choice, includes various presets and “none”
concept3selectThird camera concept choice, includes various presets and “none”
concept4selectFourth camera concept choice, includes various presets and “none”

Optional Parameters

ParameterTypeDescription
luma_conceptsLUMA_CONCEPTSOptional Camera Concepts to merge with selected concepts

Output

OutputTypeDescription
luma_conceptsLUMA_CONCEPTCombined object containing all selected concepts

Usage Examples

Luma Text to Video Workflow Example

Luma Text to Video Workflow Example

Luma Image to Video Workflow Example

Luma Image to Video Workflow Example

How It Works

The Luma Concepts node offers a variety of predefined camera concepts including:

  • Camera distances (close-up, medium shot, long shot)
  • View angles (eye level, overhead, low angle)
  • Movement types (push-in, follow, orbit)
  • Special effects (handheld, stabilized, floating)

Users can select up to 4 concepts to use together. The node creates an object containing the selected camera concepts, which is then passed to Luma generation nodes. During generation, Luma AI uses these camera concepts to influence the viewpoint and composition of the output, ensuring the results reflect the chosen photographic effects.

By combining multiple camera concepts, users can create complex camera guidance without writing detailed prompt descriptions. This is particularly useful when specific camera angles or compositions are needed.

Source Code

[Node source code (Updated on 2025-05-03)]


class LumaConceptsNode(ComfyNodeABC):
    """
    Holds one or more Camera Concepts for use with Luma Text to Video and Luma Image to Video nodes.
    """

    RETURN_TYPES = (LumaIO.LUMA_CONCEPTS,)
    RETURN_NAMES = ("luma_concepts",)
    DESCRIPTION = cleandoc(__doc__ or "")  # Handle potential None value
    FUNCTION = "create_concepts"
    CATEGORY = "api node/image/Luma"

    @classmethod
    def INPUT_TYPES(s):
        return {
            "required": {
                "concept1": (get_luma_concepts(include_none=True),),
                "concept2": (get_luma_concepts(include_none=True),),
                "concept3": (get_luma_concepts(include_none=True),),
                "concept4": (get_luma_concepts(include_none=True),),
            },
            "optional": {
                "luma_concepts": (
                    LumaIO.LUMA_CONCEPTS,
                    {
                        "tooltip": "Optional Camera Concepts to add to the ones chosen here."
                    },
                ),
            },
        }

    def create_concepts(
        self,
        concept1: str,
        concept2: str,
        concept3: str,
        concept4: str,
        luma_concepts: LumaConceptChain = None,
    ):
        chain = LumaConceptChain(str_list=[concept1, concept2, concept3, concept4])
        if luma_concepts is not None:
            chain = luma_concepts.clone_and_merge(chain)
        return (chain,)