게임 제작과정에 대해 공부했다면

 

게임에 관심이 있다하면 모를수가 없는 게임 엔진들이 있죠

 

그중에서도 고퀄리티를 자랑하는 언리얼 엔진!!

 

내가 언리얼엔진을 이용해서 게임을 만들고 싶다면??

 

/

 

그렇다면 여기 ↓↓ 봐주세요

 

언리얼을 전문적으로 가르쳐주는 학원이 있습니다.!!

 

부산언리얼학원에 대해서 알려드릴게요~~

(부산언리얼학원 강의장)

 

그림으로 보이는 곳이 언리얼을 전문적으로 배울 수 있는

 

부산언리얼학원입니다.!!!

 

깔끔한 강의장과 심플한 인테리어가 눈에 확 들어오네요.

음 기분 좋고~

 

제대로 한번 알아보자고!!

 

먼저 다방면으로 알면 좋으니 먼저 게임엔진에 대해서 알아볼게요

 

/

 

게임엔진이란?

 

비디오 게임의 개발에 기반이 되는 구성 요소들을 가진 필수 구성 요소들인

 

그래픽 엔진, 물리 엔진, 오디오 엔진, UI 시스템, 게임플레이 프레임워크 등이 잘

 

 융합된 상태의 소스 코드와 그 기능들을 디자이너들이 사용 가능한 툴을 겸비한

 

게임 개발 소프트웨어를 일컫는 말이다.

 

ex) Unreal, Unity, CoCos2d, 크라이 등이 있다.

 

하지만 예전엔 각 회사마다 프로그래머가 엔진을 개발해서 사용했기때문에

 

무수히 많은 엔진들이 있다. 앞으로 소개드릴 언리얼엔진도 마찬가지이다.

 

(출처 : 언리얼 엔진 홈페이지)

 

언리얼 엔진은 뭘까요??

 

미국의 에픽 게임스에서 파라곤이라는 게임을 만들기 위해 개발한 3D 게임 엔진이다.

 

정형화 되어있고 잘만들어 회사에서 쓰는 게임엔진을 판매하기 시작했고

 

그게 현재의 언리얼 회사로 알려진 에픽 게임스라고 보면 된다.

 

강력한 그래픽 성능과 편리한 인터페이스(한국사람들에겐 잘모르겠음) 등을 장점으로

 

약 20여년 전부터 지속적으로 버전업되며 게임 엔진 산업을 주도하고 있다.

 

한국의 대표게임으론 리니지2 그리고 모바일에선 리니지2 : 레볼루션 등이 있다.

 

(출처 : 언리얼 홈페이지)

 

최근 언리얼엔진이 무료로 풀렸습니다.!!

(단 게임 출시 후 일정 이상 수익을 낸다면 로열티를 내야함)

 

언리얼엔진은 오랜 역사를 자랑하듯 전체적으로 체계화가 되어있습니다.

 

버그발생도가 타 프로그램보다 현저히 낮고 청렴한 엔진으로 표현 할 수 있겠네요.

 

하드웨어에 직접 접근하는 접근성 좋은 그래픽 라이브러리 OpenGL을 사용하고

 

언어는 C++ 스크립트를 주로 사용합니다.

 

*C++ 스크립트와 C++은 다릅니다.(Java 스크립트, Java 역시 다릅니다.)

 

 

 

한국에 확실하게 풀린지 얼마 되지않아 일반인이 소스를 구하는 게 조금 힘듭니다.

 

구글링을 통해 어찌저찌 구해서 사용한다 하더라도 응용력이 부족한게 사실입니다.

 

그렇다보니 실제 게임개발, 혹은 사용해본 전문가에게 배우는 것이 효과적이죠.

 

언리얼자체가 외국 개발자에 맞춘 인터페이스가 나왔기 때문에

 

다른 엔진사용하시던 분들이 당황하는 경우가 꽤나 많습니다.

 

(부산언리얼학원)

 

부산언리얼학원에서는 가장 기초가되는 C언어부터 C++까지 배우고 난 후

 

언리얼 엔진으로 게임까지 제작해보는 과정을 통해 전문가를 육성합니다.

 

게임제작이라는 것이 혼자 만드는 것이 아니기 때문에  학원 수강생들끼리 모여

 

 팀을 꾸려서 만들어 보는 것도 정말 좋은 방법중 하나입니다.

 

게임을 만드는 것만으로 끝나면 너무 아쉽겠죠??

 

부산언리얼학원에서는 실무자 그리고 취업을원하는 분들에겐 취업지원시스템을 통해

 

가지고 있는 재능을 게임회사에서도 발휘 할 수 있도록 취업연계까지 도와줍니다.

 

/

 

이젠 더 이상 지체하지마세요. 꿈만 꾸고 포기하기엔 너무 젊습니다.

 

좀더 넓은 시야를 가지고 바로 지금 도전하세요!!

