Tecnologia Áudio de Dreams
Motor do Áudio Dreams
Dreams contém algumas ferramentas poderosas que vos podem ajudar a compreender o desempenho áudio das vossas criações. A maioria dos criadores não precisa de se preocupar com isto, mas para aqueles que querem obter potência extra do motor, essas ferramentas podem ser úteis! Vocês podem usar as ferramentas para descobrirem porque é que alguns dos vossos sons estão a ser cortados, distorcidos, ou a serem reproduzidos com atraso.
Em primeiro lugar, vamos mergulhar na tecnologia do motor de áudio em Dreams. O som em Dreams normalmente vem de engenhocas de som na vossa cena. Quando uma engenhoca de som é ativada pela lógica, vai criar uma instância de si própria. É possível que uma engenhoca crie mais do que uma instância ao mesmo tempo se, por exemplo, for ativada outra vez antes da instância anterior acabar de ser reproduzida.
Cada instância de som pode então criar um número de vozes. Geralmente, um efeito sonoro vai ativar uma instância, com uma voz - a voz é o que na verdade está a reproduzir os dados da amostra de áudio. Um clipe de instrumento vai criar uma instância de som, que por sua vez, vai criar múltiplas vozes, uma para cada nota no clipe. Têm aqui um exemplo do que essa corrente parece e o que pode ser incluído nestas unidades.
Indo ainda mais longe, Dreams usa um motor granular, e cada voz reproduz o áudio em nódulos individuais chamados grãos. Estes são um pouco como as manchas usadas nos gráficos de Dreams!
O Analisador de Áudio
Esta ferramenta permite-vos ver quantos destes recursos estão a ser utilizados pela vossa criação a qualquer altura. Podem encontrar um vídeo útil aqui sobre o analisador de áudio:
Executem o analisar áudio, joguem a vossa criação, e a ferramenta irá recolher informações ao longo do tempo, mostrando-vos os números envolvidos à medida que jogam. Saiam da ferramenta para obterem o resumo da análise (mostrado abaixo). Isto é um resumo a representar os dados da vossa sessão de jogo num gráfico, no qual podem ver quais são as partes caras da vossa criação. Podem rever o gráfico quando queiram, e a imagem à direita do gráfico mostra-vos o que estava a acontecer naquele preciso momento.
A estatística mais importante aqui é o custo de áudio. Isto é o custo combinado de vozes, instâncias, grãos e todos os efeitos como reverberação, atrasos, compressores e assim. Quanto mais perto isto estiver do máximo, mais o motor vai começar a cortar vozes para evitar atingir 100% - normalmente, vão receber um aviso caso isto suceda. Caso o custo atinja 100%, o Dreams não poderá emitir áudio devidamente, e fará tudo o que seja possível para evitar esta situação.
As instâncias e vozes têm limites, e caso estes sejam atingidos, novos sons poderão não ser reproduzidos, ou os que já estão a ser reproduzidos podem ser cortados. O limite para instâncias é de 128. Para vozes, é um pouco mais complicado, mas nós fizemos com que o gráfico também se limite a 128. Teoricamente, vocês podem ter mais vozes a serem executadas, mas normalmente, um número acima de 128 terá um impacto maior no desempenho, dependendo do sistema em que estejam a correr Dreams.
Quantas mais vozes e instâncias estejam em operação, mais o custo de áudio aumenta. Olhando para o gráfico, poderão descobrir onde precisam de otimizar.
Notem que nem todas as vozes são criadas igualmente. O motor granular significa que algumas vozes podem ser reproduzidas com mais grão sobreposto do que outras, e assim, custam muito mais. A estatística de custo de grão é uma média deste custo de todos os sons em reprodução na cena. A maioria das vozes tem um custo de grão médio de 1x, mas pode aumentar muito se jogarem com os ajustes de síntese granular e aleatoriedade granular nas engenhocas de som. Os diagramas abaixo ilustram exemplos de definições caras e baratas de sobreposição de grão.
Vocês podem definir a sobreposição de grão na página da síntese granular no menu de ajuste de som. Este ajuste também aparece na página de aleatoriedade granular, onde um número de outros controlos deslizantes também podem afetar o custo de grão.
As vozes também podem ficar mais caras caso tenham ativado funcionalidades de som como o oscilador, distorção, compressor dinâmico e assim por diante. Normalmente, as vozes mais baratas são os efeitos sonoros simples, ou experimentar sem ajustes empolgantes.
Mas então, como é que podem usar estas informações para otimizarem as vossas criações? A coisa mais normal que podem fazer é baixar o limite polifónico nos vossos sons. Isto é um limite no número de vozes que podem ser criadas por um som. Quando feito cuidadosamente, vocês podem nem reparar na diferença. Têm aqui alguns exemplos onde a redução polifónica pode ser útil:
- Um clipe musical que reproduz várias notas muito longas umas em cima das outras, como um piano ou um sintetizador com um envolvimento de lançamento long.
- Um som de explosão ou de arma que é reproduzido por cima de si mesmo quando é ativado em sucessão muito rápida.
Normalmente, o limite polifónico está predefinido para 20, o que significa que a maioria dos sons podem reproduzir 20 instâncias de si mesmos desnecessariamente se, por exemplo, forem ativadas muito rapidamente.
Outra opção, é olhar para os sons que possuam maiores sobreposições de grão e reduzi-las, mas tenham em atenção que normalmente, tal irá impactar o efeito fixe criado pela utilização de opções granulares pelos sons.
Também se podem dirigir à página de efeitos sonoros para ativar ou desativar alguns destes, o que pode ajudar a tornar mais baratos a maioria destes sons.
E claro, em última instância, se nada mais ajudar, podem dar uma vista de olhos nas vossas cenas em busca de sons que possam ser apagados.
Termómetro Áudio e Disponibilidade Sonora
Vamos falar sobre o Termómetro de Áudio! Mas primeiro, vamos dar mais uma vista de olhos ao motor.
O áudio de Dreams vem em amostras, que são cortadas em secções. As amostras são o que as gravações dos vossos microfones criam, e as secções são o que vocês veem no mapeador de secções de um som.
Existe um limite sobre o número total de amostras únicas (designadas como Sons Únicos no termómetro) e também temos um limite sobre a quantidade de memória que estas amostras usam.
Por exemplo, podem ficar sem amostras por terem uma grande quantidade de gravações muito pequenas, ou podem ficar sem memória por terem poucas gravações, mas muito grandes. O outro limite aplica-se ao montante de sons gravados ou sons importados e personalizados. Há um aspeto que se torna muito útil de entender que fundamenta e motiva todo o sistema áudio de Dreams:
Todo o conteúdo áudio MM, como instrumentos ou efeitos sonoros das coleções, não custa nada ao ser transferido.
Normalmente, os dados de áudio são muito caros em tempos de armazenamento e transferência, assim, a inclusão de um conjunto padrão de amostras em Dreams é parte do que torna extremamente rápido o tempo de carregamento das criações da coMunidade. Quando vocês usam conteúdo áudio carregado por vós ou por outros, isso vai impactar o tempo de carregamento de criações, por exemplo, torna mais longas e menos consistentes as transições de nível. Esta situação agrava-se quando importam amostras áudio longas, como músicas inteiras.
Por esta razão, é sempre melhor usar música criada em Dreams usando os instrumentos Mm ou derivados deles - em muitos casos, a biblioteca de amostras Mm é mais do que suficiente para criar uma grande variedade de sons usando efeitos incorporados. Pelo menos, caso queiram que as vossas criações carreguem rapidamente, devem assegurar-se que as vossas importações de áudio são aparadas e reutilizadas o mais possível.
É importante compreender que aparar as vossas amostras no mapeador de secções do som não reduz nenhum destes custos. As amostras por si próprias não podem ser alteradas após a gravação, e assim, devem sempre visar importá-las da forma que mais se aproxime de como as querem usar. Caso estejam a importar um ficheiro para Dreams que será cortado para um som, certifiquem-se de que já o editaram para retirar o máximo silêncio ou áudio desnecessário possível. Caso atinjam qualquer um dos limites, não poderão publicar ou guardar a vossa criação.
Têm aqui um exemplo de dois sons e os seus custos. O som à esquerda usa duas secções de duas amostras diferentes. O som à direita usa duas secções de uma amostra. O que está à direita é mais barato, mas pode ser ainda mais barato cortando as partes não utilizadas antes de importar. O som à esquerda é muito esbanjador! Na Mm, preferimos criar efeitos sonoros e instrumentos com secções retiradas de uma amostra, para minimizar o custo global.
Há um limite muito importante que sempre existiu, mas nem sempre foi exposto ou explicado. Chama-se disponibilidade sonora.
Para um som ser reproduzir quando ativado, os dados de áudio têm de ser "carregados". Caso os dados de áudio não estejam prontos, vai haver um atraso quando o som é ativado, o que é muito mau em casos como gravações de música ou de vozes que têm de ser reproduzidas juntamente com as animações.
Mas por mais que adoremos o áudio, se carregarmos todas as secções de todos os sons com antecedência, não teríamos memória para todas as outras partes interessantes do jogo. Assim, o motor está constantemente a fazer cedências. Nós denominamos este sistema de afixar - cada som tenta assegurar que pelo menos uma das suas secções está pronta para ser reproduzida a qualquer altura. Isto ajuda, mas caso tenham demasiados sons na vossa criação, todos a tentar carregar diferentes partes de áudio, também vão acabar por ficar sem memória, o que significa que os problemas com atrasos vão voltar a aparecer.
Anteriormente em Dreams, esta situação acontecia silenciosamente, mas agora, vão receber um aviso e também podem usar uma ferramenta especial para descobrirem quais são os sons problemáticos.
Para as vossas criações, especialmente as que servem para outros estamparem nos seus níveis, vocês devem tentar sempre minimizar o custo do termómetro - ninguém quer estampar o vosso elemento e descobrir que faz com que as vozes sejam reproduzidas com atraso! Caso tal situação suceda, eles também podem otimizar cortando outras coisas. Vamos ver como.
Antes de mais, no Modo de Som, existe uma barra de termómetro que vai aparecer quando a disponibilidade sonora aumenta. Nós adicionámos o menu mostrar/esconder ao Modo de Som para que o termómetro fique sempre visível. Normalmente, só têm de se preocupar com isso caso atinjam o limite de disponibilidade sonora. Se clicarem nessa barra, vão ser dirigidos para o termómetro de disponibilidade sonora, onde podem selecionar mais detalhes para verem um resumo dos 20 sons mais caros na cena. Lembrem-se - é só em termos de custo de disponibilidade sonora!
Também inclui um resumo por canal de som. Podem selecionar qualquer uma das entradas na lista, e serão encaminhados para a localização desse som na vossa cena (podem precisar de o procurar num microchip ou linha temporal). Ocasionalmente, também vão observar um indicador azul a piscar, que vos mostra onde está localizado o som.
Como podem ter reparado, alguns sons estão duplicados na lista. Caso queiram desimpedir esse orçamento de disponibilidade sonora, vão ter de lidar com os duplicados, já que todos eles estão a desperdiçar memória.
O que podem fazer a seguir é ou apagar os sons mais caros ou reduzi-los no mapeador de secções. Reduzir não ajuda no que toca o custo de áudio, mas ajuda o custo de disponibilidade sonora, dado que só pagam o custo de uma seção em vez de uma amostra inteira. Têm aqui um exemplo de dois sons a usar partes diferentes de uma amostra mais longa.
O custo vem da parte daquela amostra que ambas as secções usam - não vai contar duas vezes as partes partilhadas!
Geralmente, os problemas de disponibilidade sonora vão ser causados por sons desnecessariamente longos. Têm aqui um exemplo. Existe aqui um som ambiente de fundo - Dia da Floresta - que está a usar 5,24% do orçamento, quase tanto como a música inteira que também está na cena! Neste caso, estamos muito abaixo do orçamento, mas se precisarmos, talvez possamos reduzir esse som Dia da Floresta no seu mapeador de secção.
Agora está na hora de outra dica: áudio importado como peças longas de música pré-gravada vai gastar muito rapidamente e com pouca eficiência o orçamento de disponibilidade sonora, e é parte da razão pela qual a utilização de música criada dentro de Dreams é sempre muito mais eficiente para que o áudio seja reproduzido de forma estável.
E é basicamente isto. Esperamos que estas funcionalidades sejam úteis. Tenham em atenção que há vários casos extremos, advertências e partes complicadas às quais têm de prestar atenção, como…
- Cada som só disponibiliza uma das suas secções (Mas! Vejam abaixo!), assim, quando existe mais do que a que vocês precisem, vocês precisam de explorar um pouco e descobrir qual é.
- Exceto para instrumentos com mapeamento de linhas ativado! Esses vão disponibilizar uma secção para cada linha na sua pianola que está ocupada por notas. Isto significa que se podem tornar muito caras!
- Sons que usem quase as mesmas partes de uma amostra, mas não exatamente as mesma, vão registar os seus custos como sendo parte da amostra que usem, mesmo que seja partilhada. Isto acontece para que possam ver o nível necessário de disponibilidade. No entanto, como mencionado acima, as partes de áudio partilhadas não duplicam o custo total. Basicamente, os sons na lista tornam-se entradas separadas quando são reduzidos de forma diferente, mesmo que usem dados de áudio praticamente idênticos.
- Neste momento, não existe forma de escolher qual a secção que deve ser disponibilizada, mas quem sabe o que o futuro nos trará!
O Guia de Utilizador do Dreams é um trabalho em progresso. Fica de olho nas atualizações, à medida que adicionamos mais recursos de aprendizagem e artigos.