shader 2

Shader와 SIMD에 대해서 - 1편

SISD(Single Instruction Single Date) ㄴ하나의 명령어로 하나의 데이터만 처리한다. SIMD(Single Instruction Multiple Data) ㄴ하나의 명령어로 여러 데이터를 동시에 처리한다. C언어의 코드로 보면 다음과 같다.add함수의 연산하는 구간이 한번에 같은 더하기 연산이 처리된 것을 알 수 있다. Shader에서 Vector3+Vector3 연산은 SIMD 방식으로각 원소끼리 한번에 더하는 연산인 것을 알 수 있다. 조금더 나아가서 GPU의 연산 단위를 알아보자. GPU 작업 단위 계층 Thread (쓰레드)가셰이더의 가장 작은 연산 단위.픽셀 셰이더라면 보통 픽셀 1개 = 쓰레드 1개.버텍스 셰이더라면 버텍스 1개 = 쓰레드 1개. 즉, "1작업"이란 보..

Shader 2025.09.26

회전하는 픽셀 이펙트 셰이더 짜기

회전하는 도트 이펙트가 사선으로 나오지 않고,정렬된 형태로 표현되기에 픽셀을 찍어서 만든 느낌을 만들 수 있습니다.1. UV Pixelize2. 원운동과 운동 중심점 옮기기3. 텍스쳐에 회전을 걸기4. 텍스쳐 샘플링5. 톤 분리(Step)6. 블렌드 모드 차이1.UV Pixelizefloat pixelize = 16.0;vec2 PixelUV = floor(UV * pixelize) / pixelize; UV를 Pixel화하는 수식입니다. UV정보는 기본적으로 0~1사이 값입니다.위 그림처럼 계단현상을 주어서 픽셀이 분리된 것처럼 표현합니다. 아래 그림을 통해서, 해당 수식을 이해 하시면 좋습니다.2. 원운동과 운동 중심점 옮기기float frequency = 1.0;float amplitude = 0..