0

Assento na primeira fila: software de código aberto e a indústria

Márcio Silva
Márcio Silva

Link: Como o software de código aberto alimenta o cinema moderno (github.com)


DA EDIÇÃO À ANIMAÇÃO, O CÓDIGO ABERTO FAZ PARTE DE COMO OS FILMES SÃO FEITOS.

KLINT FINLEY // 13 DE SETEMBRO DE 2021


O Projeto ReadME amplifica as vozes da comunidade de código aberto: os mantenedores, desenvolvedores e equipes cujas contribuições movem o mundo para a frente todos os dias.


O Projeto ReadME


Dezenas de super-heróis se reuniram em um campo de batalha para enfrentar o arquivillain Thanos e seu exército de monstros cibernéticos no final de Vingadores: Fim do Jogo. A essa altura do filme, o culminar do enredo de uma década tecida através de 21 filmes, você está tão acostumado a ver esses personagens que é tão fácil esquecer o quanto do que você vê na tela é gerado digitalmente. Portais se abrem no céu e personagens derramam no corpo a corpo. Um raio gira em torno de Thor. A energia irradia do Capitão Marvel. Valquíria monta um cavalo voador. O Homem Gigante está acima de toda a multidão.

Nos bastidores, equipes de artistas que superavam todo o elenco reunidos para dar vida a esses personagens. E por trás de todo o trabalho que eles fizeram foi software, grande parte dele de código aberto.

O software é o núcleo do cinema moderno, desde animação e efeitos visuais até edição e pós-produção. Parte disso é tratada com software comercial bem conhecido, como o Adobe After Effects ou o Autodesk Maya. Mas o software de código aberto desempenha um papel cada vez mais importante nos bastidores em filmes, animação e efeitos digitais.

O exemplo mais visível é provavelmente o venerável blenderde aplicativos de estúdio 3D de código aberto . Mas há muita tecnologia de código aberto sob o capô de aplicações proprietárias também. A Linguagem de Sombreamento Aberto permite que os artistas definam programáticamente certos elementos de uma imagem, especialmente o comportamento da luz. Por exemplo, um artista poderia usá-lo para estabelecer como a armadura beskar do Mandaloriano reflete o sol do deserto de Arvala-7.

O idioma, originalmente criado pela Sony Pictures Imageworks, tem sido usado em filmes e programas de TV como Vingadores: EndgameThe MandalorianSoul e agora uma grande variedade de aplicativos, incluindo Blender e produtos de fornecedores como Autodesk e Illumination Research, permitem que os artistas usem o idioma dentro de seu software sem precisar instalar plugins.

Renderização digital de 3 navios de guerra em mar aberto.O software usado no cinema é altamente especializado: editores, modeladores e artistas roto usam diferentes ferramentas específicas de seus artesanatos. O código aberto é frequentemente usado para garantir a compatibilidade entre essas aplicações à medida que um filme se move através da produção. "O código aberto tornou-se uma parte importante de como mudamos o trabalho de um software para outro durante todo o processo", diz DJ Rahming, Chefe de Tecnologia do estúdio RodeoFX. "Padrões abertos e bibliotecas nos dão uma maneira de definir coisas, como texturas, por exemplo, e têm uma maneira comum de trabalhar com elas em toda a indústria." Sem esses padrões, a obra de um artista pode parecer totalmente diferente quando aberta por um artista usando outro aplicativo.

Uma das tecnologias de código aberto mais utilizadas na indústria cinematográfica moderna é o OpenColorIO, um sistema de gerenciamento de cores que torna possível definir consistentemente a cor em diferentes aplicativos e projetos. Pode parecer simples, mas é um fator importante para garantir a consistência. É parte do que garante que o traje de Mile Morales seja sempre da mesma cor, cena após cena, e dá aos mundos alienígenas dos filmes de Star Wars e mostra suas cores vivas.

"Definir o que diferentes componentes de cores realmente significam é um problema que todos na indústria precisam resolver", diz Rahming. "OpenColorIO finalmente torna isso possível."

Esses padrões podem salvar os estúdios de trabalhos tediosos e propensos a erros. Por exemplo, o OpenTimelineIO, de código aberto da Pixar em 2016, ajuda a garantir que uma coleção de edições de vídeo criadas em um aplicativo funcione em outros aplicativos que suportam o padrão. "Antes do OpenTimelineIO, tínhamos que acompanhar as edições, tendo um assistente de produção digitando manualmente códigos de tempo para diferentes fotos em um banco de dados", diz Rahming.

Navio de guerra totalmente renderizado em alto mar.Por que os estúdios estão se abrindo

