프로그래밍/OpenGL(6)
-
Procedural Planet Generate(2) - Normal 생성
Vertex Normal 생성 - 만들어진 지형의 정점을 참조하여 노말을 생성한다. 노이즈 함수를 이용해 생성된 지형을 렌더링 해보면... 와이어 프레임으로 렌더링 했을 때와는 달리 지형의 굴곡이나 높이 정보를 파악하기 어렵습니다.물체의 형태는 음영과 그림자로 표현이 되는데, 둘 다 존재하지 않기 때문 입니다. 이 두 가지는 모두 빛과 관련이 되며, 이를 계산하기 위해서는 노말 정보가 필요합니다. 정점의 노말 정보를 구하기 위해서는 1. 현재 정점의 상, 하, 좌, 우 정점의 위치 정보를 가져온다.2. 정점 정보를 참조하여 만들어지는 4개의 삼각 메쉬의 Face Normal을 구한다. - FaceNormal은 삼각메쉬의 두 벡터를 외적하여 구합니다. 3. 만들어진 Face Normal을 가산하여 평균을 ..
2018.06.12 -
Procedural Planet Generate(1) - 지형 생성
절차적 행성 생성 - 간단하게 행성을 만드는 것을 목표로 한다. 1. 우선 Level Of Detail 이 적용된 Square 6개를 생성하여 큐브로 조립합니다. - 큐브를 사용하는 이유는 Culling 하기 좋기 때문입니다. - Level Of Detail Square 바로가기 [결과물] 2. Cube To Sphere - Cube를 Sphere로 만들어 줍니다. - 변환코드는 GLSL Shader에 작성하여 시뮬레이션 하였습니다. (1) 만드는 방법 1) 아래 링크의 공식을 이용한다. - Cube를 Sphere로 만드는 공식 - 주의 할 점은 Size가 -1 ~ 1 이어야 합니다. 2) 원의 특성을 이용하기 - Sphere 변환은 원의 특성을 이용하면 됩니다. - 원은 모든 정점이 중심점에서 동일한 ..
2018.05.23 -
[MFC_OpenGL] 개발 환경 구성
1. 목적 mfc를 사용하여 게임 개발환경을 구축한다. [mfc를 사용하여 게임 개발환경 구현하기] 간단한 게임 소스들을 보면 대부분 API를 통해 구현되어 있다.아무래도 가볍기 때문에... 하지만 MFC도 구성하기에 따라서 어느정도 가벼운 환경으로 변경이 가능하다. 우선 MFC의 구성을 살펴보면... 크게 APP, MainFrame, View, DOC 클래스로 구성된다.이 중 App, MainFrame 클래스만 살려두고 나머지 필요없는 View, DOC와 기타 몇 가지를 제거하여 간소화 하여보자.수정 및 변경에 관한 자세한 내용은 직접 검색해주세요. 가. 프로젝트 생성 - 비쥬얼 스튜디오에서 MFC 응용프로그램을 생성합니다. 나. Doc, View 파일 제거 - 전 파일 삭제 후 관리하기 편하게 헤더와..
2014.10.15 -
error LNK2026
error LNK2026: module unsafe for SAFESEH image. 구 버전에서 작성된 프로젝트를 신 버전으로 가지고 왔을때 가끔 보이는 에러. 해결방법(현재 사용중인 버전 studio 2012)project property - Linker - commandLine - 하단의 Additional option 아래 텍스트 박스에 /safeseh:no 삽입
2013.03.12 -
다이얼로그에 OpenGl 구성 시 버튼 깜빡임 문제
다이얼로그에 오픈지엘 환경을 구성하면 뷰포트 위의 컨트롤 들이 전부 깜빡 거리는 현상이 생긴다. 몇 시간 동안 삽질 끝에...다이얼로그 properties 에서 clip children 속성 값을 true 로 변경하면 간단하게 해결 된다는 사실을 알게 되었다. 하루 왠 종일 더블버퍼링이니 invalidate를 사용하며 테스트 했는데 저거 하나로 해결 되다니.. clip children은다이얼로그 창이 새롭게 그려질때 컨트롤 들을 제외하고 그리는 것에 대한 설정이다. 망할........!
2012.10.26 -
OpenGL Radeon 4850 문제
간만에 OpenGL을 잡게 되었다.예전에 정말 열심히 공부했던 언어라 금방 손에 익을거라 생각했다.하지만 왠걸...기초 셋팅부터 막혔다.아무리 해도 셋팅 후 종료시 에러가 뜬다.컴파일시 아무런 문제도 없었고 실행도 정상.유독 종료시에만 에러가 뜬다.그렇다고 소스에 문제가 있는 것도 아니었다.종료시 자원을 릴리즈 안해줬나 했지만 그렇지도 않았으며 설사 그렇다 하더라도 이런 에러가 뜰리 없다. 그 후 결국 에러 잡는 것을 포기하고 가지고 있던 예제프로그램을 돌려 보기로 결정........모든 예제 프로그램이 종료시 전부 에러를 띄운다.분명 개발환경의 문제.개발 툴의 문제인가 싶어 버전별로 전부 설치 해가며 테스트 했지만 오류는 잡지 못했다.이걸로 하루를 버렸다 ㅠㅠㅠ 다음 날 노트북에 스튜디오를 설치한 후 ..
2012.10.26