51

[OpenGL Tip] Transform 적용이 안된다!!! 할 때 생각해 볼 것;

음 glMatrixMode(GL_MODELVIEW);glLoadIdentity(); if ( (timeGetTime() - time) >= 1000 ){time = 0;glTranslatef(0.0f, rand()%100, 0.0f);glScalef(m_pMemGraph->GetWidthScale(), m_pMemGraph->GetHeightScale(), 1.f);glTranslatef(0.0f, 0.f, 0.0f);} m_pMemGraph->Draw(2.f, 2.f); 이런 코드가 있었다. 하지만 저 빨간 범위 안에서는 파란 것에게 적용이 되지 않는다. 같은 범위에서만 해야 한다!!!! 내부적으로 뭔가..호출 스택을 흠.. 여튼 자세힌 몰겟지만 그렇다.

2014.02.25

[펌] 그래픽 카드의 선택 / 보는법 - 연결단자 : 3편 - 디지털 : DVI, HDMI, DisplayPort

출처 : http://smsinfo.tistory.com/367 지난 포스트의 아날로그(Analog) 단자들에 대한 내용에 이어서 디지털 단자입니다. 사실 이 포스트의 내용에 들어가게될 HDMI와 Display-Port에 관한 내용을 설명하기 위해서 앞의 2개의 포스트가 작성된것입니다. ^^ 스마트폰(Smart-Phone)에게 밀린 감이 많지만 PC는 디지털 기기의 대명사입니다. PC에서 나오는 원래의 영상 정보는 디지털이지만 그래픽 카드에서 이를 아날로그 형태로 바꿔서 모니터에 전송하게 됩니다. 이유는... 과거의 CTR 모니터의 인터페이스가 아날로그 이기 때문이죠. ^^ 그러나 요근래 PC모니터의 대부분을 차지하는 LCD모니터의 경우 패널 자체의 인터페이스가 디지털 방식이기 때문에 이전과 같은 방식을..

2014.02.23

[Memory] 클래스 상속 기반의 메모리 풀을 이용한 프로파일링

흠흠... 메모리풀 구현한 것을 적용한 경험을 적은 글. 클래스 내부에 아무것도 존재하지 않을 경우, c++ 표준에서는 new로 할당할 메모리 크기에 0이 들어왔다면(클래스 내부에 어떤 데이터도 가지고 있지 않다면) 할당할 메모리를 1로 변경해준다고 한다. 1을 할당하고, 내가 만들 메모리 풀 자체에서는 메모리 할당 시 8바이트의 메타데이터를 저장하기 위한 공간을 확보한다. 그래서 총 9바이트가 할당되었다.(사실 allocated인데..오타) 이것은 가상함수를 넣었을 때이다. 가상함수 테이블을 생성하기 위한 메모리를 4바이트 할당받는 것이다. 이를 생각해 보면 정말로 데이터를 가지고 있지 않은 클래스는 메모리가 필요하지 않나보다(정확히 가상함수 테이블 크기인 것을 보면).여하튼 메모리 풀은 8바이트를 추..

2014.02.01

[팁][GPG2 - 1.7][GameObject 속성 관리 팁] 범용 C++ 멤버 접근을 위한 속성 클래스

프로젝트마다 매번 동일한 코드를 다시 작성하지 않을 수 있도록 재사용이 가능한 핵심 편집기 모듈을 개발할 수 있어야 한다.하지만 게임마다 서로 다른 객체들이 존재한다는 점을 생각해 보면 이는 어려운 문제다. 이를 해결하기 위해 클래스의 내부에 대한 접근을 가능하게 하는 범용 인터페이스를 제공해야 한다....등이 GPG에 나온 내용이다. 여기서 제시하는 관리법은 다음과 같다. 인터페이스는 총 2개의 클래스로 구성된다. 이는 Property, PropertySet 클래스이다. Property는 여러가지 자료형들에 대한 포인터들의 공용체(C에선 union) 와 데이터 형 식별을 위한 열거형(enum) 그리고 속성의 이름을 담는 string 객체 하나를 가진다. class Property{protected:un..

2014.01.10
반응형