위 그림을 클릭하면 해당페이지로 이동합니다.

*전국에 지점이 있습니다

 

가정의 달 할인 / 온라인 상담 / 무료상담신청 등 다양한 혜택이 있습니다.

 

에스비에스아카데미게임학원/제4293호/직업기술-컴퓨터 게임/수강료홈페이지참조


WRITTEN BY
커피김스타
게임 기획, 개발, 프로그래밍, 그래픽, zbrush, 원화, 캐릭터 등등 다양한 정보공유

,

게임프로그래머

 

프로그래밍을 통해 맵 디자인, 캐릭터 디자인, 사운드, 각종 시스템 등을 뒤섞어,

 

게임이라는 하나의 결과물을 만드는 직군이다.

 

사실상 게임을 만드는 데 있어 가장 귀중한 인력이라고 봐도 과언이 아니다.

 

/

 

게임 프로그래머의 유형

 

게임플레이 프로그래머(Gameplay Programmer)

 

이쪽은 만능형 프로그래머 (Generalist Programmer)가 많다. 간단한 설명은

 

다른 프로그래머들은 게임 엔진 쪽으로 더 가깝고 게임플레이는 말 그대로

 

"유저들이 게임이라고 느끼는" 부분이다.

 

가장 핫한 게임 오버워치로 예를들면 플레이어의 움직임, 총기의 작동 원리 등

 

거점을 지키면 승리한다는 규칙등이 다 게임플레이다.

 

(출처 : 오버워치 홈페이지)

 

물리 엔진 프로그래머(Physics Programmer)

 

게임에 필요한 물리 계산을 빠르게, "필요한 만큼 정확하게" 하는 개발을 한다.

 

프로그래머 항목에 프로그래머들은 거창한 알고리즘 연구를 안한다고 하지만,

 

이쪽은 그런짓을 할만한 인간들이 필요하다. 유저들은 매년 상향되는 그래픽,

 

물리 엔진을 보고 싶어하고, 만족할만한 게임을 만들기 위해서 더 새로운 그래픽

 

기술들의 효율적인 계산이 필요하다.

 

그래서 이쪽은 컴공보다 물리학자, 수학자들이 더 많이 보인다.

 

그래픽 / 렌더링 프로그래머(Graphics / Rendering Programmer)

 

3D 그래픽이나 애니메이션을 빠르게 계산하고, 효율적으로 유저의 모니터로 출력하는

 

개발을 한다. 위와 비슷하게 순수한 프로그래밍보다 수학쪽 지식을 더 많이 필요로 함.

 

수학이 싫거나 자신이 없다면 가장 멀리해야 하는 분야이다.

 

개발도구 프로그래머(Tools Programmer)

 

대규모 회사가 아니면 절대 못볼 직업으로, 대부분 프로그래머가 아닌 개발자들이

 

프로그래머들의 도움이 없이 개발에 참여를 하게 해주는 도구들을 개발한다.

 

게임 디자이너들이 아주 기초적인 코딩 실력으로 게임을 완벽하게 바꿀 수 있게

 

하는게 주 목적이다. 회사 규모가 더 크면 게임이랑 전혀 관련 없는 직원, 빌드 관리

 

소프트웨어까지 만들게 된다. 어떻게 보면 '게임 개발'에서 가장 동 떨어진 직업이다.

 

네트워크 프로그래머(Network Programmer)

 

온라인 게이밍의 핵심이라고 볼 수 있다. 클라이언트와 서버와의 데이터 송수신을

 

다루고, 렉을 줄이기 위해서 최소한의 정보를 보낼 방법과, 심한렉, 서버 다운,

 

DDos 공격 등의 문제를 해결할 방법을 연구한다. 데이터 사용량을 줄이는 동시에

 

클라이언트의 시점에서 렉이 안보여야 하는 데, 잘못된 디자인은 0.1초의 렉으로도

 

유저와 유저 밖의 세상이 따로 노는 느낌을 줄 수 있다.

 

/

 

그 외에 인공지능, UI, 사운드 프로그래머가 있다.

 

/

 

이렇듯 다양한 프로그래머들이 있습니다. 하지만 기본으로 하는 C언어는 똑같습니다.

 

기초가되는 언어부터 심화과정으로 진행해 나가는 것이 좋습니다.

 

저 역시도 책으로 공부도 해봤지만 진짜.. 머리에 안들어옵니다.

 

용어들은 들어와도 이게 과연 뭘 어떡하라는거지 라는 생각이 한번씩 듭니다.

 

ex)

#include <stdio.h>

int main(void)

printf("Hello world!\n");

{

return 0;

}

가장 기본적인 C언어 프로그래밍 코드입니다.

 

이것을 외우라는 것이 아니라 이해하고 활용을 해야하는데 많은 분들이

 

그냥 달달 외우고 응용을 못한다는 것이 가장 안타깝다고 하죠.

 

완전 기초가되는 프로그래밍 언어부터

 

