언어/기타
2006.09.16 18:51

왜 C언어를 해야하나요? -1

조회 수 1427 추천 수 5 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

안녕하세요 ^^ 어제 막 가입한 웁피라고 합니다~


강좌라고 하긴 좀 뭐하고 그냥 제가 아는 정보를 공유 한다는 차원에서


한 글자 적어봅니다 >_<


허접하더라도 이해해주세요~


혹시라도 제가 잘못알고 있거나 틀린 내용은 언제든지 말해주세요 ^^


 


________________________________________________________________________________________


 


게임프로그래밍을 하는데 왜 C언어를 해야하나요?


 


라는 질문


 


혹은 게임을 만들고 싶은데 무엇을 공부해야 하나요?


 


라는 질문들


 


제가 어렸을 시절, 참 많이 생각하고 고민해왔던 것들입니다.


 


도무지 어떻게 해야 게임을 만들 수 있는건지 알 수 있는 방법이 없었죠


(그때는 인터넷이 그렇게 잘 보급 되지도 않았었죠.. ㅋ)


 


C언어 학원을 다녀 C언어를 조금 하게 되고


 


C++학원을 다녀 C++을 조금 하게 된 이후에도


 


전혀 이것으로 게임을 만들 수 있다는 생각은 들지가 안더군요


 


C언어를 처음 접해보는 분들은 윈도우 화면에


 


무엇인가를 그리는것이 아니라 검은 도스화면 같은 곳에 숫자나 문자등을


 


출력 밖에는 할 수 없다는 걸 보고


 


뭔가 허무하실 겁니다. 저도 옛날 어렸을때 다닌 컴퓨터 학원에서도


 


학원 선생님은 그냥 나중에 커서 C언어 공부하면 할 수 있다고만


 


말해주시더군요(지금 생각해보니 참 성의가 없으셨어 -_-)


 


자 서론이 좀 길었네요 ^^ 그럼 진짜 본론으로 넘어가서


 


C언어가 무엇인지를 제가 아는대로 간단히 말해보겠습니다.


 


가장 먼저 컴퓨터는 0과 1만을 알고 있다라는 사실을 알아야 합니다


(혹시 이 컴퓨터가 0과 1만으로 어떻게 돌아가는 가 하는가에 대해서도


궁금하시다면 차후 다른 강좌로 말씀드리겠습니다~)


 


그래서 기계어는 0과 1의 조합으로만 만들어져 있죠


 


가령 어느 공간에 어느 데이터를 넣어주세요 라는 명령어라면


 


011101010101010101010101010101001111010101과 같은 식의


 


명령어인데 우리는 알아보기가 힘들 것 입니다.


(물론 저게 화면에 뿌려주는 명령어는 아닙니다. 허허허)


 


이것을 우리가 알아보기가 힘들기에 누군가가 어셈블리어를 개발합니다


 


그래서 그 어셈블리어는


 


LOAD 100


STOR 200


과 같은 식의 명령어로 구성되어 집니다.


 


확실히 아까전의 숫자들의 나열보다는 우리가 알아보기가 쉽겠죠?(아닌가? -_-)


 


하지만 이 어셈블리어 역시 상당히 어렵고 하나의 연산을 처리하기에


 


너무 긴 연산들을 반복해야 하므로


 


다시 이 어셈블리어들을 묶어 C언어가 만들어지게 됩니다~(짜잔~)


(사실은 그 사이 조금 더 과정이 있을지도 모릅니다 =_= 잘 몰라서 죄송;;)


 


즉 C언어는 상당히 기계어와 가까운 언어입니다.


 


기계어와 가깝다는 이야기는 그만큼 빠르다는 이야기입니다.(해석과정을 더 적게 밟으니까요)


 


C언어의 장점은 이외에도 무수히 많지만


 


일단 게임프로그래밍과의 관계를 말하는게 목적이니 생략하도록 하겠습니다~


 


여러분도 아시다시피 게임은 상당히 고사양의 프로그램입니다.


 


