OpenGL을 사용하여 그래프를 시각화하려고합니다. 저는 3D 공간에 포인트를 가진 버텍스 버퍼와 버텍스 사이의 선을 지정하는 인덱스 버퍼를 가지고 있습니다. glDrawElements를 사용하여 그래프를 그립니다. 모든 것이 작동합니다. 문제는 에지 가중치를 시각화해야한다는 것입니다. 내 문제는 가장자리 무게가 pairwise 특성이며이 정보를 쉐이더에 저장하는 방법을 모른다는 것입니다. 내가 생각할 수있는 유일한 해결책은 DrawRangeElements를 사용하여 각 가장자리를 개별적으로 그리고 모든 호출 사이에 가장자리 가중치를 설정하는 것입니다. 이 작업을 수행하는 더 좋은 방법이 있습니까?OpenGL에서 쌍으로 정점 속성
답변
기하학 쉐이더를 사용할 필요가 없습니다. GL_LINES
으로 렌더링하고 필요에 따라 위치를 복제 할뿐만 아니라 라인에있는 각 쌍의 vert에 대해 동일한 "weight"속성을 제공하십시오. 이것은 궁극적으로 각 얼굴이 자체 법선을 필요로하는 큐브 렌더링과 다르지 않습니다.
메모리를 다시 가져와야하는 경우 (정규화 된 단락, 비정규 화 된 단락 또는 기타를 사용하여) 꼭지점 데이터를 압축 할 수없는 경우 여기에 some techniques you can use이 있습니다. 경고 : 이것은 메모리 대 성능 간의 상충 관계입니다. 따라서 실제 메모리 압력이 아니라면 꼭지점 데이터를 복제하여 끝내십시오.
glDrawArrays를 사용하고 계십니까? – circlingthesun
예. glDrawElements를 사용할 때는 각 줄마다 독립적 인 정점 인덱스가 사용되므로 아무런 의미가 없습니다. –
어떻게 든 여분의 메모리 오버 헤드를 피할 수있는 방법이 있습니까? – circlingthesun
- 1. OpenGL에서 정점 색상과 텍스처 사용하기
- 2. 하이트는 : 정점 속성
- 3. OpenGL에서 파일 읽기 및 정점 값 표시
- 4. OpenGL : 프리미티브 당 정점 속성 배열?
- 5. OpenGL에서 유사한 객체에 여러 개의 정점 버퍼가 필요합니까? 주어진
- 6. 다이렉트 9 : 정점 셰이더 속성 소스
- 7. 쌍으로 조합
- 8. OpenGL에서 빠른 텍스트 렌더링
- 9. OpenGL에서 텍스처로 버텍스 배열 결합하기
- 10. AGAL의 정점 상수 이외의 정점 레지스터에 행렬이 존재할 수 있습니까?
- 11. 안드로이드 : 이미 쌍으로 연결
- 12. 트라이어드를 쌍으로 재조합합니까?
- 13. 시퀀스 요소를 쌍으로 나눕니다.
- 14. - 이름 값 쌍으로
- 15. 사각형 매트릭스를 쌍으로 나누기
- 16. 배열 쌍으로 입력 일치
- 17. 구형 정점 연결하기 OpenGL
- 18. 정점 레이블
- 19. boost :: adjacency_list의 가장자리 속성 (관련 정점 포함) 얻기
- 20. OpenGL에서 glDrawArray 호출 최소화
- 21. OpenGL ES : 정점 복제없이 플랫 쉐이딩?
- 22. OpenGL에서 얼굴 모서리를 매끄럽게 만드는 기술
- 23. OpenGL (ES) : 텍스처에서 정점 데이터를 효율적으로 가져옵니다.
- 24. OpenGL에서 버퍼를 사용하여 무언가를 그리기
- 25. OpenGL에서 회전
- 26. openGl에서 오리엔테이션
- 27. OpenGL에서 '삭제'쿼드
- 28. OpenGl에서 텍스처링
- 29. 두 세트를 결합하여 쌍으로 나누기
- 30. 필드 쌍으로 장고 쿼리 선택
"쌍 특성"이란 무엇입니까? –
정점 A와 B가 주어지면 그 경계선을 설명하는 속성에 액세스 할 수있는 방법이 필요합니다. 이 경우 무게. 기본적으로 (인덱스 버퍼를 사용하는 동안) 내가 그린 모든 라인의 버퍼에있는 속성에 액세스하고 싶습니다. 기하학 셰이더에서이 작업을 수행 할 수있는 방법이 필요합니다. – circlingthesun
2D 텍스처의 인접 행렬이 작동합니까? 각 x/y 포인트에서 픽셀 값은 노드 x와 노드 y 사이의 에지 가중치가됩니다. – genpfault