심화과정까지 배울 수 있고 생각을 심어주는 과정들을 진행합니다.

 

처음에 어려워 하시는 분들도 있지만 점차 시간이 지나면서

 

자연스레 익히게 되고 프로그래밍자체에 눈을 뜨게 됩니다.

 

/

 

부산게임프로그래밍학원에서는 이처럼 본인의 역량 개발 실력 향상에 집중을 하고

 

수강생들이 잘 따라올 수 있도록 도와주고 있습니다.

 

위 그림을 클릭하면 해당 페이지로 이동합니다.

 

가정의 달 행사 / 친구동반 할인 / 무료 상담 진행등 다양한 혜택이 있습니다.

 

에스비에스아카데미게임학원/제4293호/직업기술-컴퓨터 게임/수강료홈페이지참조

 

 


WRITTEN BY
커피김스타
게임 기획, 개발, 프로그래밍, 그래픽, zbrush, 원화, 캐릭터 등등 다양한 정보공유

,

본 내용은 뇌를 자극하는 C++STL 책 내용을 참조 했습니다.

 

함수 객체

 

STL에서 함수 객체는 클라이언트가 정의한 동작을 다른 구성 요소에 반영하려 할 때 사용됩니다.

 

함수 객체를 사용하면 STL 구성 요소를 더욱 유연하게 사용할 수 있습니다.

 

특히 많은 STL 알고리즘이 함수 객체, 함수, 함수 포인터 등의 함수류를 인자로 받아 알고리즘을 유연하게 동작시킵니다.

 

 

-sort(v.begin(), v.end(), less<int>()): less(< 연산)를 기준으로 정렬합니다. 오름차순 정렬입니다.

 

-sort(v.begin(), v.end(), greater<int>()): greater(> 연산)를 기준으로 정렬합니다. 내림차순 정렬입니다.

 

sort(b, e, f)는 sort(b, e)과 버전이 다른 알고리즘으로 f를 정렬 기준으로 정렬합니다.

 

sort(b, e)는 기본 정렬 기준인 less(<연산)를 기준으로 정렬합니다.

 

조금 이해가 되지 않는 부분들은 문의 주세요~~

 

SBS아카데미게임학원 내부

 

컴퓨터 언어의 기본인 C언어부터 C++ C# 까지 전부 배우면서 실제 게임도

 

직접 만들어보고 포트폴리오까지 작성해 취업지원까지 도와줍니다.

 

수강생 작품

 

이처럼 각자 원하는 분야의 게임도 만들어보고 시연회도 진행하면서 다른 수강생들은

 

어떤 작품을 만들고 또 좋아하는지 알아 볼 수 있어요

 

위 그림을 클릭하면 해당 페이지로 이동됩니다.

 

무료 상담 / 온라인 상담 / 무료 수강료 조회 등 다양한 혜택이 있습니다.

 

에스비에스아카데미게임학원/제4293호/직업기술-컴퓨터 게임/수강료홈페이지참조


WRITTEN BY
커피김스타
게임 기획, 개발, 프로그래밍, 그래픽, zbrush, 원화, 캐릭터 등등 다양한 정보공유

,

본 내용은 뇌를 자극하는 C++STL 내용을 참조했습니다.

 

알고리즘

STL은 순차열의 원소를 조사, 변경, 관리, 처리할 목적으로 알고리즘이라는 구성 요소를 제공합니다. 알고리즘은 한 쌍의 반복자([begin, end])를 필요로 하며 알고리즘 대부분은 순방향 반복자를 요구하지만, 몇몇 알고리즘은 임의 접근 반복자를 요구합니다.

 

STL 알고리즘은 같은 기능을 수행하는 여러 가지 버전으로 오버로딩되며, 약 100개로 정의 되어 있습니다. STL 알고리즘은 일곱 가지의 범주로 분류합니다.

 

ㅁ원소를 수정하지 않는 알고리즘

ㅁ원소를 수정하는 알고리즘

ㅁ제거 알고리즘

ㅁ변경 알고리즘

ㅁ정렬 알고리즘

ㅁ정렬된 범위 알고리즘

ㅁ수치 알고리즘

 

STL 알고리즘은 아주 일반적입니다. 일반적이라는 의미는 특정 컨테이너나 원소 타입에 종속적이지 않다는 뜻입니다. 예를 들어 find 알고리즘은 순방향 반복자를 요구하기 때문에ㅐ 순방향 반복자만 지원하는 컨테이너(순차열)라면 어떤 컨테이너가 와도 알고리즘을 수행할 수 있으며 컨테이너 원소가 정수, 실수, 문자열 혹은 사용자 정의 타입이어도 가능합니다.

 

 

[출력 결과]

20

100이 없음!

 

iter = find(v.begin(), v.end(), 20)은 [v.begin(), v.end())에서 20을 찾아 20 원소를 가리키는 반복자(iter)를 반환합니다. 20을 찾지 못하면 iter는 끝을 표시하는 v.end()와 같습니다.

 

 

