본문 바로가기

분류 전체보기212

똥피하기 게임 만들기 2. 충돌처리(~에 닿았는가), 사망처리 안녕하세요. 승승이 입니다. 지난번에 만든 똥피하기에서 똥을 맞았을 때 캐릭터의 게임오버, 그리고 똥이 바닥에 들어가면 사라지기 등등의 게임의 기본적인 틀을 이어서 만들어갈 예정입니다.게임의 요소중에서 가장 기본적인 틀 들을 만들 것인데요, 게임의 규칙과 게임오버 조건 등을 만들어 볼 수 있습니다. 이번 똥피하기 게임에서 가장 중요한 룰은 똥에 맞지 않는 것입니다. 이전 포스팅에서는 단순히 똥을 만들어 내서 떨어진다면 여기서는 그 똥을 맞으면 게임 오버가 되는 것이 핵심 요소가 됩니다. 그래서 똥에 닿았는가 아닌가를 판단하는 것이 중요한데, 게임을 단순하게 만들기위해서 일단 가장 간단한 방법으로 소개하기로 하였습니다. 1. 똥의 충돌 처리일단 똥이 캐릭터에 맞았을 때를 판단해야 하는데요, 일단 블록중에 .. 2017. 11. 20.
스크래치로 물리실험하기-7. 물체의 충돌 구현 안녕하세요. 승승이입니다.이번에는 약간의 상상력도 필요한 이야기입니다. 우리가 물체가 분자로 이루어져 있고 그 안에 원자로 구성되어 있고 더 나아가서는 더 작은 물질들로 이루어져 있다는 이야기는 상식으로 알고 있습니다. 그 물질들의 대부분의 공간은 빈 공간입니다. 그런데 빈 공간에서 어떻게 우리가 물체를 만지고 잡을 수 있을까요? 우리가 보고 있는 실체는 99%가 빈 공간이기 때문에 눈으로 보는 세상과 실제로 만지는 느낌들은 단순히 뇌에 자극으로 들어오는 것이고 실체가 없는건 아닌가 하는 이야기도 있습니다.과학적으로 보면 물체가 색을 가지는 것은 원자 껍데기에 있는 전자가 빛을 받아서 들뜬 상태로 되다가 다시 안정화 되면서 빛을 발산한 것을 눈으로 보기 때문입니다. 그러면 물체를 만지는 것은 어떻게 될까.. 2017. 11. 15.
똥피하기 게임 만들기 1. 캐릭터 이동과 똥만들기 안녕하세요. 승승이 입니다. 이번에 만들 프로젝트는 '똥 피하기 게임'입니다. 네, 아주아주 쉽고 간단하게 만들 수 있는 게임입니다.사실 이렇게 쉬운 게임부터 강좌를 썼었어야 했는데 뒤늦게 강좌를 만들어 보네요. 이번 프로젝트를 따라 만들면서 게임을 만들 때의 기본적인 부분을 알 수 있을 것입니다.먼저 똥피하기 게임을 잘 모르시는 분을 위해서 똥피하기 게임이 무엇인지 글로 설명해 볼까 합니다. 1. 위에서 똥이 무작위로 떨어짐2. 사용자는 피함 (키보드 또는 마우스 등)3. 시간이 지날수록 똥이 많아짐4. 오랜 시간을 버틸수록 점수는 높아짐 이정도가 만들어야 할 규칙들입니다. 일단 스크래치에서의 주는 기능들로 구성으로 간단히 만들 것입니다. 그리고, 개선을 하거나 기능을 추가하는 방식으로 게임을 좀 더 .. 2017. 11. 13.
스크래치로 물리실험하기-6. 두개의 인력 안녕하세요. 승승이입니다.이번에 스크래치로 실험할 이야기는 '인력'입니다.인력은 잡아당기는 힘인데, 중력도 있고 자기력도 있고 전기력도 있고 여러가지가 있기 때문에 무난하게 '인력'이라고 칭하고 시뮬레이션을 만들어 봅니다. 처음에는 2개에 대해서 잡아당기는 것을 만들 예정인데, 이것을 여러 개 만들어 볼까 합니다. 즉, 프로그램상에서 여러 개의 상호작용을 어떤식으로 구현하는게 좋을지 고민을 해볼 시간입니다. 먼저 2개의 물체만을 생각해봅시다. 여기서 각 물체의 번호를 n이라고 칭하고, 순서대로 1과 2인 물체를 생각합니다. 각각 작용하는 힘은 거리의 제곱의 반비례, 그 힘의 크기는 물체 질량 곱의 비례한다고 가정합니다. 네, 중력과 같은 공식입니다. 여기서 상수 kg는 임의로 사용하기로 합니다. 여러 개.. 2017. 11. 12.
스크래치로 팔라독 같은 게임 만들기- 8. 캐릭터 애니메이션 추가(끝) 안녕하세요. 승승이 입니다. 지금까지 모든 뼈대를 만들었습니다. 이제는 살을 이어 붙일 시간이네요. 게임에서 어지간히 중요한 기능을 만들면 이제 없어도 되는 그러한 부가적인 것들을 추가해야합니다.그 중 하나가 애니메이션입니다. 오히려 프로그래밍의 외적으로 많은 시간을 들이게 되서 개인적으로는 이 부분이 시간도 너무 많이 먹고 진행도 주춤하게 되는 요인이 되어서 좀 더 효율적으로 그래픽 작업하는 방법도 연구가 필요할 거 같습니다. 이 프로젝트에서는 애니메이션에 많은 투자를 안하고 간단하게 2개 모션만 사용해서 만들어 볼까 합니다. 이동모션이나 공격모션이 그림이 2장만 사용하는 것입니다. 이 모션들은 여러 개 만들수록 더욱 부드러워지고 퀄리티가 좋아지겠지만 그만큼 작업량이 많아질 것입니다. 애니메이션에 사용.. 2017. 11. 10.
스크래치로 물리실험하기-5. 두개의 물체의 스프링 작용 안녕하세요. 승승이입니다.스크래치로 물리실험하기 5번째입니다.이번에는 2개의 물체를 가지고 실험해보겠습니다. 지난 시간에는 매우 간단하게 영점(0,0)에 고정된 스프링에 대해서 질량 m의 물체를 적용하였습니다. 이번에 2개를 물체를 사용한다면 어떻게 해야 할까요? 각각의 물체에 적용하는 자신의 위치, 속도, 가속도를 각각 따로따로 계산을 하고, 단지 두개에 적용되는 힘을 서로 스프링의 힘으로 인해 반작용으로 작용시키면 됩니다. 물체를 각각 1번과 2번으로 정의해 봅니다. 여기서 외부힘을 가하는 공은 오로지 2번공이라고 가정합니다. 역시 좌우키를 누름에 따라서 외부힘은 왼쪽 또는 오른쪽으로 힘을 가하도록 되어 있습니다. 이 스프링이 늘어나는 길이를 x2-x1로 정하면 2번공에 가해지는 스프링 힘은 -k(x.. 2017. 11. 8.
6. 스크립트- 형태 안녕하세요. 승승이입니다.기본강좌로 형태 관련 블록들을 알아봅니다. 1. 형태 탭: 형태 블록을 사용하기 위해서는 동작탭을 선택해야 합니다.2. 형태 블록: 형태 관련 동작을 수행하기 위한 블록들이 모여있습니다.3. 모양, 배경이름, 크기 변수: 스프라이트의 모양과, 현재 배경, 그리고 스프라이트의 크기를 변수로 사용할 수 있습니다. 스크립트가 단어를 일정 시간동안 말합니다. (말이 끝날때까지 스크립트는 정지됨)일정시간 끝나면 말풍선이 사라집니다. 스크립트가 단어를 말합니다. 말을 없애기 위해서는 스프라이트를 숨기거나, 빈칸을 말하게 해야 합니다. 스크립트가 단어를 일정 시간동안 생각합니다. (말이 끝날때까지 스크립트는 정지됨)일정시간 끝나면 말풍선이 사라집니다. 스크립트가 단어를 생각합니다. 말을 없애.. 2017. 11. 8.
스크래치로 물리실험하기-4. 스프링실험 안녕하세요. 승승이입니다.이번에는 스프링 실험을 하겠습니다. 스프링의 특징으로는 스프링이 늘어난 만큼 힘을 반대로 가한다는 것입니다. 그 점을 감안하여 다음과 같은 시스템을 생각해 봅니다. 여기서 거리 L은 영점(0,0)에서의 거리입니다.이것은 오로지 x좌표이므로 x=l이 됩니다.k값은 임의의 스프링 상수입니다. 스프링의 종류에 따라 상수가 클 수도 있고 작을 수 있습니다. 이것은 실험할 때 임의로 정하면 됩니다. 이제 프로그램으로 작성해 봅니다. 참 쉽죠? 시스템이 간단한 만큼 프로그램도 매우 간단합니다.가속하는 주는 부분만이 변경됩니다. 스크립트 보기: https://scratch.mit.edu/projects/184627840/ 2017. 11. 7.
11월 6일 티스토리에 swf 올리기 swf를 파일로 올린 후에 HTML 수정으로 들어갑니다.그리고 swf부분을 찾아서 아래 코드 입력합니다. 아참, 단축키 설정도 필수임. swf올리기 자세한 설명:http://hpnote.tistory.com/1021 단축키 해제:http://blackheartman.tistory.com/5173 2017. 11. 6.
스크래치로 물리실험하기-3. 마찰력 실험 안녕하세요. 승승이입니다.지난번에서 힘과 가속도, 속도, 위치에 대한 식을 프로그램에서 구현해봤습니다.이번에는 마찰력을 넣을 차례입니다.마찰력에는 종류가 여러가지 많습니다. 지면마찰도 있고 공기저항도 있고 여러가지입니다.공기저항력은 저속일 때는 속도에 비례, 고속이면 속도의 제곱이 비례합니다.지면마찰력은 정지마찰과 운동마찰이 있는데, 정지마찰력은 속도가 0일 때 일정 힘 이하에서는 정지하도록 되어 있는 마찰력입니다. 운동마찰은 운동하기 시작하면 일정한 값으로 적용되는 마찰력입니다.여기서는 어떠한 이유로 인해 속도에 비례하는 마찰력을 만들어 볼까 합니다. 그러면 공이 전체 받는 힘 F는 외력과 마찰력만을 고려하고, 마찰력이 속도에 비례하도록 결정하면 됩니다. 가속도, 속도, 위치에 대한 공식은 변함이 없습.. 2017. 11. 6.