• 북마크
  • 추가메뉴
어디로 앱에서 쉽고 간편하게!
애플 중고 거래 전문 플랫폼
오늘 하루 보지 않기
KMUG 케이머그

소프트웨어

[App 개발] OpenGL 질문....

본문

1. 임플리먼테이션이 머죠?
2. 소프트웨어와 하드웨어의 차이??
3. 파이프라인이 무엇이죠?
4. 파이프라인의 구조

부탁드립니다
0 0
로그인 후 추천 또는 비추천하실 수 있습니다.

최신글이 없습니다.

최신글이 없습니다.

댓글목록 5

美청년.영환군님의 댓글

일단 임플리먼테이션(implementation)에 대한 것은 C를 공부하셨다고 하니..
C에서도 나오는 접하셨을 겁니다.

일반적으로 구현한다라는 의미로 받아들여지는데 예를 들어 C에서 어떤 함수 (여기서는 정수형 int 를 예로 들어) 이 함수의 크기가 DOS에서는 2바이트의 크기를 unix 또는 32bit Windows에서는 4바이트의 크기..
뿐만 아니라 컴파일러에 따라 DOS 상에서도 4바이트의 크기로 구현이 되기도 합니다.

즉 implementation 라는 것의 의미를 "지정한 함수 또는 메소드는 운영체제 또는 컴파일에에 의존한다.." 라고 해석하시는 것이..

쉽게 현재 사용되는 환경에 따라 구현된다 라고 이해하시면 됩니다.
제 설명이 좀 애매할 수도 있겠군요.

C에 해당해 설명을 드렸는데 OpenGL에서도 그 근본적 의미는 같다고 보시면 됩니다.

SW 와 HW의 차이는.. 아마도 렌더러에 대한 내용을 질문하신거 같은데..

NetImmerse 를 이용한 프로젝트에 대한 글을 본 기억이 있어서..

NDL엔진이라고도 불려지는데..

NDL 엔진은 Direct3D와 OpenGL가속을 지원하고 D3D나 OpenGL을 지원하는 그래픽 엑셀레이터를 설치한 시스템에서는 하드웨어 T&L가속을 지원 받을 수 있다고 내용은 기억합니다.

특히나 NetImmerse가 독자적으로 전체 hardware vector processing units, the graphics synthesizer and hardware DMA를 구현하해서Machintosh 플랫폼에서는 OpenGL을 통한 가속이 이루어집니다.

정확한 내용은 사용되어지는 플랫폼과 기반환경(개발 엔진)에 따라 HW 가속기능의 활용등에 대해 공부를 해보시는 것이 좋겠네요.

파이프라인(pipeline)은 아마도 렌더링 파이프 라인에 대한 설명을 원하시는 것 같은데..

혹시 그것이라면 렌더링 파이프라인은 3D로 정의된 물체들을 모니터상에 나타내기 위한 일련의 변환과정, 전체 파이프라인은 Transform뿐만 아니라 텍스쳐, 조명처리, 클리핑등의 더욱 많은 과정이 포함되어있음.

이라고 인터넷을 뒤져보면 내용이 나옵니다.

OpenGL의 내용은 아니지만 DirectX의 Transform pipeline 의 내용을 보면

각각의 정점, 폴리곤은 각자의 local 좌표계에서 만들어 지게되고 이것을 사용자가 3D 화면으로 볼때는 각각 따로 보는 것이 아닌 여러물체를 한번에 보게되는데 그것을 위해 각자의 local 좌표계에 존재하는 오브젝트들을 하나의 좌표계 (World 좌표계)로 만들어주는 것을 렌더링 파이프라인의 첫단계인 World transform 이라고 합니다.

다음으로 각각의 오브젝트들을 보는 위치를 지정해주게 되는데 카메라(View)를 기준으로 오브젝트들의 위치를 변환합니다. 이것을 View transform이라고 합니다.

마지막으로 Projection transform 은 카메라를 통해 오브젝트를 보는 방법을 지정하는 것을 말합니다.

일반적으로 원근감있게 보는 Perspective Projection 이나 CAD 등에 쓰이는 Parallel Projection 이 있습니다.