순차열을 정렬하는 sort 알고리즘은 임의 접근 반복자를 요구하므로 vector와 deque는 sort 알고리즘을 수행할 수 있지만 다른 컨테이너는 불가능합니다. 사실 연관 컨테이너는 컨테이너만의 정렬 기준을 가지고 있기 때문에 sort 알고리즘 적용 자체가 말이 안됩니다.

v는 정렬되지만 1t는 정렬되지 않으므로 컴파일러 에러입니다.

 

(수강생 작품)

 

프로그래밍을 배우고 내가 직접 만들어보고 내가 만든 게임도 해보면서 흥미를 느끼고 또 다음게임을 구상하고 강의 종료할때 시연회도 진행하면서 뿌듯함을 많이 느낍니다.

 

많은 분들이 난 처음해보니까 또 할줄 모르니까 라며 먼저 겁을먹게 되는데 걱정할 것이 없습니다. 할줄 모르니까 배우고 처음해보니까 배우는 것입니다.

 

(출처 : sbs게임아카데미학원)

 

이제 혼자가 아닌 독학이 아닌 우리 함께 입니다.

 

위 그림을 클릭하면 해당 페이지로 이동합니다.

전국에 지점이 있습니다.

 

무료 상담 // 진로 상담 // 다양한 이벤트 혜택등이 있습니다.

 

에스비에스아카데미게임학원/제4293호/직업기술-컴퓨터 게임/수강료홈페이지참조


WRITTEN BY
커피김스타
게임 기획, 개발, 프로그래밍, 그래픽, zbrush, 원화, 캐릭터 등등 다양한 정보공유

,

본 내용은 뇌를 자극하는 C++STL 책 내용을 참고 했습니다.

 

반복자

반복자는 포인터와 비슷하게 동작합니다. 반복자는 컨테이너에 저장된 원소를 순회하고 접근하는 일반화된 방법을 제공합니다. 반복자는 컨테이너와 알고리즘이 하나로 동작하게 묶어주는 인터페이스 역할을 합니다.

 

ㅁ반복자는 컨테이너 내부의 원소(객체)를 가리키고 접근할 수 있어야 합니다

ㅁ반복자는 다음 원소로 이동하고 컨테이너의 모든 원소를 순회할 수 있어야 합니다

 

STL에서 컨테이너 원소(객체)의 집합을 순차열이라 합니다. 순차열 개념은 원소의 순서 있는 집합을 의미합니다. 순차열은 하나의 시작과 하나의 끝을 갖습니다. 여기서 박복자는 순차열의 한 원소를 가리킵니다.

 

STL의 모든 컨테이너는 자신만의 반복자를 제공합니다. 멤버 함수 begin()과 end()가 순차열의 시작과 끝을 가리키는 반복자를 반환합니다.

 

 

여기서 주의할 점은 순차열의 시작과 끝에서 끝은 실제 원소가 아닌 끝을 표시하는 원소 입니다. 이 begin과 end를 구간이라 하며, 수학에서 표기하는 방법을 사용해 반개 구간을 [begin, end]처럼 표기합니다.

 

 

-v.begin() : 컨테이너의 시작 원소를 가리키는 반복자를 반환합니다.

-v.end() : 컨테이너의 끝 표시 반복자를 반환합니다.

-++iter : 반복자를 다음 원소를 가리키도록 이동합니다.

-*iter: iter가 가리키는 원소(객체)를 반환합니다(역참조).

 

vector<int>::iterator처럼 모든 컨테이너의 반복자 클래스는 내포 클래스나 typedef 타입이며 자신만의 반복자를 가집니다.

 

반복자는 다음과 같이 다섯 범주로 나뉩니다.

ㅁ입력 반복자 : 현 위치의 원소를 한 번만 읽을 수 있는 반복자

ㅁ출력 반복자 : 현 위치의 원소를 한 번만 쓸 수 있는 반복자

ㅁ순방향 반복자 : 입력, 출력 반복자 기능에 순방향으로 이동이 가능한 재할당될 수 있는 반복자

ㅁ양방향 반복자 : 순방향 반복자 기능에 역방향으로 이동이 가능한 반복자

ㅁ임의 접근 반복자 : 양방향 반복자 기능에 +,-, +=, -=, [] 연산이 가능한 반복자

 

모든 컨테이너는 양방향 반복자 이상을 제공합니다. 배열 기반 컨테이너인 vector와 deque는 임의 접근 반복자를 제공합니다.

[출력 결과]

10

20

30

40

50

 

30

 

50

 

-iter[i]: iter+i번째 원소에 접근(역참조)합니다.

-iter + = n:iter를 n만큼 이동합니다.

-iter2 = iter - n: iter 위치에 -n한 위치의 반복자를 iter2에 대입합니다.

결과나 동작 모두 vector의 반복자와 같습니다.

 

