Estive pesquisando a definição de radianos e descobri que os matemáticos os preferem porque são derivados de pi em vez de serem completamente arbitrários como graus.
No entanto, não encontrei um motivo convincente para usá-los no desenvolvimento de jogos, possivelmente devido à minha completa falta de compreensão matemática relacionada. Eu sei que a maioria das funções sin / cos / tan em idiomas é o que radianos, mas alguém também pode criar funções de biblioteca em graus (e evitar os erros de arredondamento inerentes ao usar pi).
Não quero que esta seja uma pesquisa de opinião. Gostaria apenas de ouvir de pessoas que fizeram desenvolvimento de jogos (e a pesquisa matemática associada) em que radianos oferecem uma experiência superior em graus, em oposição a "Estamos usando radianos porque sempre os usamos ", apenas para me ajudar (e possivelmente outros) a entender para que servem.
fonte
Respostas:
Radianos são usados em matemática porque
Não são os matemáticos como pi. Os radianos são na verdade uma escolha mais natural da medida do ângulo do que graus, pelas razões acima. Eles são a medida do ângulo em que fatores como pi / 180 desaparecem.
Portanto, na IMO, a questão não é "por que usar radianos", mas "por que não usar radianos". Em outras palavras, não é necessário um motivo para usar radianos; eles são a escolha padrão da medida do ângulo. É preciso um motivo para usar graus. Por exemplo, pode-se optar por mostrar ângulos em graus na interface do usuário de um aplicativo, porque eles são mais familiares para muitas pessoas (especialmente artistas). No entanto, pessoalmente, eu me acostumei a pensar em ângulos em termos de radianos, em vez de graus.
Não tenho exemplos específicos de gamedev para você, porque esse não é realmente um problema de gamedev, mas sim matemático e seria o mesmo em qualquer campo que use matemática.
(A propósito, não existem mais "erros de arredondamento inerentes ao usar pi" do que ao usar graus ... os ângulos devem sempre ser números reais, não números inteiros; caso contrário, como você representará um ângulo de meio grau? :) )
fonte
A resposta de Nathan é muito concreta. Eu gostaria de fornecer uma visão mais geral:
O conceito matemático mais complexo que é implementado nativamente na maioria das unidades de processamento são números de ponto flutuante como modelos para o campo de números reais ℝ. A geometria visual é baseada no espaço vetorial real tridimensional ℝ³. Coordenadas são números reais. As quantidades geométricas são baseadas no comprimento , que é um múltiplo real de uma unidade.
Devido a essa base em números e comprimentos reais, é prático também modelar ângulos por números reais resp. comprimentos. Radianos é o comprimento do arco de um círculo unitário com o ângulo especificado. Portanto, é o modelo de um ângulo mais compatível com todas essas outras unidades com base em números reais resp. comprimentos. Por exemplo, a aproximação sin x ~ x para valores pequenos de x é uma aproximação da coordenada y de um ponto no círculo unitário pelo arco do eixo x para esse ponto.
Não se deve esquecer que um ângulo não é um comprimento. É uma das 4 partes de um plano criado por duas linhas retas que se cruzam. Sua quantidade é limitada pela simetria dos planos em ³³ e pela métrica euclidiana.
É mais natural modelar um ângulo pelo intervalo de semi-abertura [0,1) (ou (0,1]) colado nos seus pontos finais, dado o valor de um ângulo como parte de uma volta completa. 360 de um turno completo. (BTW: Número teoricamente, essa é uma escolha melhor do que o sistema decimal usado para números reais.)
fonte
Embora eu também use radianos, por todos os motivos especificados, há pelo menos um bom motivo pelo qual os graus são preferidos: precisão e acúmulo de erros. Girar um círculo completo 1 grau por vez é exato. Girar através de um círculo completo de 2PI / 360 radianos por vez não é. A realização de uma rotação de 90 graus 4 vezes em uma grade de pixels leva você de volta exatamente ao ponto em que começou. A realização de uma rotação de 2PI / 4 radianos em uma grade de pixels 4 vezes não.
fonte
Vamos concordar que é melhor escolher um e cumpri-lo do que usar duas definições e adivinhar qual delas é necessária para a função atual. Então, usar o comprimento do arco é mais natural para a implementação do pecado e do cos, o que pode ser um motivo para o cmath implementá-lo dessa maneira. Como os jogos geralmente são escritos em C ++ ou C e já existe pecado e cos implementados, faz sentido manter essa definição.
[Dane-se seu legado opengl]
fonte