본문 바로가기

프로그래밍

자료 구조 자료 구조란? 자료 처리를 위한 자료의 표현, 저장, 관계, 관리 및 이용에 관한 방법의 개념을 공부하고 이러한 개념들이 컴퓨터에 의해 사용 될 때, 적절한 자료의 표현, 구성, 저장 및 처리를 위한 알고리즘의 작성 및 선택과 이용방법을 연구하는 분야 선형 구조 : 자료가 일렬로 연결되어 있는 모양으로 구성하는 방법 ex) 배열과 레코드, 연결 리스트, 스택과 큐 등 비선형 구조 : 자료들의 구성이 일렬로 연결되는 것이 아니라 특별한 모양으로 연결되어 있는 구조 예) 트리와 그래프 더보기
타워디펜스부분 20%정도 구현된거라할까? 스테이지0은 베이스캠프, 스테이지1은 창고, 스테이지2는 농장, 스테이지3은 타워디펜스부분이다. 지금 스샷은 스테이지3인데.. 위에 보면 외계인이 캐릭터쪽으로 지그재그로 온다. 외계인 머리위에 HP바로 체력을 감지할 수 있고, 아래쪽에 캐릭가 뭘 뚝딱만든다. 이 과정에 일정시간이지나면 저 거북이를 만드는데, 거북이는 자기자리에서 방어요새를 갖추는 것이다. 크크 여기까지는 금방인데.. 예정은 거북이에 적절한 벡터값을 넣어 사정거리적용시키고, 파워는 여러가지 애니메이션(공격,360도스핀 등등)이 있으니 업그레이드시 변화를 주고, 업그레이드할땐 색깔을 변화시키는걸루 정했다. 거북이 공격시 외계인은 체력이 소모되야겠고, 체력100에 절반이 달경우에 스턴기능으로 제자리에서 잠시 멈추고 기절모션으로 바꿔주면 되겠다.. 더보기
라이트만 켰는데.. 라이트를 좀 잘키니까 나쁘지않게 연출되는구나. 디아블로2 베이스캠프같은 느낌을 가지고싶었는데 .. 더보기
객체 , 객체지향 객체 혹은 개체라고 부르는 경우도 있다. 여기에서 객체라고 표기하겠다. 객체의 사전적인 표현을 찾다가도 이해가 안되었지만, 그래도 가장 근접한 내용은 영/영사전에서 나왔다. 영토와 국민은 국가의 객체다. The territory and people are the objects of the state. (네이버 영/영사전) 즉, 국가의 객체에 영토와 국민이 포함되어있다는 예를 통해서 어느정도를 이해하고 추가적인 정보를 알자면, 객체(object) 객체 지향 프로그래밍이나 설계에서, 데이터(실체)와 그 데이터에 관련되는 동작(절차, 방법, 기능)을 모두 포함한 개념. 예를 들어 기차역에서의 승차권 발매를 생각할 때, 실체인 ‘손님’과 동작인 ‘승차권 주문’은 하나의 객체이다. 실체인 ‘역무원’과 동작인 ‘승.. 더보기
shared_ptr auto_ptr은 new와 delete를 한쌍으로 하는 방식을 떠나서 auto_ptr로 메모리를 할당받고 알아서 자동으로 delete를 호출해준다. 하지만 단점은 복사를 할 수 없다는 것... 그래서 shared_ptr을 많이 쓴다고 한다. 이놈은 복사가 가능하다. 더보기
이제 데이터 멤버는 private , protected를 적용하자. 이것만은 잊지 말자 ! * 데이터 멤버는 private 멤버로 선언합시다. 이를 통해 클래스 제작자는 문법적으로 일관성 있는 데이터 접근 통로를 제공할 수 있고, 필요에 따라서는 세밀한 접근 제어도 가능하며, 클래스의 불변속성을 강화할 수 있을 뿐 아니라, 내부 구현의 융통성도 발휘할 수 있습니다. * protected 는 public 보다 더 많이 '보호' 받고 있는 것이 절대로 아닙니다. 더보기
첫 NPC 새우다. NPC와 대화상태가 되면, 따로 2d화면만 출력이 아닌 현 3d상황에서 카메라시점을 둘이 대화하는 장면을 위에서 서클로 돌아가며 진지하게 대화하는 장면처럼 연출한다. 나름 npc와 대화하는 장면은 의도치않았지만, 잘나왔다. 작은 산이 나왔다. 일리히트에서 한글출력하는방법인데 방법이야 몇가지있다고 하는데 뭐 하다보면 되겠지. 더보기
about STL - 시퀸스 컨테이너, 연관 컨테이너 간단정의 About STL을 보시는 분은 대부분 아직 STL을 잘 모르는 분들이라고 생각합니다. 제가 일하고 있는 게임업계는 주력 언어가 C++입니다. 그래서 취업 사이트에 올라온 프로그래머 채용 공고를 보면 필수 조건에 거의 대부분이 C++와 STL 사용 가능이 들어가 있습니다. 게임 업계뿐 아니라 C++을 사용하여 프로그래밍하는 곳이라면 대부분 C++과 STL을 사용하여 프로그램을 만들 수 있는 실력을 필요로 합니다. C++ 언어를 배우고 사용하는 프로그래머라면 STL을 배우면 좋고, 특히 게임 프로그래머가 되실 분들은 STL을 꼭 사용할 줄 알아야 됩니다. 작년 여름부터 About STL을 쓰기 시작하여 지금은 2009년이 되었습니다. About STL 집필 계획으로는 이제 반 정도 도달한 것 같습니다. 앞.. 더보기
스레드 클래스 함수 1. 클래스 헤더안에 static으로 선언 class TestDlg { public : static DWORD WINAPI ThreadHandler(LPVOID lpParam); // CreateThread static unsigned int __stdcall ThreadHandler(void *pParam); // _beginthreadex } 2. 클래서 내용안에 정의 // CreateThread DWORD WINAPI TestDlg::ThreadHandler(LPVOID lpParam) { TestDlg *Dlg = (TestDlg *)lpParam; while(TRUE) { ... } return 0; } // _beginthreadex() unsigned int __stdcall TestDlg:.. 더보기
배경을 위해 띄워주는 텍스쳐정도? 일리힛에서는 에디터나 쉽게 완성할 수 있는 함수가 많았기에 그냥 넘어갔지만, 저런 방식으로 월드에 찍어주는것도 필요한데 그것은 에디터에 없었다. 방법이야 있다. 육면체큐브+텍스쳐를 육면체자체를 최대한 납작하게 한다던지.. 그거나 요거나겠다. 내가 원했던것은 하나의 면이었기 때문이다.(두개의 삼각형) 이건 어쩔 수 없이 직접 코딩해야했다. 튜토리얼(일본사이트에서 제공되던 문서)에서 제공되는 방법 즉, 뭐 인덱스버퍼에서 텍스쳐씌우고 월드좌표로 넘겨주는거 DirectX9.0할때하고 같은방식이다. 이런거야 뭐 사실 도큐먼트보고 바로바로 작성해주면 되는거아닌가?ㅋㅋ 왜 이걸필요로 했냐면, 서든어택을 예로 보면 전체적으로 지형, 스카이박스가 있는데 지형과 스카이박스 사이에 적절하게 산 그림을 배치했더라. 음... .. 더보기