많은분들이 프로그래밍에 대해 어렵다는 인식을 너무 많이 갖고 있습니다.

실제로 쉽진 않지만 그렇다고 너무 어렵지만도 않습니다.

어떻게 보면 재능없이 노력만으로 이뤄낼 수 있는 분야 이기도 하죠.

 

하지만 노력도 재능이라고 이야기 하는분들을 더러봤습니다.

하지만 끈기를 가지고 끊임없이 도전하면 열리는 날이 분명 다가옵니다.

 

혼자 하지 않고 실무진 강사님들과 함께 해나가기 때문에 어렵지 않다고 할 수 있죠.

 

(출처 : sbs게임아카데미학원)

 

문득 화장실을 지나다 이런말을 본적이 있습니다.

 

기쁨이 무엇인가는 원래 많은 괴로움을 참아낸 사람들만이 알고 있는 것이다.

그 밖의 사람들은 진정한 기쁨과는 닮지도 않은 단순한 쾌락을 알고 있는데 불과하다.

-힐티-

 

많은 분들은 괴로움(노력)을 하지 않고서 기쁨만 얻으려 합니다. 물론 그게 잘못된거라고 볼순 없지만 그건 단지 단순한 쾌락이지 진정한 기쁨이 아니라고 합니다.

 

위 그림을 클릭하면 해당 페이지로 이동합니다.

전국에 지점이 있습니다.

 

무료상담 // 무료 수강료 조회 // 다양한 이벤트 혜택 등이 있습니다.

 

에스비에스아카데미게임학원/제4293호/직업기술-컴퓨터 게임/수강료홈페이지참조


WRITTEN BY
커피김스타
게임 기획, 개발, 프로그래밍, 그래픽, zbrush, 원화, 캐릭터 등등 다양한 정보공유

,

본 내용은 뇌를 자극하는 C++ STL 책 내용을 참고했습니다.

 

STL을 한눈에

 

컨테이너

컨테이너는 같은 타입을 저장, 관리할 목적으로 만들어진 클래스입니다. 컨테이너는 두 가지로 나눕니다.(총 일곱 가지 컨테이너를 제공합니다.)

 

ㅁ표준 시퀀스 컨테이너 : 컨테이너 원소가 자신만의 삽입 위치(순서)를 가지는 컨테이너

ㅁ표준 연관 컨테이너 : 저장 원소가 삽입 순서와 다르게 특정 정렬 기준에 의해 자동 정렬되는 컨테이너

시퀀스 컨테이너는 vector, deque, list 세 가지가 있습니다. 연관 컨테이너는 set, multiset, map, multimap 네 가지가 있습니다. 시퀀스 컨테이너는 삽입되는 순서에 따라 원소의 위치가 결정되고 바뀌지 않습니다. 하지만, 연관 컨테이너는 삽입 순서와 상관없이 정렬 기준(디폴트 less)에 따라 원소의 위치가 결정됩니다.

 

ㅁ배열 기반 컨테이너 : 데이터 여러 개가 하나의 메모리 단위에 저장됩니다.

ㅁ노드 기반 컨테이너 : 데이터 하나를 하나의 메모리 단위에 저장합니다.

 

배열 기반 컨테이너는 vector와 deque 두 가지 입니다. 노드 기반 컨테이너는 list와 연관 컨테이너 모두 set, multiset, map, multimap 다섯 가지입니다. 이런 컨테이너 종류는 성능이나 메모리 사용, 지원 인터페이스(알고리즘, 멤버 함수) 등에 큰 차이를 보이며 컨테이너의 특징을 만들어 냅니다.

대표적인 컨테이너가 vector입니다. vector는 시퀀스 컨테이너이며 배열 기반 컨테이너입니다. 시컨스 컨테이너는 컨테이너 끝에 데이터를 추가하고 제거하기 위한 push_back()과 pop_back()멤버 함수를 가집니다. 또한, 배열 기반 컨테이너는 operator[] 연산자를 이용해 일반 배열처럼 컨테이너 원소에 접근할 수 있습니다. 모든 컨테이너는 원소의 개수를 반환하는 size() 멤버 함수를 가집니다.

vector는 시퀀스 컨테이너이므로 추가한 순서대로 출력됩니다. 또한, 배열 기반 컨테이너이므로 operator[] 연산자로 저장 원소에 접근할 수 있습니다.

다음편에서 다룰 내용은 '반복자'에 대해서 입니다.

 

(출처 : SBS게임아카데미학원)

 

많은 내용들을 혼자 공부하다보면 답답합니다.

저 역시도 그런 부분 때문에 찾아도 보고 책도 사서 공부도 해보고 해봤지만 어렵더군요.
그래서 찾다찾다보니 이런 게임 프로그래밍 역시 전문분야로써 전문학원이 있더라고요.

 

그래서 학원을 찾게 되었고 실제 배우면서 해나가고 있습니다.