Só o software comercial não pode atender às necessidades de estúdios de animação e efeitos visuais como Industrial Light e Magic, Rodeo FX e Weta. "Quando começamos a fazer efeitos visuais digitais, não havia nenhum software, comercial ou não, que fizesse o que queríamos", diz o veterano da indústria Larry Gritz, arquiteto de engenharia de software da Sony Pictures Imageworks, e o maior colaborador do Open Shading Language. "A maior parte do que usamos foi construída internamente."

Mesmo com a entrada de mais soluções comerciais no mercado, os estúdios continuaram construindo seu próprio software. "Fazer coisas que você nunca viu antes é uma das marcas da indústria", diz Kimball Thurston, chefe de engenharia da empresa de efeitos visuais Weta Digital e presidente do conselho de assessoria técnica da Academy Software Foundation (ASWF), um grupo de guarda-chuvas para software de código aberto usado pela indústria cinematográfica. "Estamos constantemente ultrapassando os limites do que é possível. Para fazer isso, não podemos recorrer ao software off-the-shelf. Temos que escrever o nosso próprio.

"Estamos constantemente ultrapassando os limites do que é possível. Para fazer isso, não podemos recorrer ao software off-the-shelf. Temos que escrever o nosso próprio.

Por exemplo, a DreamWorks Animation criou o OpenVDB, uma biblioteca e formato de dados para descrever informações "volumosas" — uma tarefa essencial para representar coisas como fumaça, água e névoa. Pense na fumaça e fogo saindo de uma explosão, ou imagine o respingo de água quando uma nave alienígena cai em um grande corpo de água. O OpenVDB torna possível animar essas coisas com o realismo que o público moderno espera. "A Dreamworks estava realmente ultrapassando os limites do que era possível na época", diz Thurston.

Embora os estúdios estejam em constante concorrência, tentando se enfrentar na busca de criar as experiências mais de tirar o fôlego possíveis para o público, eles também cooperam entre as linhas da empresa. Um único filme pode ter mais de uma dúzia de estúdios de efeitos diferentes trabalhando nele. "As empresas de produção trabalham para muitas empresas diferentes", diz cary Phillips, supervisor do ILM P&D e membro do Conselho Consultivo Técnico da ASWF. "Então, mesmo que concorramos por contratos, também estamos colaborando com outros estúdios em projetos."

É também por isso que a compatibilidade é fundamental no setor. As equipes precisam entregar arquivos maciços não apenas para outros aplicativos e departamentos, mas também para diferentes estúdios e cidades. Os estúdios ainda mantêm muitas de suas inovações proprietárias, mas eles acham que padrões abertos, juntamente com implementações abertas, ajudam a tornar toda a produção mais eficiente. O compartilhamento de software também pode garantir que a indústria cinematográfica se beneficie de seu talento técnico. "Às vezes, temos problemas para atrair pessoas de ciência da computação de alto nível para a indústria", diz Thurston. "Nem todos reconhecem que há desafios interessantes a serem resolvidos neste campo, por isso ajuda a difundir a carga de trabalho."

Padrões abertos também podem ajudar os estúdios a evitar serem bloqueados em produtos ou fornecedores específicos, diz Peter Hillman, engenheiro sênior de software da Weta Digital. Mas, mais importante, ajuda os estúdios a criar seu próprio software. "Temos muitas ferramentas internas, incluindo nossa própria renderização, e usamos bibliotecas de código aberto para apoiar padrões comuns", diz ele. "Isso nos poupa muito trabalho."

As Fundações de uma Indústria cinematográfica mais aberta

O ILM ajudou a iniciar a revolução de código aberto do setor quando lançou sua implementação do formato de imagem OpenEXR em 2004. "A OpenEXR realmente abriu caminho para essa ideia de código aberto na indústria cinematográfica", diz Gritz. "Agora todos os estúdios estão trabalhando com tecnologias desenvolvidas por equipes inter-industriais. É difícil imaginar trabalhar de outra maneira."

"A OpenEXR realmente abriu caminho para essa ideia de código aberto na indústria cinematográfica. Agora todos os estúdios estão trabalhando com tecnologias desenvolvidas por equipes inter-industriais. É difícil imaginar trabalhar de outra maneira."

As origens do formato OpenEXR datam de 1999. Os estúdios armazenam cada quadro de um vídeo como um arquivo discreto, o que lhes permite processar muitos quadros em paralelo, ao contrário de um de cada vez, permitindo que eles tornem o trabalho mais rapidamente, explica Hillman. Eventualmente, esses quadros são exportados para formatos de vídeo, mas a grande maioria dos trabalhos de pós-produção em um filme é feito com uma série de imagens estádas.

Quando o ILM desenvolveu o que eventualmente se tornou o formato OpenEXR, formatos de imagem sem perdas como o TIFF só suportavam um número fixo de canais de cores, o que limitava sua utilidade em um pipeline de produção. O OpenEXR suportava um número ilimitado de canais, permitindo que os estúdios capturassem imagens com muito mais detalhes do que nunca. "A grande inovação foi usar números de pontos flutuantes para representar intensidades de imagem, em vez de inteiros fixos", explica Phillips. "Isso tornou possível representar uma gama muito maior de cores, mantendo tamanhos de arquivo relativamente pequenos."

