
EXR-IO e Cryptomatte: guia de composição
Introdução
Quando renderizamos cenas 3D complexas—sejam visualizações arquitectónicas, trabalho de personagens, ou fotografias de produtos—raramente nos contentamos com uma única saída plana. Precisamos de separação. Precisamos de controlo. Precisamos da capacidade de ajustar materiais, isolar objetos, e refinar correcção de cores após o tempo de renderização sem tocar na cena 3D em si. É aqui que os ficheiros OpenEXR multi-camada se tornam essenciais, e onde EXR-IO e Cryptomatte transformam o nosso fluxo de trabalho de composição.
Na Super Renders Farm, trabalhamos com pipelines de renderização distribuída que geram conjuntos de dados enormes de sequências EXR multi-camada. Estes ficheiros contêm dezenas de passes—beleza, difusa, especular, mapas normais, IDs de objectos, IDs de materiais—tudo empilhado num único formato. Aceder e manipular estas camadas eficientemente não é opcional; é fundamental para o trabalho em produção. O plugin Photoshop EXR-IO 2.0, combinado com suporte Cryptomatte, oferece-nos as ferramentas para fazer exactamente isto.
Este guia percorre o fluxo de trabalho completo: desde a compreensão do que são EXR-IO e Cryptomatte, até à sua configuração no Photoshop, até à implementação de estratégias de composição do mundo real que utilizamos na nossa farm.
O que é EXR-IO?
EXR-IO é um plugin Photoshop que lê e escreve ficheiros OpenEXR—o padrão da indústria para efeitos visuais e renderização profissional. Ao contrário dos formatos de ficheiro Photoshop standard, OpenEXR (.exr) pode armazenar múltiplas camadas, canais, e metadados, tudo com profundidade de cor de 32-bit ponto flutuante. Isto significa que retemos precisão de cor total e gama dinâmica do motor de renderização.
EXR-IO permite ao Photoshop:
- Importar ficheiros EXR multi-camada directamente como camadas Photoshop
- Ler dados de canais arbitrários a partir de motores de renderização (V-Ray, Arnold, Corona, RenderMan)
- Aceder a metadados embutidos no ficheiro EXR (tempo de renderização, versão do motor, número do frame)
- Exportar comps Photoshop de volta para EXR, preservando estrutura de camadas e espaço de cores
Para nós, isto significa que podemos obter um ficheiro EXR com 50 camadas da nossa render farm, abri-lo no Photoshop, e imediatamente ver cada pass separado na sua própria camada. Sem conversão. Sem perda. Sem adivinhar qual pass corresponde a qual canal.
O que é Cryptomatte?
Cryptomatte é um sistema de codificação de camada standard desenvolvido para efeitos visuais. Em vez de canais matte tradicionais (que armazenam máscaras em escala de cinzentos), Cryptomatte codifica IDs de objectos e materiais em camadas utilizando um hash encriptado. Isto significa:
- Podemos clicar em qualquer objecto na imagem renderizada
- Cryptomatte gera uma máscara matte perfeita para esse objecto automaticamente
- A máscara captura desfoque de movimento, reflexões, e transparência correctamente
- Podemos seleccionar múltiplos objectos e combinar mattes
- Cryptomatte funciona em motores de renderização (V-Ray, Arnold, Corona, RenderMan, todos suportam)
Quando activamos saída Cryptomatte no nosso motor de renderização, o renderizador cria duas camadas por tipo de matte: Object e Object00 (a camada de dados e a camada matte). EXR-IO pode ler estas camadas directamente no Photoshop, e plugins Photoshop (ou fluxos de trabalho de selecção manual) podem extrair as mattes que precisamos.
O valor aqui é velocidade. Em vez de pintar máscaras manualmente ou executar ferramentas externas caras, clicamos num objecto, e obtemos uma máscara pixel-perfect. Para trabalho de personagens com cabelo, reflexões suavizadas, ou transparência complexa, isto é transformador.
Configuração de EXR-IO no Photoshop
Antes de mergulhar em fluxos de trabalho Cryptomatte, precisamos de EXR-IO instalado e configurado.
Instalação:
- Descarregue EXR-IO 2.0 do site oficial EXR-IO
- Extraia o plugin para a pasta Plugins do Photoshop (tipicamente
Applications/Adobe Photoshop/Plugins/no Mac ouProgram Files/Adobe/Adobe Photoshop/Plugins/no Windows) - Reinicie o Photoshop
- Verifique a instalação: vá a File > Open e deverá agora ver ficheiros
.exrno navegador de ficheiros
Definições de Preferências:
Uma vez instalado, abra as preferências Photoshop para EXR-IO:
- Color Space: Defina para «Linear» se a saída de renderização for linear (standard para CG). Defina para «sRGB» apenas se explicitamente necessário pelo seu motor de renderização
- Alpha Premultiplication: Corresponda à saída do seu motor de renderização (a maioria dos motores utiliza alpha «Straight»)
- Layer Organization: Active «Auto-Flatten» apenas se pretender fundir todas as camadas na importação—não recomendamos isto, pois precisamos de separação
- Memory Management: Se trabalhar com sequências 8K, active «Lazy Load» para evitar que o Photoshop carregue todas as camadas em RAM de uma vez
EXR-IO: Fluxo de Trabalho Básico Multi-Camada
Abrir um EXR multi-camada no Photoshop com EXR-IO é directo:
- File > Open, seleccione o seu ficheiro
.exr - EXR-IO apresenta uma caixa de diálogo mostrando todas as camadas disponíveis
- Seleccione quais camadas importar (ou importe todas)
- Clique Open
- Photoshop cria um novo documento com cada camada EXR como uma camada Photoshop
É aqui que a precisão importa. Uma renderização típica da nossa farm poderia exportar:
- Beauty (composição final do motor de renderização)
- Diffuse Direct / Diffuse Indirect
- Reflection / Refraction
- Specular
- Shadow
- Ambient Occlusion
- Z-Depth (para efeitos de nevoeiro e profundidade)
- Normal Map
- Object IDs
- Material IDs (onde Cryptomatte se aplica)
Cada uma torna-se a sua própria camada Photoshop. A partir daí:
- Ajustamos modos de mistura de camadas (Multiply para sombras, Screen para reflexões)
- Aplicamos camadas de ajuste (Curves, Levels, Hue/Saturation)
- Utilizamos máscaras para limitar efeitos a regiões específicas
- Exportamos a composição final de volta para EXR para ficheiro ou trabalho subsequente
O ponto crítico: trabalhamos não-destrutivamente. O EXR original e todos os seus dados permanecem intactos.
Compreensão das Camadas Cryptomatte em EXR-IO
Quando um motor de renderização emite dados Cryptomatte, o ficheiro EXR contém múltiplos pares de camadas. Por exemplo, um único pass matte Cryptomatte de objecto gera:
Object(a camada matte—a máscara actual)Object00(a camada de dados—o hash encriptado)
Se o motor de renderização também emite Material Cryptomatte:
MaterialMaterial00
Quando importamos o EXR com EXR-IO, ambas as camadas aparecem no Photoshop. As camadas matte (Object, Material) são imagens em escala de cinzentos onde branco = seleccionado, preto = não seleccionado. As camadas de dados (Object00, Material00) contêm os hashes que precisamos se estivermos a utilizar plugins ou ferramentas externas para descodificar as mattes.
Num fluxo de trabalho típico, focamo-nos nas próprias camadas matte. Uma máscara matte Cryptomatte de objecto pode ser utilizada directamente como máscara de camada, ou duplicada numa máscara de camada de ajuste para controlar correcções de cores por objecto.
Fluxo de Trabalho Cryptomatte: Configuração do Motor de Renderização
Para emitir dados Cryptomatte, configuramos os nossos motores de renderização. Eis como fazemos isto em diferentes motores utilizados na Super Renders Farm.
V-Ray (3ds Max, Maya, Cinema 4D):
- Abra as Definições de Renderização V-Ray
- Navegue para Render Elements
- Adicione um novo elemento: «Cryptomatte (Object)»
- Active «Multi-Matte Mode» se pretender dados Object e Material
- Defina o caminho de saída (formato EXR)
- Configure nomeação de ficheiros:
[Scene]_[Layer]_[Pass].exr
Arnold (Maya, Houdini):
- No AOV Manager, crie novos AOVs
- Seleccione «Cryptomatte» como o tipo de AOV
- Escolha «Object» ou «Material» ou ambos
- Renderize e Arnold escreve dados Cryptomatte directamente para o EXR
Corona Renderer (3ds Max, Cinema 4D):
- Em Render Setup, vá para Corona Map Packs
- Active o pack «Cryptomatte»
- Verifique «Object» e «Material» conforme necessário
- Renderize para EXR
Todos os três motores emitem dados Cryptomatte standard. A diferença é na interface. O formato de saída é idêntico.
Exportação de EXR Multi-Camada com Cryptomatte
Assim que a renderização está completa e inclui passes Cryptomatte, o motor escreve um ficheiro EXR contendo:
- Todos os passes standard de beleza e técnicos (difusa, especular, etc.)
- Camadas e dados Cryptomatte Object
- Camadas e dados Cryptomatte Material (opcional)
- Todos os metadados (tempo de renderização, número do frame, versão do motor)
Guardamos estes com as definições de qualidade mais elevadas: 16-bit ou 32-bit float, sem compressão (ou compressão ZIP sem perda para economizar espaço em disco). Um único frame de uma cena complexa pode ser 500 MB a 2 GB. Para sequências, optimizamos armazenamento utilizando compressão sem perda e armazenamos em arrays SSD rápidas.
Máscaras Photoshop com Camadas Cryptomatte
Uma vez que o EXR está aberto no Photoshop via EXR-IO, temos as camadas matte Cryptomatte disponíveis. Eis o nosso fluxo de trabalho para extrair e utilizar máscaras de objectos.
Passo 1: Localize a Camada Matte Cryptomatte
No painel Layers, encontre a camada denominada Object (ou Material para mattes baseadas em material). Esta é uma imagem em escala de cinzentos onde cada objecto/material tem uma sombra diferente.
Passo 2: Crie uma Máscara de Camada
Seleccione a camada que pretende mascarar (ex: uma camada de ajuste de cor). Clique direito > Add Layer Mask. Certifique-se de que «Layer Mask» está seleccionado (não «Vector Mask»).
Passo 3: Atribua a Matte Cryptomatte à Máscara
Seleccione a máscara de camada (não a camada em si—o rectângulo branco no painel Layers). Copie a camada Cryptomatte Object. Com a máscara seleccionada, Paste. Os dados Cryptomatte estão agora a controlar o que a camada de ajuste afecta.
Passo 4: Refine a Máscara
Se a máscara for demasiado suave ou incluir áreas indesejadas, ajuste-a:
- Utilize Levels ou Curves na máscara (seleccione a máscara, não a camada)
- Aplique um ajuste Threshold para criar selecções de arestas rígidas
- Utilize um pincel para pintar dentro ou fora da máscara para refinamento manual
Esta abordagem é rápida. Em vez de seleccionar manualmente objectos ou utilizar ferramentas de selecção IA, Cryptomatte oferece-nos precisão com base nos próprios IDs de objectos do motor de renderização.
Exemplo Prático de Composição: Personagem com Cabelo
Vamos percorrer um exemplo específico: composição de um personagem com cabelo complexo. O desafio é que o cabelo intersecta com o rosto, ombros e fundo do personagem. Uma máscara tradicional necessitaria de trabalho de arestas cuidado. Cryptomatte trata isto perfeitamente.
Configuração de Renderização:
- Renderize o personagem e fundo com V-Ray ou Arnold
- Emita passes standard: Beauty, Diffuse, Specular, Shadow, AO
- Emita Cryptomatte Object com IDs para:
Character_Body,Character_Hair,Environment
No Photoshop:
- Abra o EXR com EXR-IO
- Importe todas as camadas
- Crie uma camada de ajuste Hue/Saturation acima da camada Beauty
- Adicione uma máscara de camada à camada de ajuste
- Alt+clique a máscara de camada, cole a camada Cryptomatte Object
- Utilize Curves ou Levels na máscara para isolar o cabelo (a sombra específica correspondente ao ID
Character_Hair) - Na própria camada de ajuste, reduza saturação e aumente calor apenas para o cabelo
- Adicione outra camada de ajuste para escurecimento de sombra, mascarada no cabelo novamente
Resultado: Separámos ajustes de cabelo de ajustes de corpo sem mascaração manual. A qualidade de arestas é determinada pelo motor de renderização, não pelo nosso trabalho manual.
Gestão de Saída de Render Farm: Sequências Multi-Frame
Na Super Renders Farm, não renderizamos tipicamente frames únicos. Renderizamos sequências. Uma animação pode ser 240 frames, e cada frame produz um ficheiro EXR de 1 GB com dados Cryptomatte. Automatizar a importação e organização é essencial.
Fluxo de Trabalho:
- Consolidação em Lote: Após a conclusão da renderização, copiamos todos os EXRs da render farm para um array SSD local
- Revisão de Metadados: Verificamos um ou dois frames no Photoshop (via EXR-IO) para verificar que todas as camadas esperadas estão presentes
- Confirmação de Espaço de Cores: Verificamos que o espaço de cores corresponde à nossa especificação de saída (Linear, sRGB, ACEScg, etc.)
- Script Python (Opcional): Para sequências complexas, escrevemos scripts Python (Photoshop tem uma API Python) para importação em lote de EXRs, aplicação de máscaras consistentes, e exportação de sequências ajustadas
Para sequências, tipicamente não abrimos todos os 240 frames no Photoshop de uma vez. Em vez disso:
- Desenvolvemos o look no frame 1 (com máscaras Cryptomatte no lugar)
- Aplicamos as mesmas camadas de ajuste Photoshop a toda a sequência utilizando «Edit > Fill Layers» ou processamento em lote baseado em Action
- Exportamos cada frame de volta para EXR
- O resultado é uma nova sequência EXR com a mesma composição aplicada a todos os frames
É aqui que o poder de EXR-IO se torna tangível. Preservamos todas as camadas e dados através do ciclo de edição.
FAQ
O EXR-IO pode ler EXRs de 8-bit ou 16-bit, ou apenas 32-bit?
EXR-IO lê todas as profundidades de bit—8-bit, 16-bit, e 32-bit float. Photoshop converte internamente para 32-bit ao trabalhar com EXRs ponto flutuante. Para ficheiro e entrega, tipicamente exportamos EXR 16-bit, que equilibra tamanho de ficheiro e precisão.
Preciso de comprar um plugin Cryptomatte separado para o Photoshop?
Não. EXR-IO lê camadas Cryptomatte como dados standard em escala de cinzentos. Pode utilizar as camadas matte directamente como máscaras sem software adicional. Plugins Cryptomatte de terceiros (como Cryptomatte para After Effects) oferecem ferramentas de picking automatizadas, mas para trabalho em Photoshop, as próprias camadas matte são suficientes.
E se o meu motor de renderização não suportar Cryptomatte?
Motores mais antigos (V-Ray 3.x, versões Arnold mais antigas, algumas construções Corona) podem não ter Cryptomatte incorporado. Verifique a documentação do seu motor ou actualice para a versão mais recente. Cryptomatte tornou-se standard nos motores de renderização modernos desde 2019.
Posso exportar um documento Photoshop de volta para EXR com EXR-IO?
Sim. File > Export As, seleccione formato EXR, e EXR-IO escreve todas as camadas Photoshop visíveis para o ficheiro EXR. Escolha 16-bit ou 32-bit, defina compressão, e guarde. O EXR exportado retém estrutura de camadas e metadados.
Como faço para lidar com desfasamentos de espaço de cores entre a renderização e o Photoshop?
Sempre verifique que o seu motor de renderização emite o mesmo espaço de cores que o seu espaço de trabalho Photoshop. Utilizamos espaço de cores Linear universalmente no nosso pipeline. Nas preferências EXR-IO, defina Color Space para «Linear.» Se a sua imagem parecer demasiado brilhante ou escura após importação, verifique o espaço de cores de saída do motor de renderização e ajuste a preferência EXR-IO em conformidade.
Saiba Mais
Para técnicas de composição fundamentais, consulte o nosso guia para melhor software de renderização 3D. Para fluxos de trabalho técnicos mais profundos, explore fluxos de trabalho de renderização profissional para equipas VFX.
Recursos adicionais: Documentação Oficial EXR-IO

