목록Programing (92)
Prosto
Unity 2D 프로젝트ⓐ로 결정지은 게임은 볼(원)이 장애물을 피해가는 게임입니다. (런닝 게임 부류에 속한다고 봐도 무방합니다.) 단순한 게임이지만 특별한 시스템을 몇 가지 넣어 단순하지만은 않게 만들 예정이고, 가장 큰 기본 틀을 만든 후 -> 자세한 부분으로 진행할 예정입니다. 아주 기본적인 카메라 이동, 캐릭터 컨트롤(조작), 프리팹 생성 등 필요한 부분은 전반적으로 다룰 예정입니다. 완성본을 올리는 것이 아니라 차근차근 진행할 것이므로 따라하며 이해하기 수월할 것입니다. 아, 가능하면 원래 기획을 따라가겠지만, 진행 중간 중간 프로젝트 세부 내용이 바뀔 수는 있습니다. (중간에 이미 만들어둔 소스를 수정하는 부분이 있을 수도 있다는 말....) 몇 가지 우선 설명해드리자면 소스 코드는 제공하지..
Unity 3D는 원래 3D 엔진이지만 편리한 인터페이스와 에셋들로 많은 사람들이 2D 게임을 만들어 4.3버전부터 2D를 공식적으로 지원하게 되었습니다. (현재 최신 버전은 5.4이상) 오늘부터 시간날 때마다 천천히 간단한 프로젝트ⓐ의 강좌를 진행하도록 하겠습니다. 가능하면 따라하면서 기본적인 내용을 배울 수 있도록 사진과 스크립트를 이용하여 설명을 진행하도록 하겠습니다. 가장 먼저 유니티 2D 프로젝트를 생성해야 합니다. 생성 방법과 기본 기능 조차 잘 모르시는 분이라면 제 블로그에 있는 글을 링크해드릴 테니 참고하시길 바랍니다. -> http://prosto.tistory.com/56 오늘은 일단 따라하며 배우는 프로젝트로 계획한 프로젝트ⓐ는 어떠한 게임인지 설명하도록 하겠습니다. 1. 복잡한 기능..
'IF - 만약... 이렇다면. 이렇게 처리하라.' 프로그래밍에서 IF문은 중요한 역활을 하고 있습니다. 이런 경우에는 이렇게, 또 저런 경우에는 저렇게... 여러 가지 조건에 따라 다른 결과를 보여줄 수 있도록 도와줍니다. 게임으로 예를 들면, 어느 게임 캐릭터가 점프를 할 수 있다고 해봅시다. 플레이어가 점프키를 누르면 공중으로 뛸 테고, 잠시 후면 중력을 받아 다시 땅으로 떨어질 것입니다. 그렇다면 기본적으로 이런 조건이 필요하겠네요. - 캐릭터가 점프 중이 아닌 상태(지면에 있음)이고.. 점프키를 누르면 공중으로 뛰어라. 이런 조건이 필요한 이유는 캐릭터가 점프 중일 때 다시 점프를 하면 땅을 박차고 뛰는 점프가 아니게 됩니다. (별도로 이중점프가 아닌 일반 점프) 이렇듯 어떠한 경우에는 어떻게 ..
오늘 오랜만에 예전 프로젝트를 열어 빌드(컴파일)를 해봤습니다. [winAPI] 컴파일을 하는데 오류가 나오더군요. 그때 나온 에러 두 가지를 보겠습니다. 현재 사용하는 Visual Studio 버전은 Community 2015입니다.(무료) 1. LNK1207 : incompatible PDB format in '~~~~~'; delete and rebuild 이는 비쥬얼 스튜디오(VS) 버전으로 인한 PDB 포멧 에러인데요. 다시 빌딩을 하면 정상적으로 작동하게 되는 것을 확인할 수 있습니다. * 해결 방법 visual studio의 상단 메뉴 -> BUILD -> Rebuild Solution 순으로 선택하면 자동으로 현재 VS 환경에 맞게 다시 빌드해줍니다. 보통 이렇게 되지만 단순히 Rebuil..
Unity3D로 2D 프로젝트를 생성하는 방법과 간단한 기능을 보도록 하겠습니다. 먼저 유니티 프로젝트 생성 방법입니다. 가장 먼저 유니티3D 프로그램을 실행합니다. 실행하면 아래와 같은 창이 나오게 됩니다. 여기서부터 시작하겠습니다. Projects가 선택되어 있는 모습을 볼 수 있습니다. 여기 목록엔 최근에 작업한 프로젝트들이 나오게 됩니다. 우리는 여기서 우측 상단의 NEW를 누릅니다. Project name 항목에 프로젝트 이름을 입력합니다. 임시로 TestProject란 이름을 지정했습니다. 그리고 현재 만들고자한 게임이 3D인지 2D인지에 따라 선택합니다. 저는 2D를 선택했습니다. 마지막으로 Create project를 누르게 되면 프로젝트가 생성됩니다. 프로젝트가 생성되면 위와 같은 화면이..
모두들 게임 하나씩은 해봤을 것으로 생각됩니다. 아주 재밌게 한 게임이 있을 수도 있고요. 게임을 해오면서 게임 제작자의 길을 가고 싶은 사람들도 있을 것입니다. 그렇다면 게임을 제작하고 싶다면 무엇을 어떻게 해야 할까요? 게임 제작 방법에는 어떤 것이 있을까요? 그리고.. 게임을 만든다는 것은 무엇일까요? 일단 우리는 게임은 어떻게 구성되는지 확인해볼 필요가 있습니다. 우리가 하는 게임을 뜯어보자면.. 기획(구상) + 그래픽(그림/3D모델링) + 프로그래밍(실제 구현)이 가장 큰 부분입니다. 사실 이 외에도 사운드, 영상 등 다양하게 들어가는 것을 알 수 있습니다. 그렇기에 소규모 게임이 아닌 대부분의 게임은 기획, 그래픽, 프로그래밍 등 모든 부분은 각각의 전문가가 있기 마련이고 그 전문가들이 모여서..
유니티 4.2v 기준.. 현재 Unity에서 Active 제공해주는 함수 중에서 사용 하는 것... 일단은 Object의 현재 상태 확은 -> (현재 존재하는지 아닌지.. Active 활성 되있는지...) gameObject.activeInHierarchy // true의 경우 활성 ... 사용 예.. 특정 게임오브젝트 프리팹이 존재한다고 했을 때.. public GameObject bulletObj; //프리팹. GameObject bullet; .... bullet = Instantiate(bulletObj, Vector3.zero, Quaternion.identity); //실제 게임 오브젝트 생성.. zero = 0,0,0 position.. //Quaternion.identity = 0,0,0 ..
유니티 콘솔 오류.. Unity 3D There are no audio listeners in the scene. Please ensure there is always one audio listener in the scene 에러가 떠서 무엇 때문인지 헤매다가 확인했네요. 정말 간단한 거였는데... 카메라가 없어서 였습니다.. 메인카메라 추가하니까 오류 없이 잘 되는군요. (소리 입히고 하는 중에 플레이해도 소리가 안나기에 뭐 때문인지 찾고있었습니다...)
일단 저번 예제를 파일 분할 함으로 얻을 수 있는 것이 있습니다. (헤더 cpp main...) #################### 헤더파일 ####################### Point.h //헤더파일의 경우 클래스의 선언을 담습니다. class Point { private: int xpos; int ypos; public: void PointSet(int x, int y); void MovePos(int x, int y); //점의 좌표이동 void AddPoint(const Point &pos); //점의 좌표증가 void ShowPosition(); //현재 x, y좌표정보 출력 }; #################### cpp파일 ####################### Point.c..
앞에서 설명한 클래스를 이용한 예제 중 하나입니다. 자세하게 주석을 달아 놓았습니다. #include //std::cout, std::cin 등을 가지고 있는 iostream -> include. using namespace std; //std 네임스페이스 사용. std::out std::cin std::endl 등을 std:: 없이 사용가능. class Point //Point 클래스 선언. { private: // private은 외부로 공유하지 않음. 정보를 은닉해줌. int xpos; int ypos; public: // public은 외부로 사용할 수 있게 열어둠 void PointSet(int x, int y); void MovePos(int x, int y); //점의 좌표이동 void Ad..