기본적인 부분 부터 하나하나 배우면서 해나가니 이해가 쉽고 실력 역시 늘고 있습니다.

가장 좋은점은 스스로 생각하게 해주신다는 점입니다.

정답을 정해놓고서 가르쳐 주시는 것이 아닌 해답을 찾기 위한 소통 그리고 갖가지 방법들을 제시해주시면서 진행해나가니 막상 배울때는 막막하다가도 해결하고 나면 다시는 잊어버리지 않고 기억하는 것이 참 좋았습니다. 

 

 

위그림을 클릭하면 해당 페이지로 이동합니다.

전국에 지점이 있습니다.

 

무료 상담 / 무료 수강료조회 / 다양한 혜택이벤트 등이 있습니다.

 

에스비에스아카데미게임학원/제4293호/직업기술-컴퓨터 게임/수강료홈페이지참조

 


WRITTEN BY
커피김스타
게임 기획, 개발, 프로그래밍, 그래픽, zbrush, 원화, 캐릭터 등등 다양한 정보공유

,

본 내용은 뇌를 자극하는 C++ STL을 참고 했습니다.

 

STL이란?

표준 C++ 라이브러리의 일부분으로 standard Template Library의 약자입니다. STL은 프로그램에 필요한 자료구조와 알고리즘을 템플릿으로 제공하는 라이브러리입니다. 또 한, 자료구조와 알고리즘은 서로 반복자라는 구성 요소를 통해 연결합니다.

 

다음은 STL의 구성 요소입니다.

ㅁ컨테이너(Container) : 객체를 저장하는 객체로 컬렉션 혹은 자료구조라고도 합니다.

 

ㅁ반복자(Iterator) : 포인터와 비슷한 개념으로 컨테이너의 원소를 가리키고, 가리키는 원소에 접근하여 다음 원소를 가리키게 하는 기능을 합니다.

 

ㅁ알고리즘(Algorithm) : 정렬, 삭제, 검색, 연산 등을 해결하는 일반화된 방법을 제공하는 함수 템플릿입니다.

 

ㅁ함수 객체(Function Object) : 함수처럼 동작하는 객체로 operator() 연산자를 오버로딩한 객체입니다. 컨테이너와 알고리즘 등에 클라이언트 정책을 반영하게 합니다.

 

ㅁ어댑터(Adaptor) : 구성 요소의 인터페이스를 변경해 새로운 인터페이스를 갖는 구성요소로 변경합니다.(새로운 구성 요소처럼 보입니다.)

 

ㅁ할당기(Allocator) : 컨테이너의 메모리 할당 정책을 캡슐화한 클래스 객체로 모든 컨테이너는 자신만의 기본 할당기를 가지고 있습니다. 프로그램 대부분은 STL에서 제공하는 기본 할당기만으로 충분하므로 자세히 다루지 않습니다(자세한 내용은 참고 문헌을 참고하기 바랍니다.)

 

[그림 5-1]은 STL의 주요 구성 요소인 컨테이너, 반복자, 알고리즘, 함수 객체를 그림으로 나타낸 것입니다.

STL의 세 가지 특징은 효율성과 일반화 프로그램(재사용성), 확장성입니다. STL은 이 세 특징에 중점을 두고 개발된 라이브러리입니다. 그래서 STL 알고리즘은 너무나도 일반적입니다.

 


WRITTEN BY
커피김스타
게임 기획, 개발, 프로그래밍, 그래픽, zbrush, 원화, 캐릭터 등등 다양한 정보공유

,

안녕하세요!!

봄은 어느새 지나가고 여름이 한발 다가온 것 같습니다.

집 밖을 돌아다니다 보면 언제 추웠냐는 듯이 언제 비가 왔냐는 듯이 등이 뜨겁습니다.

미세먼지 때문에 외부활동은 자제하고 실내활동 위주로 뭔가를 해야할 시기가 온 것 같아요.

 

많은 사람들이 궁금해 하는 언리얼 엔진에 대해서 이야기 해보고 싶어요.

 

언리얼 엔진이란??

미국의 에픽 게임즈에서 개발한 3차원 게임 엔진입니다. 원래 에픽 게임즈는의 첫 게임인 '언리얼'에 사용될 목적으로 개발된 엔진이지만, 지금은 이 엔진이 에픽 게임즈를 대표할 정도로 가장 중요한 프로젝트가 되었다.

 

언리얼 엔진은 전반적인 게임 개발 환경을 제공하는 통합형 게임 엔진이다. 뛰어난 기술과 지속적인 업데이트, 다양한 기술 지원, 언리얼 개발자 간의 네트워크 지원, 뛰어난 개발 도구들을 제공하는 것이 언리얼 엔진의 장점이다.

 

무엇보다 엔진의 구성이 유연해서 여러 기술을 조합하고 확장하기 좋은 구조를 가지고 있다는 것이 가장 뛰어난 점이다.

 

