전체 354

MVC (Model-View-Controller)

출처 : http://www.willslow.com/?p=320----- MVC (Model-View-Controller) 프로그래밍을 할적에 사용되는 디자인패턴이다. Objective-C 외에도 java나 php 등에도 이미 사용되어왔던 모델패턴이며,이 패턴을 잘 지켜 프로그래밍을 하여 궁극적으로 확장 및 유지보수가 편하도록 하는데 목적이 있다.[ MVC 모델 기본구조 ]Model ↔ Controller ↔ ViewView : 데이터(객체)의 입력과 출력을 담당한다. view는 필요에 따라 model 로 부터 객체의 상태를 요청할 수 있고 응답받은 상태에 따라 다른 출력 형식을 가지고 있으며 controller 에게 전달 시 상태정보를 같이 보낼 수 있다.일반적으로 사용자가 보게되는 화면 그 자체의 의..

Design Pattern 2012.12.10

[디자인 패턴] MVC 모델과 Observer 패턴

출처 : http://www.hanb.co.kr/network/view.html?bi_id=916-----------------저자: 김대곤 이 패턴을 설명하기 전에 MVC 모델을 먼저 살펴보자. MVC 모델은 조금은 거창하게 알려져 있는 듯하다. 거의 그런 경우가 드물지만, 몇 년 전 필자가 본 누군가의 이력서에는 자신의 강점을 프로젝트에 MVC모델을 적용한다는 것이라고 적혀 있는 걸 보았다. 필자가 보기에 MVC 모델을 적용한다는 것은 달리기를 한다는 말과 같아 보인다. 필자도 달리기를 한다. 그러나 잘 하지는 못한다. 국민학교(초등학교)때부터 체육은 언제나 주저하게 되는 분야였다. 달리기를 잘하는 것과 달리기를 하는 것은 다른 문제이다. MVC 모델에서 MVC는 각각 Model, View, Cont..

Design Pattern 2012.12.07

[Unity3D] Draw Call 과 Batching

출처 : http://www.unity3dacademy.com/archives1_2.php?bbs_data=aWR4PTkxJnN0YXJ0UGFnZT0xMCZsaXN0Tm89NiZ0YWJsZT1jc19iYnNfZGF0YSZjb2RlPXBkczImc2VhcmNoX2l0ZW09JnNlYXJjaF9vcmRlcj0=%7C%7C&bgu=view&pageNum=&categ=&PHPSESSID=e88c2b56e877c6091d6eaa0b9e92c603 ---------- Draw Call 과 Batching 간단한 개념 정리입니다. 예전에도 있었는지는 모르겠는데 유니티 문서에 잘 정리 되있네요 (http://unity3d.com/support/documentation/Manual/iphone-DrawCall-Batch..

게임/Unity3D 2012.12.06

내가 생각하는 유니티 엔진

여기다가 계속 수정해 나가야겠다.----------- - 싸다.- 멀티 플랫폼 지원.- 대체로 간단하다.- 쉐이더나 물리연산, 등 지원해주는 게 많다.- UI는 흠.. 정리만 잘 해 놓는다면 문제될 건 없다.- 디버그 기능이 있긴 한데.... 사용하긴 힘들고 디버그 로그를 작성해서 판단해야 한다.- 스크립트들이 실행(?)되는 속도가 느린지 빠른지 가늠이 안 된다. - 소멸자를 못 쓴다.. C#이라 소멸자가 있긴 한데, 소멸자에서 오브젝트 메모리 해제가 불가능했던 기억이 있다.그래서 나는 오브젝트 매니저 같은 걸 만들어서 따로 메모리 관리를 해 주었다..- 메모리 누수가 은근 있다. 그래서 그..즉시 가비지 컬렉터를 불러주는 함수를 씬 사이에 넣어주어야 한다.- 클래스 상속이랑 UI 관련해서 뭔가가 접근이..

게임/Unity3D 2012.12.06

[Unity3D] 스펙

출처 유니티 공식 홈페이지: http://korea.unity3d.com/content/content.php?cont=license_info-----------------------------------------------------------------Physics오디오 (3D 위치 및 클래식 스테레오)오디오 필터 비디오 재생과 스트리밍 1.2 2 RakNet을 통한 다중사용자 네트워킹에셋번들 완전 스트리밍 지난해 총 매출액이 US $100,000가 넘는 회사나 법인체에 라이센스 가능 원 클릭 배치웹 브라우저 통합 맞춤 스플래시 페이지 빌드 사이즈 축소 최적화된 그래픽셰이더 (내장 맞춤형)라이트매핑라이트매핑과 글로벌 일루미네이션 동적 배칭정적 배칭 지형 (광활하고 밀집하여 덮인 전경)질감 효과 풀 스..

게임/Unity3D 2012.12.05

프밍할때 3D 좌표계에 대해..!!

공간은 로컬, 월드, 뷰, 프로젝션 공간(좌표계)이 있다.[로컬->월드] 변환행렬, [월드->뷰] 변환행렬, [뷰->프로젝션] 변환행렬들은 각각 x,y,z축의 노멀벡터들로 이루어져 있을 것이다. 그럼 그 벡터들은 어떤 좌표계에서 표현되고 있을까? 하는 생각을 하게 되었다. (뜬금없지만..머리가 나빠서 이런것까지 생각을 해야 하는 나..)즉.., 로컬, 월드, 뷰, 프로젝션 좌표계의 x,y,z축 벡터들은 어떤 특정한, 같은 공간에서 표현되고 있다는 것이다. 그래야 그 방향이 의미를 가질 수 있을 테니까...!!

Mathmatics 2012.12.05

[HLSL] Normal Mapping의 이해

노멀매핑 쉐이더를 공부하면서 가장 중요한 것은 접선공간에 관련된 것이라고 생각하고 있다.노멀벡터의 xyz값이 텍스쳐의 rgb값 변수에 저장되어 있다. 그냥 디퓨즈 매핑이나 스페큘러 매핑 쉐이더에서는 정반사광과 난반사광을 정점쉐이더에서 구현했는데, 노멀 매핑에서는 빛 계산을 픽셀 쉐이더에서 하게 된다. 노멀 맵에서의 현재 UV좌표에 따른 픽셀 데이터가 바로 노멀 벡터이다. 법선 맵의 법선벡터들은 표면의 바깥쪽 방향을 법선의 +Z로 두고 만들어져 있다. 그리고 각 표면마다 각각 다른 공간에 있다.이것을 '접선공간' 또는 '표면(서피스)공간' 이라 하고, 여기서는 접선 공간이라 하겠다. 표면이란 폴리곤이라고 생각하면 된다.모든 오브젝트들은 따로 설정을 해주지 않는 이상 기본적으로 로컬 공간에 있다. 접선공간 ..

게임/Shader 2012.12.04

Easing Equations

알아두면 유용하다. 이 방정식을 게임에 적용시키면 움직임 퀄이 괜찮게 나온다.http://gizma.com/easing/ // simple linear tweening - no easing, no accelerationMath.linearTween = function (t, b, c, d) { return c*t/d + b; }; // quadratic easing in - accelerating from zero velocityMath.easeInQuad = function (t, b, c, d) { t /= d; return c*t*t + b; }; // quadratic easing out - decelerating to zero velocityMath.easeOutQuad = function (t..

Mathmatics 2012.11.28
반응형