«opengl-es2» 태그된 질문

OpenGL ES 2.0은 프로그래밍 가능한 3D 그래픽 파이프 라인을 강조합니다 (OpenGL ES 1.1의 고정 기능 파이프 라인과 비교).

5
OpenGL ES 2.0으로 지연 렌더링 / 음영이 가능합니까?
나는 이것을 StackOverflow 에서 물었지만, 여기에 더 이해가 될 것이다. OpenGL ES 2.0에서 지연 렌더링 / 음영을 구현 한 사람이 있습니까? MRT를 지원하지 않으므로 하나의 컬러 버퍼 만 있으면 "일반적인"방식으로 구현할 수있는 것이 아닙니다. 특히, 나는 iPad, iPhone4 (maaaybe iPhone 3gs) 및 Android에서 탐색하고 있습니다. iPad / iPhone4 / iPhone3gs의 …

2
OpenGL : 쉐이더를 어디에 배치해야합니까?
OpenGL ES 2.0을 배우려고하는데 쉐이더를 "관리"하는 가장 일반적인 방법이 궁금합니다. 내가 찾은 예제에서 (안드로이드 SDK와 함께 제공되는 API 데모에 포함 된 예제와 같이) 일반적으로 GLRenderer 클래스 내부의 모든 것을 볼 수 있기 때문에 내가 가질 수있는 것을 분리하기 때문에, 예를 들어, OpenGL ES 1.0 코드에서와 같이 텍스처 쿼드를 그릴 때마다 …

2
GLSL 쉐이더-색조 / 채도 / 밝기 변경
GLSL 프래그먼트 셰이더를 사용하여 이미지의 색조를 변경하려고합니다. Photoshop의 색조 / 채도 조정 레이어와 비슷한 것을 원합니다. 다음 이미지에서 지금까지 얻은 것을 볼 수 있습니다. 녹색 사각형의 색조를 변경하여 오른쪽의 빨간색 사각형처럼 보이지만이 쉐이더를 사용하면 절반의 빨간색 절반 분홍색 사각형 (중간 사각형)이 나타납니다. 프래그먼트 셰이더에서하고있는 것은 텍스처의 색상을 HSV로 변환 한 …

1
버퍼 바인딩을 해제해야합니까?
OpenGL ES 2로 몇 가지 테스트를하고 몇 가지 질문이 있습니다. 현재 프로그램은 다음과 같습니다. Init ------- -> create index buffer -> fill index buffer glBufferData … -> create vertex buffer -> fill vertex buffer glBufferData … Draw ------- 1. Apply vertex buffer -> Bind VAO -> bind vertex buffer - …