언리얼의 대표게임으로는 리니지2, 블러드 앤 소울, 언리얼 시리즈, 기어즈 오브 워, 테라, 데드 스페이스, 바이오 쇼크, 서든어택2 등이 있다.

(출처 : 엔씨소프트 홈페이지)

(출처 : 엔씨소프트 홈페이지)

2014년 4월에는 언리얼 엔진 4.0 버전이 공식적으로 공개됐다. 에픽게임스는 이와 함께 월 19달러의 금액과 개발한 게임의 총 수익의 5%를 지급하면 엔진 개발 도구뿐만 아니라 전체 소스 코드까지 만들 수 있는 새로운 라이센싱 프로그램을 발표해 화제가 됐었다. 그리고 현재 월 19달러의 금액이 무료로 변경 되었고 총 수익의 5%를 지급하면 되는부분이 3000달러 이상의 매출이 나왔을때 지급하는 것으로 변경 되었다.

 

언리얼 엔진이 1세대 2세대 3세대 4세대까지 거쳐오면서 꼭 게임뿐만이 아니라 비게임에도 사용이 가능하게 됐다. 건축설계, 실내 및 실외 디자인, 모의 훈련, 운전 시뮬레이션 등 그외의 여러 분야에 쓰이고 있는데 이런 작업들을 최신의 다양하고 현실적인 그래픽 기술과 사실적인 물리 효과가 적용된 완전한 실시간 툴셋으로 작업한다는 건 기존의 캐드나 VRML 같은 프로그램보다 훨씬 효율적이고 엄청난 이득을 가져다 주기 때문에 앞으로도 언리얼 엔진을 이런 분야에서 사용하는 사례가 많아질 것이다.

 

가장 큰 장점이라고 하면 VR분야에 많은 기술력을 쏟고 있다는 점이다.

현재 VR이라는 분야가 성장하고 많은 광고 그리고 사용자(User)가 늘어가고 있습니다.

 

퀄리티 적인 부분에서 압도적이다 보니 많은 게임사 또는 게임회사들이 선호하고 넘어가고 있는 추세입니다.

 

언리얼(Unreal)의 퀄리티를 보고자 하시면 유투브에 unreal gdc를 검색해서 살펴 보세요

이처럼 게임업계 매출이 상승하면서 좀더 나은 퀄리티 좀더 나은 게임을 원하는 유저들이 더욱 더 늘어가고 있습니다.

 

예전의 10~20대만 하는 것이 게임이었지만 현재는 40~50대 까지 누구든지 즐기고 있으므로 앞으로 비젼있고 전망있는 사업으로 생각됩니다.

 

그렇다면 어떻게 게임업계에 들어 갈 수 있고 배울 수 있는 것인가가 중요하겠죠??

독학을 하려는 분들이 꽤나 많습니다. 하지만 현실의 벽에 부딪히고 좌절 혹은 포기 하는 경우를 많이 봐왔습니다. 많은분들이 결국 차선책으로 전문학원에서 배우는 것이 가장 나은 방법으로 생각하고 효율 또한 제일 높습니다.

 

전문적인 강사들을 포진하고 있고 1:1 멘토 시스템으로서 교육의 질을 높이고있는 학원이 있어 꼼꼼히 따져보고 알아보시는 것을 추천드립니다.

 

(출처 : SBS게임아카데미학원)

 

많은 분들이 학원이란 곳에 학창시절이 아닌 이후에 오게 되면 돈을 쓴다라는 생각을 많이합니다. 하지만 돈을 쓰는게 아니라 돈을 벌기위한 투자인 걸 망각하게 되죠. 많은 것을 배우고 난후 억대 연봉자 수십억대의 연봉을 벌 수 있는 것을 생각치 않고 눈앞의 것만 생각하는 안타까움이 많이 보입니다.

 

 

위 그림을 클릭하면 해당페이지로 이동합니다.

전국에 지점이 있습니다.

 

다양한 이벤트 혜택 / 무료 수강료 조회 / 무료 상담 등이 있습니다.

 

에스비에스아카데미게임학원/제4293호/직업기술-컴퓨터 게임/수강료홈페이지참조


WRITTEN BY
커피김스타
게임 기획, 개발, 프로그래밍, 그래픽, zbrush, 원화, 캐릭터 등등 다양한 정보공유

,

안녕하세요!!

게임 관련된 게임엔진들을 알아보던 중 유니티라는 엔진에 대해서 알게됬습니다.

많은 게임들이 유니티 엔진을 활용해서 만들어 졌다는 걸 알고 계신가요??

 

많은 분들이 이용하는 포켓몬 Go 시작화면에 유니티 로고를 한번쯤은 보셨을 거에요

 

하지만 유니티로 모바일 게임만 만드는 건 아니랍니다.

유니티 설립자들 (왼쪽부터 요하킴 안테, 니콜라스 프렌시스, 데이비드 헬가손)

 