사실 게임이 아닌 어떤 프로그램을 실행하기 위해 PC를 업그레이드 할 필요가 없다는 걸


 


생각해보시면 간단하게 이해가 가실겁니다.


 


C언어 이외에도 언어는 상당히 많습니다.


 


사실 JAVA로도 얼마든지 게임을 만들 수 있고요.


 


그러나 C언어를 많이 사용 하는 이유는(사실 요즘은 C++을 더 많이 사용합니다..;;)


 


같은 로직으로 게임을 만들었을떄 C언어가 훨씬 빠르기 때문입니다.


(수차 말하지만 기계어로의 해독이 다른 언어에 비해 훨씬 적기때문입니다.)


 


이것으로 왜 C언어를 게임프로그래밍에 사용하는지에 대해


 


간략히(?) 알아봤습니다. ^^


 


처음 해보는거라 많이 허접하고 내용도 빈약하고


 


일관성없이 이리저리 돌아다는것만 같네요 ㅜㅜ


 


다음 2부에서는 C언어를 통해 어떻게 게임을 만들어가는지


 


정확히 게임 프로그래밍을 위해서 어떤것을 공부해야하는지


 


그런것들을 이야기해보겠습니다~


 


길고 허접한 글 읽느라 수고하셨습니다 (__)

?

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
704 RPG Maker [턴알]데미지2배로 늘려서공격하기!/한턴에여러번공격하기. Dship 2007.05.13 605
703 RPG Maker [게임설정]우주공간에서의 무한 RPG MiNi'M' 2006.05.25 605
702 언어/기타 아이템을 강화하자!(중복일수도) 천무스 2006.05.22 606
701 언어/기타 ■ 코드의 활용 3편 - Chord tone(2)- 2005.10.14 607
700 언어/기타 Hybrid Chord (기본편) 나그네M 2006.04.17 607
699 언어/기타 사토루의 간단한 타이틀 제작 방법 ( 포토샵 or 그림판 ) file 사토루 2006.05.07 608
698 언어/기타 몬스터에게도 공격 모션을!(중복확률 99%) 로안 2006.04.26 609
697 언어/기타 <응용강좌> 아이탬토글 -노가다- 린쌍 2006.05.20 611
696 언어/기타 대화와 언어의 장벽을 이용해봅시다. 린쌍 2006.04.05 614
695 언어/기타 변수를 절약하자!! 1 길모나 2006.09.22 616
694 언어/기타 긁적... 오래된건데;; 다른 사람은 알고 있으려나?(변수 타이머) 예화 2005.09.30 616
693 언어/기타 삼국지 같은 게임을 만들때 필요할수 있는 시스템.. SKT_Terr god 2006.02.08 616
692 언어/기타 스토리 아이디어 앞만보맨 2005.12.19 619
691 언어/기타 쓸만한 단어?? 코로네 2006.04.23 619
690 언어/기타 너무나 간단한거지만(마음만 먹으면 넣을 수 있는) 탐정할인Q 2005.10.05 620
689 언어/기타 ■ 코드의 활용 4편 - Diatonic Scale Chord - 2005.10.29 620
688 언어/기타 [RM2000]항해시대 게임의 교역시스템을 알아보자.(수정) Ress 2006.01.07 622
687 언어/기타 경험치 게이지 간단 설명 1 린쌍 2007.05.28 623
686 언어/기타 MP3만들기..; -♧파란』- 2006.05.07 625
685 언어/기타 재미있는 C의 세계 +_+ Dr.None 2006.08.09 625
Board Pagination Prev 1 ... 11 12 13 14 15 16 17 18 19 20 ... 51 Next
/ 51






[개인정보취급방침] | [이용약관] | [제휴문의] | [후원창구] | [인디사이드연혁]

Copyright © 1999 - 2016 INdiSide.com/(주)씨엘쓰리디 All Rights Reserved.
인디사이드 운영자 : 천무(이지선) | kernys(김원배) | 사신지(김병국)