전체 글 109

게임에서의 사행성 (키트, 랜덤박스)

사행성은 3가지 조건을 만족하면 된다. 1. 여러 사람의 돈을 모은다.2. 그 돈을 분배한다.3. 그로 인해 사람들이 이익이나 손해를 본다. 위 3가지 조건을 모두 충족할 시 '사행성' 이 있다 고 판단된다.(온라인 게임을 켰을 때 사행성 문구가 들어가있어요! 라고 하는 그 사행성과는 조금 다른 느낌으로 여기서 설명하는 것은 도박에 가까운 개념의 것이다.) 온라인 게임에서 흔히 접할 수 있는 키트 (랜덤박스 혹은 가챠시스템 이라고 불림, 특정 가격을 주고 안에서 랜덤한 가격의 아이템이 나오는 것.)는 사행성의 조건을 충족시키지 않는다. 사행성의 조건에 맞춰 생각해보자.1. 키트를 구매함으로써 회사는 돈을 모은다.2. 그 돈을 게임 아이템으로 분배한다.3. 게임 아이템을 분배하였기 때문에 이익이나 손해가 ..

게임/미분류 2016.12.03

세미온 타워 디펜스 2 가스 채취량/속도 효율표

이번에 소개할 것은 가스 채취량/속도 효율표이다. 이 글에서 소개할 것은 '초당 획득 가스량' 에 대한 소개이기 때문에 라운드 종료까지 기다릴 경우 효율표와 상관없이 손해를 볼 수도 있다. 가스 채취량 업그레이드는 1 가스 당 100 광물이 소모된다.가스 채취속도 업그레이드는 총 5단계가 있고 처음은 60광물 이후 100광물씩 증가한다. (60 160 260 360 460) 업그레이드 속도는가스 채취량 - 12초가스 채취속도 - 18초궤도사령부 업그레이드 - 32초궤도사령부 마나 회복 속도 - 약 13 초당 10궤도사령부 스킬 사용시 효과 - 21초 동안 가스 채취량 10 증가 가스 효율 그림 (161203 오전 수정)x 축 - 소모 광물 / 100 y 축 - 초당 획득 가스범례 - 1->6 가스 속도 ..

게임/미분류 2016.12.03

세미온 타워 디펜스 2 개론

세미온 타워 디펜스는 4vs4 대전 형식 타워 디펜스 맵이다. 세미온 타워 디펜스 설명을 위한 그림 앞서 말했듯이 4vs4 타워 디펜스 형식의 게임이다. 을 중심으로 설명할 것이고 앞으로 을 '지도' 라 칭하겠다. 이 게임은 '라운드' 형태로 진행되면 기본 라운드는 1~30, 그 뒤로는 몬스터의 상승 상한치 제한이 없는 무한 라운드가 진행된다.그리고 이 게임에는 계급이 존재하고 게임에서 승리시 계급 점수가 상승한다. (패배시 하락) 매 라운드 시작 시 사각형 위치에서 웨이브 유닛이 나온다.라운드마다 공격 형태, 수, 체력 등 모두 다르면 그 것에 대해서는 다음 글에서 설명하겠다. 웨이브 유닛은 화살표 방향으로 '어택땅'을 찍으며 이동하고 최종적으론 원에 다다르는데 여기 부자왕(리치왕 직역잼)이 있고 부자..

게임/미분류 2016.12.02

영상처리에서의 커널 (Kernel)

프로그래밍을 하다보면 커널 (Kernel) 이란 말을 자주보게 될 것이다. 그리고 이 글을 읽는 사람들은 커널이 뭔지 찾기 위해 녹색창 혹은 구글에 커널이란 말을 검색할 것이고 한글로 쳤다면 '대령' 이 나와 오잉 할 것이고 영어로 치면 '핵'이 나와 이게 뭐지 하는 생각이 들 것이다. 각 분야에서 사용되는 커널이란 말의 의미는 다를 것이지만 영상처리에서 커널은 픽셀의 주위에 연산을 해주는 행렬이다. 언제나 그렇듯이 설명에 그림이 포함되지 않으면 이해를 하기 힘들다. 커널을 그림으로 설명하면 아래와 같다. 픽셀 '픽셀'을 설명할 때 사용되었던 행렬이다. 이 행렬의 각 성분에 아래와 같은 행렬을 곱해준다고 생각해보자. (가장자리에서 경계를 초과하는 경우 지금 설명할 부분은 아니기 때문에 언급하지 않겠다.)..

영상처리에서의 침식과 팽창 - 1 (Erosion and Dilation in Image Processing)