그러면서 유니티는 스마트폰 시장이 열리게 되면서 엄청난 성장을 이뤘습니다.

현재 유니티의 직원이 1천여명이고, 등록된 사용자만 550만명이라면 말이 필요없다.

 

 

입문자가 너무나도 쉽게 이해할 수 있도록 간단하게 표시해 놓고 만들어 놓아서 많은 분들이 이용하게 되고 또 선호하는 것 같습니다.

 

 

비용적인 부분에서 가장 만족도가 높습니다. 다양한 플랫폼을 저렴하게 사용할 수 있으니 1인 창업자 또는 작은 규모의 회사들에서 엄청난 지지를 받고 있습니다.

 

이러한 환경으로 유니티를 배우고자 하는 인원들이 늘어나게 되고 많은 부분에서 기여를 하고 있습니다.

 

그렇다면 유니티를 전문적으로 배울 수 있는 곳은 없나요?

 

실무 중심으로 유니티의 기본부터 심화과정까지 실제 업계 종사자의 강사님을 통해 배울 수 있습니다.

(출처 : sbs게임아카데미학원)

 

많은 분들이 쉬워 보이나 막상 전체적으로 유니티를 사용 하는 부분에서 어려움을 많이 느낍니다. 하지만 개별 진도 시스템으로 관리 하고 배우기 때문에 훨 씬 수월하게 배우고 취업까지 연결시켜주는 시스템으로 많은 분들의 지원을 받고 있는학원입니다.

 

위 그림을 클릭하면 해당홈페이지로 이동됩니다.

전국에 지점이 있습니다.

 

다양한 이벤트혜택 / 무료상담 / 무료 수강료조회 문의 주세요.

 

에스비에스아카데미게임학원/제4293호/직업기술-컴퓨터 게임/수강료홈페이지참조


WRITTEN BY
커피김스타
게임 기획, 개발, 프로그래밍, 그래픽, zbrush, 원화, 캐릭터 등등 다양한 정보공유

,

게임프로그래밍을 배우려면 어떻게 또 어디서 배워야 하나요??

 

그렇다면 먼저 게임프로그래머는 무슨직업일까요?

(출처 : 네이버 지식백과)

 

당연한 이야기이지만 컴퓨터의 언어라는 것이 있습니다.

실제 유저의 손에 따라서 움직이고 행동 할 수 있도록 컴퓨터 언어를 배워야겠죠?

 

게임프로그래밍에 필요한 언어는 C++이지만 그것을 이해하고 잘 활용하려면

기초 베이스가 되는 C언어 부터 숙지한 후 C++를 배워야합니다.

C언어의 심화과정을 통해 직접 간단한 게임을 만들어보면서 성취감도 느끼고 흥미를 느끼면서 배워가는 과정입니다.

간단한 카드게임이나, 지뢰찾기 등등을 만들어 볼수 있습니다.

 

다음과정은 게임에서 사용되는 언어 C++을 배우는 과정입니다.

C++을 통해서 간단한 테트리스 같은 게임을 만들게 됩니다.

다음과정에서 STL(표준 템플릿 라이브러리)를 배우게 되는데요

일반적으로 많이 사용되는 자료구조와 알고리즘 모음 라이브러리입니다.

자주 쓰는 것들을 매번 입력 입력 계속 하기엔 시간도 낭비라서 그런 것들을 모아놓고 바로 사용할 수 있도록 해놓은 프로그램입니다.

 

다음과정에선 윈도우API와 디자인 패턴을 통해 실제 게임을 제작하는 방법에 대한 과정을 다루고 있습니다. 본인의 포트폴리오를 만들어 냅니다.

 

대한민국에서 보편적으로 가장 많이 사용하는 유니티 엔진을 배웁니다.

유니티엔진을 활용한 대표적인 게임은 증강현실 포켓몬 Go라는 게임입니다.

 

 

처음과정에서 유니티 인터페이스 기본적인 툴과 C# 언어를 배우게 됩니다.

배우고나면 유니티를 활용한 FPS게임 RPG게임 등등을 직접 만들어봅니다

 

유니티를 활용 다양한 게임들은 만들어보고 마지막 5단계에서 그동안 만들었던 게임들을 정리해서 포트폴리오를 완성시킵니다.

이제 취업만 하면 되겟죠??

 

상대적으로 취업률이 높은 직업군입니다. 높은만큼 쉬운 과정은 아니겠죠??

하지만 본인의 노력만 있다면 결코 어렵지도 않습니다.

 

 

에스비에스아카데미게임학원/제4293호/직업기술-컴퓨터 게임/수강료홈페이지참조

위 그림을 클릭하면 해당 페이지로 이동됩니다.

(전국에 지점이 있습니다.)


WRITTEN BY
커피김스타
게임 기획, 개발, 프로그래밍, 그래픽, zbrush, 원화, 캐릭터 등등 다양한 정보공유

,