2012-11-18 2 views
1

Adobe Illustrator에서 제작 한 벡터를 가져 와서 OpenGL 호출에서 이미지를 재현하는 데 필요한 점수를 얻으려면 어떻게해야합니까?Adobe Illustrator 벡터 이미지를 Open GL로 변환

내가 원하는 것은 내 2 차원 작품을 가져 와서 내 프로그램에서 직접 제작하는 것입니다. 이렇게하면 필자가 원하는 해상도를 지원할 수있게되고 선명하고 메모리를 절약 할 수 있습니다. 나는 그것이 일어나는 방법을 알아낼 수 없다. 궁극적으로, 이것은 안드로이드 프로그래밍쪽으로 갈 것입니다.

답변

3

OpenGL은 2D 벡터 그래픽 그림을 그릴 수있는 아주 좋은 API는 아닙니다. 그것들은 보통 곡선 패치 (Bezier 및/또는 NURBS)를 많이 포함하고 있습니다.이 패치는 OpenGL을 사용하여 그리기 전에 먼저 삼각형으로 분해해야합니다.

OpenVG라는 또 다른 API가 2D 벡터 그림 그리기를 지원하기 위해 특수 제작되었습니다. 일부 OpenVG 구현에서 지원되는 OpenGL 상호 작용이 있습니다. 그리고 일부 OpenVG 구현 do은 OpenGL을 백엔드로 사용합니다.

다른 옵션과 현재 실행 가능한 것은 OpenGL을 백엔드로 사용하는 벡터 그래픽 드로잉 라이브러리를 사용하는 것입니다. 해당 라이브러리 중 하나는 Cairo이며 SVG 파일 판독기도 제공합니다.

Adobe Illustrator (.ai)는 독점 형식이므로 사용하지 않을 것입니다. 그러나 Illustrator에서 SVG로 내보낼 수 있으며 Cairo는 Illustrator에서 생성 한 SVG 파일을 읽고 잘 그립니다.

+0

AI가 직접 그 일을 할 수 없다는 것이 유감입니다 ... 아직도, 나는 그 배후의 추론을 이해합니다. – PearsonArtPhoto

+0

@Pearsonartphoto : OpenGL은 그래픽 파일 형식이 아닌 드로잉 API입니다. 그래픽을 OpenGL 명령의 체인으로 저장하려고 시도하는 것은 거의 의미가 없습니다. – datenwolf

+0

본질적으로 당신은 개별 조각들을 모아서 이미지를 그리기 때문에 그것이 내게 의미가 있다고 생각합니다. 하지만 어쩌면 그저 미친 것 같은데 ... – PearsonArtPhoto

0

Illustrator 파일에서 Inkscape의 명령 행 --export-plain-svg을 사용하십시오. 완벽한 변환 (특히 글꼴)이 아니지만 작업이 완료됩니다.

카이로가 Inkscape에 기반을두고 있기 때문에 누구나 알고있는 것은 --export-plain-svg과 비슷하며 저레벨 (더 빠름)입니까?

관련 문제