4
OpenGL ES 2.0의 형상 인스 턴싱
OpenGL ES 2.0에서 지오메트리 인스 턴싱을 계획하고 있습니다. 기본적으로 같은 지오메트리 (의자)를 장면에서 1000 번 렌더링하려고합니다. OpenGL ES 2.0에서이를 수행하는 가장 좋은 방법은 무엇입니까? 모델 뷰 mat4를 속성으로 전달하는 것을 고려하고 있습니다. 속성은 꼭짓점 데이터이므로이 동일한 mat4를 전달해야합니다. 동일한 삼각형의 각 꼭짓점에 대해 세 번 (모델 뷰가 삼각형의 꼭짓점에서 일정하게 …

4
2D 충돌 감지
이 캐릭터를 사용한다고 가정 해 봅시다. (출처 : iconbug.com ) 충돌 감지를 어떻게 구현 하시겠습니까? 새의 모양이 사각형 근처에 없기 때문에 경계 상자를 사용하는 것은 좋은 근사치가 아닌 것 같습니다. 이미지의 일부를 나타내는 객체 안에 일종의 쿼드 트리 데이터 구조를 가지고 있다고 생각했습니다. 각 잎은 false(조류 외부의 흰색 / 투명 …

3
OpenGL에서 객체를 어떻게 구부릴 수 있습니까?
OpenGL을 사용하여 실린더 또는 평면과 같은 객체를 구부릴 수있는 방법이 있습니까? 저는 OpenGL 초보자입니다 (OpenGL ES 2.0을 사용하고 있습니다. 문제가 중요하다면,이 경우 수학이 가장 중요하므로 어떤 식 으로든 독립적입니다). 번역, 회전, 행렬 변환 등의 기본 사항을 이해합니다. 객체의 지오메트리를 실제로 변경할 수있는 기술이 있는지 궁금합니다 (이 경우 구부림). 모든 링크, …

1
Android에서 GPU 스키닝을 안정적으로 구현하려면 어떻게해야합니까?
Android에서 캐릭터 스키닝을 사용하려고합니다. 아이디어는 상당히 바닐라입니다. 저는 스키닝 매트릭스를 사용하고 각 정점과 함께 최대 4 개의 매트릭스 인덱스와 4 개의 해당 가중치를 보냅니다. 정점 셰이더에 합산하여 각 정점에 적용합니다. 이것이 내 게임의 iOS 버전에서 버텍스 쉐이더에서하고있는 일입니다 (정규는 신경 쓰지 마십시오). attribute vec4 in_pos; attribute vec4 in_normal; attribute vec2 …

1
게임 루프와 OpenGL 간의 멀티 스레딩 활용
openGL 렌더러를 기반으로 게임의 맥락에서 말하기 : 두 개의 스레드가 있다고 가정 해 봅시다. 게임 내 오브젝트에 대한 게임 로직 및 물리 등을 업데이트합니다. 게임 객체의 데이터를 기반으로 각 게임 객체에 대해 openGL 그리기 호출을 만듭니다 (스레드 1이 계속 업데이트 함) 게임의 현재 상태에서 각 게임 객체의 복사본이 두 개가 …

1
OpenGL ES는 텍스처를 사용하여 스텐실 효과를 만듭니다
환경 이것이 내가 일하고있는 환경입니다. OpenGL ES 2.0 아이폰 시뮬레이터 및 아이폰 4 NVIDIA GeForce GTX 680MX 2048MB를 사용하는 iMac 27 " 희망이 도움이됩니다. 문제 여러 소스 및 Stackoverflow를 포함한 여러 사이트에서 높고 낮은 검색을 수행했지만 작동하는 스텐실 효과는 얻지 못했습니다. 내가 가진 것은 이것입니다 : 검은 색 'S' 는 …

1
스프라이트 시트 텍스처가 인접한 텍스처의 가장자리를 잡습니다.
간단한 스프라이트 시트를 사용하는 사용자 정의 스프라이트 루틴 (openGL 2.0)이 있습니다 (텍스처가 서로 수평으로 정렬되어 있음). 예를 들어 다음은 간단한 2 개의 텍스처가있는 테스트 스프라이트 시트입니다. 이제 openGL 스프라이트 객체를 만들 때 수행 할 작업은 아틀라스의 총 프레임 수를 지정하고 그릴 때 그릴 프레임을 지정하는 것입니다. 그런 다음 다음을 통해 …

3
버텍스 쉐이더에 여러 행렬을 보내려면 어떻게해야합니까?
뼈 / 스킨을 사용하여 애니메이션을 연습하고 있습니다. 버텍스 당 하나의 행렬을 셰이더를 보내려고합니다. 이 두 가지 접근법을 생각할 수 있습니다. 방법 1 이 뼈대마다 하나의 균일 한 핸들이 있습니다 u_Bone0 = GLES20.glGetUniformLocation(mProgram, "u_Bone[0]"); u_Bone1 = GLES20.glGetUniformLocation(mProgram, "u_Bone[1]"); 그리고 onDraw나는 그들 각각을 쉐이더에 보냅니다. GLES20.glUniformMatrix4fv(u_Bone0, 1, false, matrix0, 0); 행렬 수가 …

1
헤비 프래그먼트 셰이더의 성능 최적화
다음 쉐이더 세트를 최적화하는 데 도움이 필요합니다. 꼭지점: precision mediump float; uniform vec2 rubyTextureSize; attribute vec4 vPosition; attribute vec2 a_TexCoordinate; varying vec2 tc; void main() { gl_Position = vPosition; tc = a_TexCoordinate; } 파편: precision mediump float; /* Uniforms - rubyTexture: texture sampler - rubyTextureSize: size of the texture before …

1
gluLookAt는 어떻게 작동합니까?
내 이해에서 gluLookAt( eye_x, eye_y, eye_z, center_x, center_y, center_z, up_x, up_y, up_z ); 다음과 같습니다. glRotatef(B, 0.0, 0.0, 1.0); glRotatef(A, wx, wy, wz); glTranslatef(-eye_x, -eye_y, -eye_z); 그러나 ModelView행렬을 인쇄 할 때 호출이 glTranslatef()제대로 작동하지 않는 것 같습니다. 다음은 코드 스 니펫입니다. #include <stdlib.h> #include <stdio.h> #include <GL/glut.h> #include <iomanip> #include …

4
가변 길이 루프가 GPU 쉐이더에 미치는 영향
예를 들어 데모 씬에서 GPU 내부에 절차 적 내용을 렌더링하는 것이 인기가 있습니다 (화면을 채우기 위해 단일 쿼드를 그려 GPU가 픽셀을 계산하게 함). 레이 행진 이 인기가 있습니다. 이것은 GPU가 픽셀 당 알 수없는 루프 반복 횟수를 실행하고 있음을 의미합니다 (그러나 상한을 가질 수는 있음 maxIterations). 가변 길이 루프를 사용하면 …
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.