이렇게 렌더링 파이프라인에서 World transform, View transform, Projection transform 의 변환을 거쳐 3D 화면이 사용자에게 2D 화면으로 바뀌어 모니터에 출력되게 되는 겁니다.

나머지는 다음분께 패스~

너무슬픈프린이님의 댓글

2. 소프트웨어 임플리먼테이션, 하드웨어 임플리먼테이션의 차이
라고 써야 되는데 쓰지 않았군요...
뭐 유용한 답변이었습니다

너무슬픈프린이님의 댓글

추가질문
5. OpenGL 엔 커서 바꾸기, 창 크기 조절하기 등은 없고 운영체제 API의 도움을 받아야 되나요?
6. OpenGL 에 Sound 를 집어넣는것이 가능합니까??
7. 3ds max 같은걸로 만든 물체 등을 OpenGL 에 넣을수 있습니까??

조윤원님의 댓글

5. OpenGL 엔 커서 바꾸기, 창 크기 조절하기 등은 없고 운영체제 API의 도움을 받아야 되나요?

넵.. 어짜피 openGL도 하나의 api불가하지 않습니까.. 때문에 윈도우 사이즈를 바꾸시기 원하신다면 운영체제의 api를 사용하시면 됩니다.

6. OpenGL 에 Sound 를 집어넣는것이 가능합니까??
OPenGL자체에는 사운드제어 함수가 없습니다. 그래서 윈도우쪽에선 direct sound를 같이 사용하고 맥에선 openAL를 사용하면 보다빠르게 처리할수있습니다.  동시에 처리가 된다는 의미이지.. openGL안에 포함되어있진 않습니다.

7. 3ds max 같은걸로 만든 물체 등을 OpenGL 에 넣을수 있습니까??
openGL의 api에는 직접 다른 모델링된 파일을 불러올수 없습니다만.. 3ds파일 로더를 만들어서 사용하면 됩니다. 아직 저도 여기까지 해보진 못해 링크를 걸어둡니다. <a href=http://www.spacesimulator.net/tut4_3dsloader.html target=_blank>http://www.spacesimulator.net/tut4_3dsloader.html</a>

최기수님의 댓글

전체 54 건 - 1 페이지
2007.09
10

[App 개발] OS X 하위버전과 호환되게 만들려면 어떻게 해야 되나요?

OS X 타이거 만이 아닌 팬더, 재규어 등 그 이전의 mac os 와 호환되게 빌드하려면 어떻게 해야 되나요 그냥 빌드만 하면 되는줄 알았는데 동성님이 10.3에서 실행이 안된다 하드라구요. [UB로도...]

2007.08
16

[App 개발] 텍스트 입력을 받는 NSTextField 에서요...

블록 선택이 안 되고 오직 키보드 입력만 되게 하도록 만들려면 어떻게 해야 되나요 isSelectable 메소드를 사용하면 아예 입력이 안 되고.... 그리고 키보드 입력을 받을 때마다 액션을 내게 하려면 어떻게 해야 되지요

2007.08
07

[App 개발] 자동으로 운영체제 키보드 레이아웃을 바꾸는 법에 관해서...

제가 제 개인적인 필요 때문에 타자 연습 프로그램을 만들고 있는데요. 프로그램에서 한글이나 영어 언어를 선택하고 연습 할 때 그 때마다 운영체제의 키보드 레이아웃도 한글이나 영어로 맞춰줘야 되서 불편한데요. 프로그램에서 언…

2007.07
29

[App 개발] Chapter 7의 8쪽에서의 질문....(Cocoa Programming for Mac OS X 2/E)

