컴퓨터 그래픽

컴퓨터 그래픽 연구자 및 프로그래머를위한 Q & A

1
프래그먼트 셰이더에서이 조건이 왜 이렇게 느립니까?
WebGL에서 FPS 측정 코드를 설정하고 ( 이 SO answer 기반 ) 프래그먼트 셰이더의 성능과 약간의 차이점을 발견했습니다. 이 코드는 1024x1024 캔버스에 단일 쿼드 (또는 오히려 두 개의 삼각형)를 렌더링하므로 조각 매직에서 모든 마법이 발생합니다. 이 간단한 셰이더 (GLSL; 정점 셰이더는 단지 통과)를 고려하십시오. // some definitions void main() { float …

3
메쉬 삼각형의 주 곡률을 계산하는 가장 간단한 방법은 무엇입니까?
메쉬가 있고 각 삼각형 주위의 영역에서 주 곡률 방향의 추정치를 계산하고 싶습니다. 나는 전에 이런 종류의 일을 한 적이 없으며 Wikipedia 는별로 도움이되지 않습니다. 이 추정치를 계산하는 데 도움이되는 간단한 알고리즘을 설명하거나 설명해 주시겠습니까? 모든 정점의 위치와 법선을 알고 있다고 가정합니다.
19 mesh 

1
OpenGL의 맥락에서 "st"는 무엇을 의미합니까?
st다른 OpenGL 프래그먼트 셰이더를 볼 때이 용어 가 몇 번 나오는 것을 보았습니다 . 그러나 나는 그것이 무엇을 의미하는지 또는 그것이 무엇을 사용하는지 모릅니다. 예를 들면 다음과 같습니다. uniform vec2 u_resolution; vec2 st = gl_FragCoord.xy/u_resolution; 이것이 픽셀 좌표를 640 x 480 대신 0.0-1.0의 표준화 된 좌표로 변환한다는 것을 이해할 수 …
19 opengl 

2
상관 된 샘플이 Monte Carlo 렌더러의 동작에 어떤 영향을 줍니까?
경로 추적 또는 양방향 경로 추적과 같은 Monte Carlo 렌더링 방법에 대한 대부분의 설명은 샘플이 독립적으로 생성된다고 가정합니다. 즉, 독립적이고 균일하게 분포 된 숫자의 스트림을 생성하는 표준 난수 생성기가 사용됩니다. 독립적으로 선택하지 않은 샘플은 노이즈 측면에서 유리할 수 있습니다. 예를 들어, 계층화 된 샘플링과 불일치 시퀀스는 렌더링 시간을 거의 항상 …

4
베 지어 표면을 레이트 레이싱하는 방법?
나는 math.SE에서이 질문을 시도 했고 놀랍게도 그 대답은 "방정식이 너무 거칠다 . 단지 함수를 수치 루트 파인더에 공급하는 것"이었다. 그러나 당신이 나 같은 "그래픽 녀석"이라고 생각하고 디자인 작업을 위해 베 지어 곡선으로 광범위하게 연주했다면 더 잘 할 수 있다고 믿어야합니다. Kajiya가 게시 한 알고리즘이 있습니다 (Sylvester Matrices)를 이해하는 배경은 없지만 …

1
타일 ​​기반 (지연) 렌더링을위한 데이터 구조
타 일식 렌더링은 현대 모바일 GPU 아키텍처에서 이미지 공간을 작은 (예를 들어, 32x32 픽셀) 타일의 규칙적인 그리드로 세분화하여 메모리 액세스의 일관성을 높이기 위해 사용됩니다. 임의로 많은 프리미티브가 임의의 주어진 타일과 겹칠 수 있다는 점을 고려하여 각 타일과 관련된 프리미티브를 추적하는 데 사용되는 데이터 구조 유형에 대한 정보는 거의 없습니다. 드라이버 …

2
지표면 산란에 대한“쌍극자 근사치”는 무엇입니까?
표면 하 산란에 관한 논문을 읽으면 종종 "쌍극자 근사 (dipole approximation)"라고하는 것을 언급하게됩니다. 이 용어는 Henrik Wann Jensen 등의 지표면 경 운용 실용 신안 (A Practical Model for Subsurface Light Transport) 으로 돌아가는 것처럼 보이지만 이 논문은 이해하기가 매우 어렵습니다. 누구든지 쌍극자 근사가 무엇인지, 그리고 지표면 산란을 렌더링하는 데 어떻게 …

