그래픽스 및 게임 엔진 블로그

  • 홈
  • 태그
  • 방명록

쉐이더코드 1

[GPU병렬 처리] 쉐이더코드에서 if-else문을 안 쓰는 이유

평소 CPU코딩에만 익숙해져있다면, 다음과 같은 코드를 보고 굉장히 비효율적이라고 생각할 수 있습니다.[unroll] // warning X3557: loop only executes for 1 iteration(s), forcing loop to unrollfor (i = 0; i  hlsl 픽셀세이더에서는 GPU병렬처리를 이용하기 때문에 if-else문을 사용한다고 해서 조건에 참인 값만 계산되는 것이 아닙니다. 비트 마스킹을 이용하기 때문이죠.예를들어 이 코드는float4 color = // some color;if (someValue > 0.5) color = ExpensiveCalculation(); // 비싼 계산 실제로 이 코드로 실행이 됩니다.float4 color = // some ..

문법 및 메모리 관련 2024.11.30
이전
1
다음
더보기
프로필사진

그래픽스 및 게임 엔진 블로그

eofud0930@naver.com

  • 분류 전체보기 (103) N
    • 알고리즘 (16)
    • C#_ Unity Game programming (22)
    • 문법 및 메모리 관련 (8)
    • 그래픽스 기술 (32)
    • [Graphics] 그래픽스 수학 (10)
    • 자체엔진 (14) N

Tag

sph, rasterization, 그래픽스, 메모리, PBR, DirectX, RayTracing, 텍스춰링, 렌더링파이프라인, GPU, 유체시뮬레이션, 렌더링, Ray Tracing, hlsl, thread, ComputeShader, graphics, directx12, C++, rendering,

최근글과 인기글

  • 최근글
  • 인기글

최근댓글

공지사항

  • eofud0930@naver.com (my email)

페이스북 트위터 플러그인

  • Facebook
  • Twitter

Archives

Calendar

«   2025/07   »
일 월 화 수 목 금 토
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31

방문자수Total

  • Today :
  • Yesterday :

Copyright © Kakao Corp. All rights reserved.

티스토리툴바