- (void)insertObject:(Person *)p inEmployeesAtIndex:(int)index { // Add the inverse of this operation to the undo stack NSUndo…

2007.07
16

[App 개발] helper object 에 관해서...

제가 코코아 책 보며 Helper Object 를 공부하는 중인데 아무리 생각해봐도 도무지 무엇인지 잘 이해가 되지 않습니다. 미숙한 번역실력 때문인듯.. 아무튼 제가 생각하는 helper object 는 클래스를 확장할 때 사용하는 객…

2007.06
17

[App 개발] Cocoa 에 대한 질문..

코코아 책(정확히는 pdf...)을 열심히 보고 있는데.. 정확히 이해를 했는지 못했는지 몰라서.. 질문들을 올리겠습니다. 1. NSMutableArray *array; …

2007.04
28

[App 개발] Dev C++에서 GLUT사용하는법을....

Visual Studio 쓰자니 다운하긴 좀 그렇고.. Express 는 아주 많이 부족하고... 그래서 Dev C++ 를 다운하려고 하는데요. 도대체 이걸로 GLUT프로그래밍 하는 법을 모르겠네요... 윈도우 어플로 GL 프로그래밍하는…

2006.12
28

[App 개발] Xcode 에서 디버그 모드 ... 릴리즈 모드...

비주얼 스투디오에서는 빌드 아이콘 옆에 디버그 모드 릴리즈 모드 선택할 수 있어서 편했는데 Xcode 는 어떻게 하나요 오픈지엘 공부하면서 제가 만든 프로젝트들은 Build/Debug 디덱터리에 실행파일이 생기는데 책…

2006.08
27

열람중 [App 개발] OpenGL 질문....

1. 임플리먼테이션이 머죠 2. 소프트웨어와 하드웨어의 차이 3. 파이프라인이 무엇이죠 4. 파이프라인의 구조 부탁드립니다

2007.09
10

[App 개발] OS X 하위버전과 호환되게 만들려면 어떻게 해야 되나요?

OS X 타이거 만이 아닌 팬더, 재규어 등 그 이전의 mac os 와 호환되게 빌드하려면 어떻게 해야 되나요 그냥 빌드만 하면 되는줄 알았는데 동성님이 10.3에서 실행이 안된다 하드라구요. [UB로도...]

2007.08
16

[App 개발] 텍스트 입력을 받는 NSTextField 에서요...

블록 선택이 안 되고 오직 키보드 입력만 되게 하도록 만들려면 어떻게 해야 되나요 isSelectable 메소드를 사용하면 아예 입력이 안 되고.... 그리고 키보드 입력을 받을 때마다 액션을 내게 하려면 어떻게 해야 되지요

2007.08
07

[App 개발] 자동으로 운영체제 키보드 레이아웃을 바꾸는 법에 관해서...

제가 제 개인적인 필요 때문에 타자 연습 프로그램을 만들고 있는데요. 프로그램에서 한글이나 영어 언어를 선택하고 연습 할 때 그 때마다 운영체제의 키보드 레이아웃도 한글이나 영어로 맞춰줘야 되서 불편한데요. 프로그램에서 언…

2007.07
29

[App 개발] Chapter 7의 8쪽에서의 질문....(Cocoa Programming for Mac OS X 2/E)

- (void)insertObject:(Person *)p inEmployeesAtIndex:(int)index { // Add the inverse of this operation to the undo stack NSUndo…

2007.07
16

[App 개발] helper object 에 관해서...

제가 코코아 책 보며 Helper Object 를 공부하는 중인데 아무리 생각해봐도 도무지 무엇인지 잘 이해가 되지 않습니다. 미숙한 번역실력 때문인듯.. 아무튼 제가 생각하는 helper object 는 클래스를 확장할 때 사용하는 객…

2007.06
17

[App 개발] Cocoa 에 대한 질문..

코코아 책(정확히는 pdf...)을 열심히 보고 있는데.. 정확히 이해를 했는지 못했는지 몰라서.. 질문들을 올리겠습니다. 1. NSMutableArray *array; …

2007.04
28

[App 개발] Dev C++에서 GLUT사용하는법을....

Visual Studio 쓰자니 다운하긴 좀 그렇고.. Express 는 아주 많이 부족하고... 그래서 Dev C++ 를 다운하려고 하는데요. 도대체 이걸로 GLUT프로그래밍 하는 법을 모르겠네요... 윈도우 어플로 GL 프로그래밍하는…

2006.12
28

[App 개발] Xcode 에서 디버그 모드 ... 릴리즈 모드...

비주얼 스투디오에서는 빌드 아이콘 옆에 디버그 모드 릴리즈 모드 선택할 수 있어서 편했는데 Xcode 는 어떻게 하나요 오픈지엘 공부하면서 제가 만든 프로젝트들은 Build/Debug 디덱터리에 실행파일이 생기는데 책…

2006.08
27

[App 개발] OpenGL 질문....

1. 임플리먼테이션이 머죠 2. 소프트웨어와 하드웨어의 차이 3. 파이프라인이 무엇이죠 4. 파이프라인의 구조 부탁드립니다

2009.03
25

[App 개발] Core animation 을 Quicktime 동영상으로 저장하려 하는데요.

코어 애니메이션이 UI용 이라는건 알긴 하지만..-_-;; 윈도우나 뷰, 컨텍스트에서 렌더링되는 코어 애니메이션 효과를 퀵타임 동영상으로 저장하려고 구글형님께 물어보니 http://www.cimgf.com/2009/02/03/re…

2008.09
22

[App 개발] IMK 가 정확히 어떤 것을 하는 라이브러리인가요?

입력기를 만드는데 쓰는 거란 것쯤은 알지만 정확히 어떤 기능을 하고 동작하는지 잘 모르겠습니다. 가이드는 없고 레퍼런스로만 있어서..-_-;(샘플은 하나 있는 거 같았는데...) IME 나 TSF 랑 비슷한 건가요 현재 입…

2008.03
15

[App 개발] 코코아로 OpenGL 애니메이션에 관해서...

코코아로 OpenGL 를 애니메이션 하려고 하는데요. 애플의 문서나 슈퍼바이블이나 기타 여러 사이트나 예제에서 거의 대부분 타이머로 이를 구현하고 있더군요. 코코아에서 혹시 타이머를 사용하지 않고 계속 드로잉이 되게 하는 방법이 있나요…

2008.01
15

[App 개발] setAppleMenu: 메서드에 관해서...

NIB 파일의 도움을 받지 않고 코딩만으로 코코아 프로그램을 작성하는 중인데요.(왜냐 재밌어서.. -ㅅ-;) 메뉴 바에서 애플 로고 옆에 있는 그그 어플리케이션 이름이 쓰여진 볼드체로 된 메뉴 _________________…

2008.01
06

[App 개발] freetype2를 framework 로 만드는 중에...

헤더 디렉터리 설정하는 것 중에서요. ft2build.h 만 제외하고 모든 헤더들이 freetype freetype/config 요런 디렉터리에 있어서 빌드를 할 때 요기 있는 헤더들을 freetype2.framework/Head…

2008.01
01

[App 개발] Leopard 에서 freetype2 사용하기.....

제가 freetype2 를 한번 사용해보려고 http://freetype.sourceforge.net 에서 http://sourceforge.net/project/showfiles.phpgroup_id=3157 로 가서 freet…

2007.11
29

[App 개발] 텍스트 파일을 읽어들이는 것에 관해...

------------words.txt-------------- 감자 아이팟 스티브잡스 애플 매킨토시 레오파드 비스타 빌게이츠 ... ----------------------------------- 이렇게 된 유니코드 텍스트 파…

2007.10
03

[App 개발] 클래스 메서드들이 반환하는 메모리 공간들은 어떻게 해제되는 거에요?

책에서는 이것들은 지가 알아서 해제된다고 하는데 오토릴리즈를 사용해서 그러는건지 다른 방법인지 잘 몰라서요... Autorelease 클래스가 없어서 오토릴리즈는 아닌 듯 하고.. 답변 부탁드립니다.

2007.09
10

[App 개발] OS X 하위버전과 호환되게 만들려면 어떻게 해야 되나요?

OS X 타이거 만이 아닌 팬더, 재규어 등 그 이전의 mac os 와 호환되게 빌드하려면 어떻게 해야 되나요 그냥 빌드만 하면 되는줄 알았는데 동성님이 10.3에서 실행이 안된다 하드라구요. [UB로도...]

2007.09
05

[App 개발] 지금 코코아 프로그래밍 번역서가 예약 판매하고 있습니다!

http://kangcom.com/common/bookinfo/bookinfo.aspsku=200709040028 여기에서 번역서를 예약할수 있습니다. 코코아 프로그래밍 관심 많은 사람이라면 아주 좋은 소식일 듯 합니다. 저도 곧 예약…

2007.08
28

[App 개발] 어떤 특수한 문자의 폭을 조절하려면 어떻게 해야 되나요?

한컴타자 같은 경우는 단문 연습, 긴글 연습을 할 때 스페이스바를 누르면 나오는 문자마다 폭이 다르게 나오더라구요. 위의 사진처럼요.. 굴림체는 폭이 고정되어있어서 좀 쉬울 듯 보이는데 애플고딕(Lucida Grande 등 …

2007.08
16

[App 개발] 텍스트 입력을 받는 NSTextField 에서요...

블록 선택이 안 되고 오직 키보드 입력만 되게 하도록 만들려면 어떻게 해야 되나요 isSelectable 메소드를 사용하면 아예 입력이 안 되고.... 그리고 키보드 입력을 받을 때마다 액션을 내게 하려면 어떻게 해야 되지요

2007.08
07

[App 개발] 자동으로 운영체제 키보드 레이아웃을 바꾸는 법에 관해서...

제가 제 개인적인 필요 때문에 타자 연습 프로그램을 만들고 있는데요. 프로그램에서 한글이나 영어 언어를 선택하고 연습 할 때 그 때마다 운영체제의 키보드 레이아웃도 한글이나 영어로 맞춰줘야 되서 불편한데요. 프로그램에서 언…

2007.07
29

[App 개발] Chapter 7의 8쪽에서의 질문....(Cocoa Programming for Mac OS X 2/E)

- (void)insertObject:(Person *)p inEmployeesAtIndex:(int)index { // Add the inverse of this operation to the undo stack NSUndo…

2007.07
23

[App 개발] [RE]@""에 한글 넣었을 때 질문...

@"내용"이 유니코드 문자열을 표기할 때 사용하는 거자나요. 헌데 코코아 어플리케이션에서 NSString *acHyo = [[NSString alloc] initWithFormat: @"액효"]; 이런 식으로 직접 해 보았는데 …

2007.07
20

[App 개발] Chapter 6의 6쪽에서 copy에 대한 질문..

....... - (void)setPersonName:(NSString *)aName { aName = [aName copy]; [personName release]; personName = aName; }…

2007.07
16

[App 개발] helper object 에 관해서...

제가 코코아 책 보며 Helper Object 를 공부하는 중인데 아무리 생각해봐도 도무지 무엇인지 잘 이해가 되지 않습니다. 미숙한 번역실력 때문인듯.. 아무튼 제가 생각하는 helper object 는 클래스를 확장할 때 사용하는 객…

2007.07
15

[App 개발] Objective-C에서 메소드 중 +,-...

Objective-C에서 공부하다 보니 메소드 앞에 +가 붙은 것도 있고 -가 붙은 것이 있었는데요. + (void)method - (void)method 다 똑같은 메소드인데 두개 다 기능은 똑같은 것 같은데 어떤 …

2007.06
17

[App 개발] Cocoa 에 대한 질문..

코코아 책(정확히는 pdf...)을 열심히 보고 있는데.. 정확히 이해를 했는지 못했는지 몰라서.. 질문들을 올리겠습니다. 1. NSMutableArray *array; …

2007.04
28

[App 개발] Dev C++에서 GLUT사용하는법을....

Visual Studio 쓰자니 다운하긴 좀 그렇고.. Express 는 아주 많이 부족하고... 그래서 Dev C++ 를 다운하려고 하는데요. 도대체 이걸로 GLUT프로그래밍 하는 법을 모르겠네요... 윈도우 어플로 GL 프로그래밍하는…

2006.12
28

[App 개발] Xcode 에서 디버그 모드 ... 릴리즈 모드...

비주얼 스투디오에서는 빌드 아이콘 옆에 디버그 모드 릴리즈 모드 선택할 수 있어서 편했는데 Xcode 는 어떻게 하나요 오픈지엘 공부하면서 제가 만든 프로젝트들은 Build/Debug 디덱터리에 실행파일이 생기는데 책…

2006.08
31

[App 개발] 마이크로프로세서 질문..

1. 마이크로프로세서와 CPU 는 같은 말인가요 2. 버스란 무엇인가요[어드레스버스, 데이터 버스,컨트롤버스 같은거] 3. 64비트와 32비트의 정확한 차이.. [속도, 내부구조 등이 어떻게 다른지...]

2006.08
27

[App 개발] OpenGL 질문....

1. 임플리먼테이션이 머죠 2. 소프트웨어와 하드웨어의 차이 3. 파이프라인이 무엇이죠 4. 파이프라인의 구조 부탁드립니다

2006.08
19

[App 개발] 3번째 질문...

1. Carbon 과 Cocoa 의 기술적 차이가 있나요 2. Carbon 이 Cocoa 루틴 불러내기가 쉽지 않다고 하는게 사실 3. .m 확장자는 무엇입니까 4. Carbon 책 좀 추천해주세요 어떤걸 사서 읽어야 되는지..ㅜㅜ 5. 원서 …

2006.08
18

[App 개발] C밖에 모르는 저의 2번째 질문입니다

Carbon을 배우기로 했습니다 으음.. 잘 선택했는지는 모르겠지만 아무튼.... 질문이 있어요 1. 32비트 Carbon, 64비트 Carbon이 있는데 각각 차이점이 있는지 32비트용 64비트용을 따로 만들어야 되는지.. 2. C…

2006.08
17

[App 개발] Carbon 배우는게 좋을까요? Cocoa 배우는게 좋을까요?

걍 궁금해서..ㅎㅎ[퍽!] 매킨토시 API 도 배워둬야 할 필요가 있을거 같은데 두개중 어느걸 배워야 이득이 될지..ㅜㅜ Carbon 은 오래된거라 하고 Cocoa 는 오브젝C 가 먼지 몰라서 그러고..... 질문도 …

2006.06
24

[App 개발] 프로젝트를 만들때에 질문.... 질문이 좀 많음

음.. 좀 많이 질문좀 할게요 1. 완전히 빈 프로젝트를 만들수 없는건가요 프로젝트를 만드니 main.c 또는 다른거, 실행파일로 추정되는 거, ~~~.1이 파일이 나온는군요. 2. ~~~.1 은 머죠 3. Opengl 프로젝트는…

2007.09
10

[기타질문] OS X 하위버전과 호환되게 만들려면 어떻게 해야 되나요?

OS X 타이거 만이 아닌 팬더, 재규어 등 그 이전의 mac os 와 호환되게 빌드하려면 어떻게 해야 되나요 그냥 빌드만 하면 되는줄 알았는데 동성님이 10.3에서 실행이 안된다 하드라구요. [UB로도...]

2007.08
16

[기타질문] 텍스트 입력을 받는 NSTextField 에서요...

블록 선택이 안 되고 오직 키보드 입력만 되게 하도록 만들려면 어떻게 해야 되나요 isSelectable 메소드를 사용하면 아예 입력이 안 되고.... 그리고 키보드 입력을 받을 때마다 액션을 내게 하려면 어떻게 해야 되지요

2007.08
07

[기타질문] 자동으로 운영체제 키보드 레이아웃을 바꾸는 법에 관해서...

제가 제 개인적인 필요 때문에 타자 연습 프로그램을 만들고 있는데요. 프로그램에서 한글이나 영어 언어를 선택하고 연습 할 때 그 때마다 운영체제의 키보드 레이아웃도 한글이나 영어로 맞춰줘야 되서 불편한데요. 프로그램에서 언…

2007.07
29

[기타질문] Chapter 7의 8쪽에서의 질문....(Cocoa Programming for Mac OS X 2/E)

- (void)insertObject:(Person *)p inEmployeesAtIndex:(int)index { // Add the inverse of this operation to the undo stack NSUndo…

2007.07
16

[기타질문] helper object 에 관해서...

제가 코코아 책 보며 Helper Object 를 공부하는 중인데 아무리 생각해봐도 도무지 무엇인지 잘 이해가 되지 않습니다. 미숙한 번역실력 때문인듯.. 아무튼 제가 생각하는 helper object 는 클래스를 확장할 때 사용하는 객…