[기고칼럼] 게임 엔진 전쟁으로 살펴보는 게임 개발의 미래이득우 대표(desk@inven.co.kr) 이득우 대표님은 유니티 테크놀로지스의 한국 지사에서 이사로 근무하였고, '유니티4 게임 개발의 정석'을 집필한 바 있습니다. 현재는 스킬트리랩 교육 센터에서 게임 개발에 관련된 교육 및 최신 기술 세미나와 함께 인디 게임 개발 행사를 진행하고 있습니다. 스킬트리랩은 동아닷컴 평생교육 아카데미에서 운영하는 지식공유 플랫폼으로, 개발자들의 역량 개발 지원 및 부트 캠프를 통한 프로젝트를 지원하고 있습니다. 또한, 결과물 마케팅에도 관여하여 보다 많은 부가가치를 만들어 내도록 노력하고 있습니다. * 외부 필진의 기고 내용은 본지의 편집방향과 일치하지 않을 수도 있습니다. ■ 이득우 대표 기고칼럼 모음 - [1..
[기고칼럼] 인간이 만들어지기까지... ‘언리얼’을 ‘리얼’하게 만드는 기술 (2부)이득우 대표(desk@inven.co.kr) 이득우 대표님은 유니티 테크놀로지스의 한국 지사에서 이사로 근무하였고, '유니티4 게임 개발의 정석'을 집필한 바 있습니다. 현재는 스킬트리랩 교육 센터에서 게임 개발에 관련된 교육 및 최신 기술 세미나와 함께 인디 게임 개발 행사를 진행하고 있습니다. 스킬트리랩은 동아닷컴 평생교육 아카데미에서 운영하는 지식공유 플랫폼으로, 개발자들의 역량 개발 지원 및 부트 캠프를 통한 프로젝트를 지원하고 있습니다. 또한, 결과물 마케팅에도 관여하여 보다 많은 부가가치를 만들어 내도록 노력하고 있습니다. * 외부 필진의 기고 내용은 본지의 편집방향과 일치하지 않을 수도 있습니다. ■ 이득우 ..
[기고칼럼] 게임엔진, 빛을 정복하라! '언리얼'을 '리얼'하게 만드는 기술이득우 대표(desk@inven.co.kr) 이득우 대표님은 유니티 테크놀로지스의 한국 지사에서 이사로 근무하였고, '유니티4 게임 개발의 정석'을 집필한 바 있습니다. 현재는 스킬트리랩 교육 센터에서 게임 개발에 관련된 교육 및 최신 기술 세미나와 함께 인디 게임 개발 행사를 진행하고 있습니다. 스킬트리랩은 동아닷컴 평생교육 아카데미에서 운영하는 지식공유 플랫폼으로, 개발자들의 역량 개발 지원 및 부트 캠프를 통한 프로젝트를 지원하고 있습니다. 또한, 결과물 마케팅에도 관여하여 보다 많은 부가가치를 만들어 내도록 노력하고 있습니다. * 외부 필진의 기고 내용은 본지의 편집방향과 일치하지 않을 수도 있습니다. ■ 이득우 대표 기고..
[기고칼럼] 아티스트를 유혹하라, 언리얼 엔진 4와 유니티 5의 물리 기반 셰이딩 기술 비교이득우 대표(desk@inven.co.kr) 이득우 대표님은 유니티 테크놀로지스의 한국 지사에서 이사로 근무하였고, '유니티4 게임 개발의 정석'을 집필한 바 있습니다. 현재는 스킬트리랩 교육 센터에서 게임 개발에 관련된 교육 및 최신 기술 세미나와 함께 인디 게임 개발 행사를 진행하고 있습니다. 스킬트리랩은 동아닷컴 평생교육 아카데미에서 운영하는 지식공유 플랫폼으로, 개발자들의 역량 개발 지원 및 부트 캠프를 통한 프로젝트를 지원하고 있습니다. 또한, 결과물 마케팅에도 관여하여 보다 많은 부가가치를 만들어 내도록 노력하고 있습니다. * 외부 필진의 기고 내용은 본지의 편집방향과 일치하지 않을 수도 있습니다. ■ ..
[기고칼럼] 게임 엔진 전쟁의 서막, 언리얼 엔진 4와 유니티 엔진이득우 대표(desk@inven.co.kr) 이득우 대표님은 유니티 테크놀로지스의 한국 지사에서 이사로 근무하였고, '유니티4 게임 개발의 정석'을 집필한 바 있습니다. 현재는 스킬트리랩 교육 센터에서 게임 개발에 관련된 교육 및 최신 기술 세미나와 함께 인디 게임 개발 행사를 진행하고 있습니다. 스킬트리랩은 동아닷컴 평생교육 아카데미에서 운영하는 지식공유 플랫폼으로, 개발자들의 역량 개발 지원 및 부트 캠프를 통한 프로젝트를 지원하고 있습니다. 또한, 결과물 마케팅에도 관여하여 보다 많은 부가가치를 만들어 내도록 노력하고 있습니다. * 외부 필진의 기고 내용은 본지의 편집방향과 일치하지 않을 수도 있습니다. ■ 이득우 대표 기고칼럼 모음..
#include #include #include using namespace std; class cMagicSquare{public:cMagicSquare(int _dim);~cMagicSquare(); private:int**mP;intmDim; public:voidsetDim(int _dim);voidsetMagic(); intgetDim(); voidshowMagic();}; cMagicSquare::cMagicSquare(int _dim){mDim= _dim; mP= new int*[_dim];for( int i = 0; i < _dim; i++ ){mP[i]= new int[_dim];}} void cMagicSquare::setDim(int _dim){mDim= _dim;} void cMagi..
--void* malloc(size_t _Size);-- int* pA = 0; pA = (int*)malloc(sizeof(int));=> pA에 int의 size 만큼 동적 할당. pA = (int*)malloc(sizeof(int)*n);=> pA에 int의 size만큼 n개 동적 할당. ( pA[n] ) --new-- int* A = 0; pA = new int;=> pA에 int의 size만큼 동적 할당. pA = new int[n];=> pA에 int의 size만큼 n개 동적 할당. ( pA[n] ) int** pA; pA = new int*;=> pA[0];pA[0] = new int;=> pA[0][0]; pA = new int*[n];=> pA[n];pA[n] = new int[i];=>..
정적 멤버변수 & 정적 멤버함수-> 동일한 클래스로부터 생성되는 객체에 의해 공유되는 변수: Color 클레스의 정적 멤버변수 A를, Color 클레스로 생성된 모든 객체에서 공유하여 사용.-> static 키워드를 이용하여 지정-> 객체의 생성 없이도 사용 가능-> static 멤버변수가 별도의 static 영역에 저장되기 때문 정적 멤버변수 class Color { private: static int s_count; }; int Color::s_count = 0; int main() { // main 프로그램 영역 } -> 객체가 만들어질 때 생성되는 것이 아님.=> 프로그램 내부의 적절한 위치에서 위와같이 전역 변수와 동일한 방법으로 초기화.-> 생성 및 사용 시 범위 연산자 ::(Scope Res..
객체 포인터-> 1. 파생 클래스의 객체를 가리키는 기본 클래스의 객체 포인터를 사용할 수 있음.-> 2. 기본 클래스의 객체를 가리키는 파생 클래스의 객체 포인터는 사용할 수 없음. class Animal { public: void breathe(); }; class Fish : public Animal { public: void breathe(); }; Animal* a = new Fish; // 1. 가능 Fish* f = new Animal; // 2. 불가능 -> 3. a->breathe();를 호출하면, class Animal(기본클래스)의 breathe() 함수가 호출 됨. 가상 함수(virtual function)-> 상속 관계에 있는 클래스를 객체 포인터 형태로 사용할 때 의미가 있음.-..