728x90
반응형

Game Development, 게임개발 182

게임 물리 - 2가지 이상의 힘이 작용할 때

우리가 등속 직선운동을 배우고 나서 배우는 것이 있는데 바로 포물선 운동이다. 각 축 간의 운동이 다를 때이다. 수평으로는 등속직선운동이 수직으로는 등가속도운동이 2가지가 합쳐져 포물선 운동이 만들어진다. 실제로 x축 따로 y축 따로 움직이는 것은 아니지만 2가지로 나누어 볼 수 있다는 말이다. 사실 중력가속도를 직접 유도가능한데... 그것은 공학자에게는 사치이기에 유명한 중력가속도 상수인 9.8m/s2 이나 또는 그냥 g로 바꾸어서 쓰도록 하자. 사실 앞서 배운 등속운동에 대해서는 거리 = 시간 * 속력이 된다. 하지만 속도가 변하는 운동에서는 위의 공식이 통하지 않는다. 이를 우리는 적분을 이용하여 순간 속력 * 순간 시간을 더해서 이동 거리를 구한다. 중력과 같이 가속도가 정해져있는 등가속도에서는 ..

게임 물리 - 라디안의 이용

이전의 글에서는 각 축 이동만 배웠다. 미적분학에서 직교좌표계를 배운 다음 바로 배우는 것 극좌표계 우리는 직교좌표계보다 극좌표계를 많이 쓸 수 도 있다. 고등학교에서 한정되어 있던 생각이 대학생이 되어 넓혀지는 느낌이다. 아무튼 우리는 이전 글에서 축으로의 이동만 배웠다. 하지만 30도, 60도 이동을 하고 싶다면 어떻게 해야할까??? 키보드가 아니라 조이스틱의 입력을 받는 것은 어떨까? **사실 직교좌표계도 언제든지 극좌표계로 변환이 가능하기 때문에 둘이 같다고 봐도 무방하다. 그냥 표현의 차이다. 원하는 방향이 축으로 설명하기 힘들다면..? 각으로 표현한다. 이게 수학이다. 수학은 표현을 다르게 해서 더 쉽게 만든다. 수학이란 자신의 아는 것을 전달하기 위한 수단이며 수학을 잘한다는 것은 남을 잘 ..

게임 물리 - 등속 직선 운동

물리를 고등학교에서 처음 접했다면 솔직히 생각은 안나지만 가장 처음 접한 운동이 등속 직선이 아닌가 싶다. 등속 직선 운동이란 일정한 속도로 직선으로 이동을 한다고 생각하면 된다. 여기서 핵심은 속도가 변하지 않는다는 것이다. 운동 중에 운동 방향 속력이 바뀌지 않는 다는 것이다. ** 등속도 운동과 같다. (속도는 속력+ 방향이라 배웠다면) 우리는 일반적으로 속력, 거리, 시간으로 나누어서 관찰한다. 위의 그래프를 보면서 시간을 기준으로 나머지 것들을 한 번 살펴보자. 게임에서의 모든 이동은 아니지만 일반적으로 FPS를 보았을 때 내가 가장 먼저 접한 FPS가 서든 어택이다. W를 누르면 앞으로 이동 S를 누르면 뒤로 이동 A,S를 누르면 좌우 이동이 되었다. 또한 좌우로 눌렀을 때는 제자리 이동이 되..

게임 일시정지하기, 퍼즈, pause 만들기 [Unity]

