Pular para o conteúdo

O driver de vídeo no WSL (17/08/2024) não está enviando as informações do tamanho real do monitor para o Xrandr.

Isso é um problema para qualquer aplicação que possua uma GUI.

Você pode conferir uma ferramenta que fiz usando o conteúdo desse post no github: https://github.com/A-Ribeiro/wsl-hidpi-suggestion .

...continuar lendo "Configuração de Escala de DPI no WSL em Monitor com Densidade de Pixels Alta"

No nosso post anterior, falamos do radix sort em combinação com o counting sort, que é mais rápido que o algoritmo padrão std::sort.

Olhando para o algoritmo original, é possível fazer mais algumas otimizações.

Nossa saga em busca da ordenação mais rápida continua.

...continuar lendo "Espremendo Até o Último Bit: Ordenação de Números na CPU O(n)"

O problema de ordenação é tratado como um problema básico.

Geralmente estudamos esse tópico quando estamos dando nossos primeiros passos no mundo da programação.

Venho através desse post revisar essa questão com o enfoque prático relacionado a ordenação de números usando o algoritmo do radixsort, bucketsort e countingsort.

...continuar lendo "Ordenação Rápida para Números O(n)"

Um certo tempo atrás eu vi uma dúvida de uma pessoa iniciante no mundo de CG a respeito do que seria a interpolação nos shaders.

Acho que esse tópico pode ser interessante para quem está se familiarizando com o tema.

Aqui falarei do conceito básico que está por trás da interpolação que é realizada dentro dos shaders.

...continuar lendo "Interpolação Linear Presente nos Shaders"

Quando você está programando o movimento de um personagem, geralmente é necessário configurar o parâmetro de velocidade.

Em alguns casos, o personagem se move mais rápido, outras vezes ele se move mais devagar, até atingirmos a configuração de parâmetro correta. Este processo pode não funcionar para todas as animações incluídas no projeto.

Neste post abriremos uma discussão sobre como deixar o movimento ser controlado pelo artista. Dessa forma, podemos parar de tentar adivinhar quais são os parâmetros de movimento dos personagens.

Root Motion

...continuar lendo "Programação de Personagem 3D Parte 3 de 3: Movimento Pelo Nó Raiz"

A animação esqueletal é uma forma de dar vida, movimento, suavidade à sequências de poses utilizando transformações geométricas.

Nossa preocupação nesse post está centrada em como realizar essa transição de quadros partindo de uma pose para outra.

skeletal walk

...continuar lendo "Programação de Personagem 3D Parte 2 de 3: Animação Esqueletal"

O skinning de mesh é uma forma de deformar a mesh utilizando uma estrutura simples.

Para aplicações de tempo real, geralmente utilizamos a hierarquia de transformações.

...continuar lendo "Programação de Personagem 3D Parte 1 de 3: Skinning de Mesh"

Recentemente eu estava conversando com o Eduardo Chaves e ele me mostrou o site http://shader-playground.timjones.io/ .

Aqui é possível escrever um shader (vertex, fragment, etc...) e você pode escolher o compilador, linguagem e o estágio do shader que você está escrevendo.

O melhor analisador é o Radeon GPU Analyser, porque ele compila o código e você pode ver as instruções que ele gera, a quantidade de registradores que ele usa, etc…

Esse é o nosso ponto de partida.

...continuar lendo "Dicas de Shader em GLSL: Otimização de Operações com Matrizes, Pontos e Vetores"

Soft Particles

Conversa sobre a implementação de partículas suaves usando o framework OpenGLStarter.

...continuar lendo "Partículas Suaves no OpenGLStarter"

PBR image

Eu comecei a implementar um shader PBR (Physically Based Rendering) e pretendo executá-lo no meu Raspberry Pi 3 Model B+.

...continuar lendo "Em Direção ao PBR (Windows, Linux, Mac e Raspbian)"