2
Illustrator의 벡터 래스터 화 프로세스 란 무엇입니까?
현재 벡터 그래픽 래스터 화와 다양한 응용 프로그램 유형에서 구현되는 다양한 방법에 대한 몇 가지 사항을 이해하려고합니다. 몇 가지 프로그램을 테스트하고 비교 한 결과 앤티 앨리어싱 이 래스터 화 프로세스에서 동작 하는 방식에 큰 차이가 있음을 알았습니다 . 특히 Illustrator의 렌더링 동작에 관심이 있습니다. 더 자세히 읽으면 이유를 알 수 …

2
확산 및 정반사 항을 올바르게 결합하는 방법은 무엇입니까?
내가 이해하는 한, BRDF에서 Fresnel 항은 광자가 표면에 닿을 때 반사되거나 굴절 될 확률을 알려줍니다. 반사 된 광자는 정반사 항에 기여하고, 굴절 된 광자는 확산 항에 기여합니다. 따라서 물리적 기반으로 재료의 색상에 대한 빛의 기여를 결정할 때, 나는 단지 다음과 같이 쓰고 싶은 유혹을 느낍니다. // Assuming for example: // …

2
너비 란 무엇이며 어떻게 작동합니까?
의 OpenGL 문서는 그 fwidth을 말한다 returns the sum of the absolute value of derivatives in x and y. 이것은 수학적으로 덜 의미하는 것을 의미하며 그것을 시각화하는 방법이 있습니까? 함수에 대한 나의 이해를 바탕으로 이웃 픽셀 fwidth(p)의 값에 액세스 할 p수 있습니다. 성능에 큰 영향을 미치지 않으면 서 GPU에서 어떻게 …
18 opengl 


4
VR과 모니터의 차이점
Macintosh 컴퓨터는 '열등한'그래픽 카드 때문에 Oculus Rift를 처리 할 수 ​​없습니다. 그러나 VR은 단순히 외부 모니터와 같아서는 안됩니까? 그리고 컴퓨터 그래픽과 관련하여, 매킨토시가 쉽게 실행할 수있는 VR 게임은 다른 게임과 어떻게 다른가요? 문제는 어디에 있습니까?

1
렌더링 방정식을 풀기 위해 반구 (구가 아닌)에 통합해야하는 이유는 무엇입니까?
내가 본 대부분의 교과서에서 렌더링 방정식을 작성하는 방법은 다음과 같습니다. 엘0( ω0) = L이자형( ω0) + ∫Ω에프( ω나는, ω0) L나는( ω나는)d ω나는엘0(ω0)=엘이자형(ω0)+∫Ω에프(ω나는,ω0)엘나는(ω나는)디ω나는L_0( \omega_0)= L_e(\omega_0)+\int_{\Omega}{f(\omega_i, \omega_0)L_i(\omega_i)\,\mathrm{d}\omega_i} 이 반구로 정의되는 곳 (그리고 모든 기능은 더 많은 변수에 의존하므로 여기서는 생략했습니다.)ΩΩ\Omega 이제 렌더링되는 표면이 일종의 유리 또는 투명한 플라스틱이라고 가정합니다. 반구에만 통합하는 것이 …

3
OpenGL에서 프레임 버퍼 객체로 렌더링되는 것을 어떻게 디버깅 할 수 있습니까?
화면에 렌더링되는 포인트 클라우드가 있습니다. 각 지점에는 ID뿐만 아니라 위치와 색상이 있습니다. 각 점의 ID를 텍스처로 렌더링하라는 요청을 받았으므로 FBO를 만들고 하나는 색상과 하나는 깊이에 대한 두 개의 텍스처를 첨부했습니다. 이 오프 스크린 렌더링에 필요한 VAO 및 VBO를 만들고 각 지점마다 위치와 ID를 업로드했습니다. FBO에 대한 렌더링이 완료되면 색상 질감의 …
17 opengl  debugging 


당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.