간단하다. 하지만 응용은 무궁무진하다. 버튼을 눌러서 일시정지 상태를 조절할 수 있고 어떠한 조건에 걸리면 일시정지 후 어떤 행동을 할 수 있다. using System.Collections; using System.Collections.Generic; using UnityEngine; public class Util : MonoBehaviour { bool isPause; //초기화 void Start () { IsPause = false; } void Update () { if (여기서 내가 원하는 조건이 들어갈 수 있다.) { //퍼즈 if (IsPause == false) { Time.timeScale = 0; IsPause = true; return; } // 퍼즈 풀기 if (IsPause =..

C#에 대한 모든 특징, The features of C#

우리나라에서 그렇게 수요가 많지는 않지만 외국에서 수요가 많은 C# 정확히 .NET 계열.. C#에 대해서 알아보자 C#은 닷넷 프레임워크 위에서 실행된다.(범용성이 좋은 이유) ** .NET Framework는 MS에서 개발한 윈도우 프로그램 개발 및 실행 환경이다. 동작은 공통 언어 기반, CLI ( Common Language Infrastructure) 통해서 이루어진다.공통이라는 단어가 주는 어감이 있듯CLI는 프로그래밍 언어에 무관하게 동작하는 환경을 만들어 준다. 자바의 VM 같은 느낌이다.C# 외에도 다른 언어가 있지만 각 언어에 해당하는 컴파일러가 공통 중간 언어, CIL( Common Intermediate Language)로 변환해준다.또한 그 중간언어는 공통 언어 런타임, CLR (..

2진법 규칙에 맞춰서 출력하기 - C#

내가 돌려서 풀었을지도.. 다른 풀이가 있을 것 같긴하더라. 그래도 나랑 시간복잡도 차이는 크지 않을 것 같아 생략. https://www.codingame.com/ide/puzzle/chuck-norris 위의 규칙을 바탕으로 구현한다. #풀이 using System; using System.Linq; using System.IO; using System.Text; using System.Collections; using System.Collections.Generic; /** * Auto-generated code below aims at helping you parse * the standard input according to the problem statement. **/ class Soluti..

주어진 글자 디스플레이에 출력하기 - Unity

뭐 C#이다만 Unity에서도 응용가능하니까.. 솔직히 처음에 쉽다고 생각했지만 조금 시간이 걸렸고 정규표현식으로 더 완벽하게 하려고 시간 더 걸렸다. https://www.codingame.com/ide/puzzle/ascii-art 또한 '?' 가 Z 다음 아스키코드 문자가 아니기 때문에 예외처리를 해줬어야 했다. 이런 거지같은 ㅋㅋㅋㅋㅋ 아스키코드 값을 뭘로 주든 순서대로 준다면 모든 문자를 디스플레이에 표시할 수 있는 코드다. 물론 정규표현식이나 ToUpper() 같은 것은 조금 수정해야겠지만 아무튼 그렇다.

주어진 기준에 가장 가까운 값 출력하기 - Unity

이건 조금 생각해봐야 했던 문제다. 최솟값임을 알기 위해서는 모든 데이터를 훑어봐야하고 최솟값을 구했다면 해당하는 값이 무엇인지 조사해봐야했다. https://www.codingame.com/ide/puzzle/temperatures #풀이 using System; using System.Linq; using System.IO; using System.Text; using System.Collections; using System.Collections.Generic; /** * Auto-generated code below aims at helping you parse * the standard input according to the problem statement. **/ class Solution ..

오브젝트를 해당 위치로 옮기기 - Unity

이 문제도 기본적이면서 어려운 문제일 수 있다. 이 역시 생각의 흐름을 써놓아야 하기 때문에 기록한다 https://www.codingame.com/ide/puzzle/power-of-thor-episode-1 #풀이 using System; using System.Linq; using System.IO; using System.Text; using System.Collections; using System.Collections.Generic; /** * Auto-generated code below aims at helping you parse * the standard input according to the problem statement. * --- * Hint: You can use the de..

가장 큰 값부터 없애기 - C#

뭐 어렵지 않은데 어떤 언어로도 구현할 수 있으려면 내 생각 과정을 자세히 적어야 할 것 같아서 기록한다. https://www.codingame.com/ide/puzzle/the-descent #풀이 using System; using System.Linq; using System.IO; using System.Text; using System.Collections; using System.Collections.Generic; /** * The while loop represents the game. * Each iteration represents a turn of the game * where you are given inputs (the heights of the mountains) * and w..

728x90
반응형