O formato também suporta tipos de metadados ilimitados, o que significa que os desenvolvedores podem criar um software que adicione qualquer tipo de informação que eles queiram a um arquivo, como informações para criar um desfoque de fotos, por exemplo, sem se preocupar em quebrar a compatibilidade com outros softwares.

O OpenEXR permaneceu como um formato proprietário no ILM por cinco anos antes da empresa decidir abri-lo de código aberto. Quando o fizeram, eles não só liberaram a especificação, mas uma implementação de referência — uma biblioteca que os desenvolvedores poderiam usar para integrar o OpenEXR em seu próprio software.

"No ILM, usamos dezenas de pacotes de software diferentes de todos os tipos de fornecedores, juntamente com ferramentas que criamos", diz Phillips. Eles eventualmente perceberam que fazia mais sentido compartilhar o formato com o resto da indústria, em vez de mantê-lo proprietário. Dessa forma, os fornecedores de terceiros poderiam facilmente adicionar suporte openexr a seus produtos e estúdios parceiros poderiam trabalhar no mesmo formato que o ILM usa.

"Se eles tivessem guardado para si mesmos, o OpenEXR teria sido menos útil ao ILM internamente do que agora que todos podem usá-lo", diz Hillman.

Abrir o formato funcionou bem. Hoje, praticamente todos os pacotes de software de vídeo suportam o formato OpenEXR nativamente — assim como os sistemas operacionais Microsoft Windows e MacOS. "Estou razoavelmente confiante de que todos os filmes feitos nos últimos anos usam o OpenEXR", diz Thurston.

"Estou razoavelmente confiante de que todos os filmes feitos nos últimos anos usam OpenEXR."

Em 2013, outros estúdios estavam colaborando para tornar o OpenEXR melhor. O Weta adicionou suporte para "dados profundos", permitindo que o formato armazene mais de uma informação de cor para cada pixel. Isso é útil para criar imagens como objetos camuflados em uma camada de neblina. A Dreamworks contribuiu com um novo algoritmo de compressão de imagem.

Gradualmente, outros estúdios seguiram o exemplo. Em 2010, a Sony Pictures Imageworks abriu o padrão OpenColorIO, seguido pela Linguagem de Sombreamento Aberto em 2012. No mesmo ano, a DreamWorks Animation lançou o OpenVDB.

A rápida adoção do código aberto, particularmente o OpenEXR e o OpenColorIO, criou pressão sobre os fornecedores para apoiar esses padrões emergentes. "Em um certo ponto, os fornecedores tiveram que apoiar tecnologias", explica Rahming. "Se você não apoiar o OpenColorIO, por exemplo, será um disjuntor para os estúdios."

Em 2017, ficou claro que o código aberto era vital para a saúde da indústria. Muitas partes interessadas, incluindo fornecedores e estúdios, começaram a falar sobre como sustentar o desenvolvimento contínuo dos principais ativos compartilhados. Os desenvolvedores originais da OpenEXR já tinham deixado o ILM naquele momento, então as empresas viram a necessidade de encontrar uma abordagem mais cooperativa para financiar seu desenvolvimento contínuo. Mesmo quando os estúdios colheram os benefícios da colaboração entre empresas, a ideia de pagar desenvolvedores para trabalhar em software tecnicamente de propriedade de outra empresa foi estranha, mesmo que esse software fosse de código aberto. "Sabíamos que, se quiséssemos continuar mantendo esses projetos, deveríamos colocá-los sob uma entidade neutra para garantir contribuições de longo prazo e colaboração de uma comunidade mais ampla", diz Thurston.

Após extensas discussões, a The Academy Software Foundation foi fundada em 2018 sob o guarda-chuva da Academia de Artes Cinematográficas — a mesma Academia por trás do Oscar — e da Linux Foundation. "A missão da Academy Software Foundation é garantir a saúde do software do qual nossa indústria depende", diz Phillips.

A ASWF ainda está adicionando novos projetos. Além do Blender, muito do que a indústria tem de código aberto até agora são blocos de construção para a criação de software. Thurston espera que os estúdios em breve liberem mais ferramentas para artistas, além daquelas que eles criam para desenvolvedores.

"Estamos nisso porque somos fãs de cinema", diz Phillips "Queremos ver coisas novas na tela. O código aberto nos ajuda a fazer isso."

0
1

Comentários (1)

1
Vagner Bellacosa

Vagner Bellacosa

16/09/2021 00:34

Marcio, muito bacana seu artigo... gostei

Em formação na área de Tecnologia em Análise e Desenvolvimento de Sistemas.....

Brasil