블로그를 뒤지다보면 (언젠간 글이 많아져서 뒤질날이 오겠지) 침식과 팽창에 대한 설명, 그리고 픽셀에 대한 설명이 있다. 두 글을 다 읽었다는 전제하에 설명하겠다. 이 글의 순서는 1. 침식과 팽창을 어떤 용도로 사용하는지 알아보고 2. 침식팽창 알고리즘에 대해 설명한 뒤 3. 실제로 그 용도에 맞게 알고리즘을 사용하는 것을 보여줄 것이다. 영상처리에서 침식과 팽창을 하는 이유는 (내 기준에서) 네 가지 정도이다.ㄱ. 단순히 영상에서 작은 것을 크게 보기 위해 (팽창)ㄴ. 단순히 영상에서 작은 것들을 무시하기 위해(침식)ㄷ. 침식 -> 팽창 을 통한 Openingㄹ. 팽창 -> 침식 을 통한 Closing 영상처리에서 침식과 팽창은 특정 픽셀의 주위 부분에 대해 커널을 씌우는 것이다. 침식/팽창에서 사용..

통합개발환경 (IDE, Integrated Development Environment) (Visual Studio/Dev-C++)

통합개발환경은 말 그대로 통합적으로 개발을 할 수 있는 환경이다. (말장난잼)코딩, 디버깅, 컴파일을 할 수 있다. 전체적인 통합개발환경에 대한 정의와 운영체제별로 사용할 수 있는 프로그램들은 위키백과에 매우 잘 나와있기 때문에 내가 여기 쓴다면 그건 그냥 복붙일 것이다. 그래서 그냥 링크를 걸어두겠다. - 링크 여기서 소개할 것은 윈도우 사용자가 흔히 쓸 수 있는 통합개발환경에 대한 이야기이다. Visual Studio 와 Dev-C++ 이다. 각 프로그램의 다운로드 링크는 이름에 걸어놓았다.그리고 설명을 하기에 앞서 라이센스 문제에 대해 알아둘 것이 있다. Visual Studio 의 경우 대부분의 대학교에서 학생 버전의 라이센스를 제공하기 때문에 해당 학교의 컴퓨터 혹은 학교 이메일을 가지고 신청을..

CUDA (쿠다) 란, 왜 사용하는 것인가.

CUDA (Computed Unified Device Architecture) 는 NVIDIA 사에서 개발한 GPU (Graphic Processing Unit)개발 툴이다. (설치방법 링크) CUDA C 라는 언어를 사용하고 C++/C 등에 넣어 사용할 수 있다. (이 블로그에서는 C++에 넣어 사용할 예정이다. IDE (Integrated Development Environment) 는 비쥬얼 스튜디오를 사용한다.) CUDA의 역사와 원론적인 이야기는 NVIDIA 홈페이지나 여타 다른 블로그에 소개되어 있기 때문에 간단하게 설명하겠다.2006년 NVIDIA는 Fermi Architecture 를 발표하며 CUDA 를 세상에 내놓았다. 이전까지는 전문가들이 아니면 GPU 를 이용한 프로그래밍이 어려웠는..

영상처리에서의 픽셀

픽셀이란 (Picture element)의 약자이다. 픽셀의 유래는 컴퓨터가 발명되기 이전 19세기 후반 조르주 쇠라와 파울 시냐크 등이 그림을 점으로 찍어서 표현하는 점묘화라 봐도 손색이 없다. 그 당시에는 엄청난 노가다였으나 컴퓨터 발명 이후 빠른 속도로 현재도 유용하게 사용되고 있다. ( 나무위키) 조르주 쇠라의 점묘화 중 일부(https://namu.wiki/w/%ED%94%BD%EC%85%80) 1 bit 8x8 이미지의 예 그림 (좌) 픽셀 (우) 를 보자. 좌측은 그림판으로 한칸씩 찍어서 만든 그림이고 그 그림을 1bit 픽셀로 나타내면 우측과 같습니다. (사실 0이 검은색, 1이 흰색이지만 수정하기 귀찮아서 놔둡니다.) (Blur이 심한데 그림판에서 8x8 픽셀 이미지를 183x183으로 ..

침식(erosion) 과 팽창(dilation)

** 인용한 글, 그림에 대해서는 글 맨 아래에 남기겠습니다. 침식(Erosion)과 팽창(Dilation)에 대해 알아보자.침식과 팽창은 단어 그대로 현실에서 보는 그 침식과 팽창이다. 말로 그게 그거다 라고 이야기하면 이해가 안될 수 있기 때문에 아래 그림을 참조해 보자. 하천에서의 침식과 팽창위 그림에서 파란색 - 강, 빨간색 - 물(유체)의 흐름, 파란색 스프레이 - (강의) 팽창, 갈색 스프레이 - (강의) 침식 누구의 입장에서 보느냐에 따라 다르겠지만 여기선 '강'의 입장에서 설명하겠다. 물이 위에서 흘러오며 '관성'에 의해 계속 진행방향으로 흐르려 하기 때문에 파란색 스프레이가 있는 지점에 힘을 가한다. 그렇기 때문에 해당 부분의 '땅'이 침식되고 '강'이 팽창하게 된다. 이에 반해 갈색 스..

미분류 2016.11.30