본문 바로가기
[Unity] 유니티에서 사용 가능한 디자인 패턴 아직 다듬어지지 않은 필기글이기 때문에 틀린 내용이나 아직 정리가 덜 된 부분이 (분명히) 있습니다... 디자인 패턴 디자인 패턴은 게임 설계할 때, 초반에 결정됨. 그래서 초반에 잘 결정해야 함. 디자인 패턴은 모든 게임에 범용적으로 설정되지 않음. 게임마다 다른 특성을 가지고 있기에 게임마다 다른 디자인 패턴을 사용할 수밖에 없음. 사용하는 플랫폼(PC, Web, Mobile), 언어에 따라 디자인 패턴은 달라짐. 각 디자인 패턴의 특성을 알고 내가 만들 게임에는 어떤 패턴을 적용해야겠다 구상, 이후 직접 제작하면서 체득을 해야 함. 원본 코드를 찾은 후 내 게임에 맞추어 적용, 응용하는 것이 필요. 자료실 [GitHub] Unity-Programming-Patterns 게임 생성 Builder : .. 2022. 12. 18.
[백준] 1913 C# 달팽이 달팽이 문제 홀수인 자연수 N이 주어지면, 다음과 같이 1부터 N2까지의 자연수를 달팽이 모양으로 N×N의 표에 채울 수 있다. 9 2 3 8 1 4 7 6 5 25 10 11 12 13 24 9 2 3 14 23 8 1 4 15 22 7 6 5 16 21 20 19 18 17 N이 주어졌을 때, 이러한 표를 출력하는 프로그램을 작성하시오. 또한 N2 이하의 자연수가 하나 주어졌을 때, 그 좌표도 함께 출력하시오. 예를 들어 N=5인 경우 6의 좌표는 (4,3)이다. 입력 첫째 줄에 홀수인 자연수 N(3 ≤ N ≤ 999)이 주어진다. 둘째 줄에는 위치를 찾고자 하는 N2 이하의 자연수가 하나 주어진다. 출력 N개의 줄에 걸쳐 표를 출력한다. 각 줄에 N개의 자연수를 한 칸씩 띄어서 출력하면 되며, 자릿.. 2022. 11. 15.
[백준] 1026 C# 보물 문제 1026번: 보물 첫째 줄에 N이 주어진다. 둘째 줄에는 A에 있는 N개의 수가 순서대로 주어지고, 셋째 줄에는 B에 있는 수가 순서대로 주어진다. N은 50보다 작거나 같은 자연수이고, A와 B의 각 원소는 100보다 작거 www.acmicpc.net 옛날 옛적에 수학이 항상 큰 골칫거리였던 나라가 있었다. 이 나라의 국왕 김지민은 다음과 같은 문제를 내고 큰 상금을 걸었다. 길이가 N인 정수 배열 A와 B가 있다. 다음과 같이 함수 S를 정의하자. S = A[0] × B[0] + ... + A[N-1] × B[N-1] S의 값을 가장 작게 만들기 위해 A의 수를 재배열하자. 단, B에 있는 수는 재배열하면 안 된다. S의 최솟값을 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 N이 주어진다. .. 2022. 11. 15.
[백준] 1920 C# 수 찾기 문제 N개의 정수 A[1], A[2], …, A[N]이 주어져 있을 때, 이 안에 X라는 정수가 존재하는지 알아내는 프로그램을 작성하시오. 입력 첫째 줄에 자연수 N(1 ≤ N ≤ 100,000)이 주어진다. 다음 줄에는 N개의 정수 A[1], A[2], …, A[N]이 주어진다. 다음 줄에는 M(1 ≤ M ≤ 100,000)이 주어진다. 다음 줄에는 M개의 수들이 주어지는데, 이 수들이 A안에 존재하는지 알아내면 된다. 모든 정수의 범위는 -231 보다 크거나 같고 231보다 작다. 출력 M개의 줄에 답을 출력한다. 존재하면 1을, 존재하지 않으면 0을 출력한다. 예제 입력 1 5 4 1 5 2 3 5 1 3 7 9 5 예제 출력 1 1 1 0 0 1 풀이 입력을 받은 뒤, 첫번째 배열은 Sort를 이.. 2022. 11. 8.
[백준] 10816 C# 숫자 카드 2 문제 숫자 카드는 정수 하나가 적혀져 있는 카드이다. 상근이는 숫자 카드 N개를 가지고 있다. 정수 M개가 주어졌을 때, 이 수가 적혀있는 숫자 카드를 상근이가 몇 개 가지고 있는지 구하는 프로그램을 작성하시오. 입력 첫째 줄에 상근이가 가지고 있는 숫자 카드의 개수 N(1 ≤ N ≤ 500,000)이 주어진다. 둘째 줄에는 숫자 카드에 적혀있는 정수가 주어진다. 숫자 카드에 적혀있는 수는 -10,000,000보다 크거나 같고, 10,000,000보다 작거나 같다. 셋째 줄에는 M(1 ≤ M ≤ 500,000)이 주어진다. 넷째 줄에는 상근이가 몇 개 가지고 있는 숫자 카드인지 구해야 할 M개의 정수가 주어지며, 이 수는 공백으로 구분되어져 있다. 이 수도 -10,000,000보다 크거나 같고, 10,0.. 2022. 11. 8.
[Unity] 어몽어스 미니게임 - 방패 임무 (Among Us Shield Task) Among Us 미니 게임 중 Shield 게임을 만들어보았다. 준비 Canvas - Panel 하나 만들고 배경 이미지 (TurtleBackGround), 12각형 이미지, 육각형 이미지, Exit 버튼, GameEnd Text 등을 만들어둔다. 배경 이미지 TurtleBackGround와 효과음은 아래의 사이트에서 구할 수 있다. 12각형과 육각형은 직접 PPT에서 제작했다. 아래의 이미지를 써도 좋고 직접 만들고 싶다면 PPT에서 만드시길 바란다. 흰 윤곽선을 제법 두껍게 주었고 도형 내부는 흰색으로 채운 뒤 일부러 투명도를 50% 정도 주었다. Prime Shields Prime Shields is a short task in Among Us, featured on The Skeld and MIR.. 2022. 11. 4.
[Unity] 베지어 곡선 활용해 오브젝트 곡선 이동 시키기 목표 베지어 곡선을 활용해 오브젝트가 예쁜 곡선을 그리며 이동하게 할 수 있다. 참고한 영상은 여기 Bezier 곡선을 따라 이동하는 오브젝트 구현 using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEditor; public class BezierCurve : MonoBehaviour { public GameObject obj; [Range(0, 1)] public float testVal = 1; [SerializeField] public float moveSpeed = 0.0001f; public Vector3 P1; public Vector3 P2; public Vector3 P3; pub.. 2022. 11. 3.
[백준] 1065 한수 C# 한수 문제 어떤 양의 정수 X의 각 자리가 등차수열을 이룬다면, 그 수를 한수라고 한다. 등차수열은 연속된 두 개의 수의 차이가 일정한 수열을 말한다. N이 주어졌을 때, 1보다 크거나 같고, N보다 작거나 같은 한수의 개수를 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 1,000보다 작거나 같은 자연수 N이 주어진다. 출력 첫째 줄에 1보다 크거나 같고, N보다 작거나 같은 한수의 개수를 출력한다. 예제 입력 1 110 예제 출력 1 99 예제 입력 2 1 예제 출력 2 1 예제 입력 3 210 예제 출력 3 105 예제 입력 4 1000 예제 출력 4 144 예제 입력 5 500 예제 출력 5 119 풀이 1,000보다 작거나 같은 자연수 N이 주어진다는 문제 조건을 읽으면 쉽게 풀 수 있었던 문.. 2022. 10. 25.
[백준] 10250 ACM 호텔 C# ACM 호텔 문제 ACM 호텔 매니저 지우는 손님이 도착하는 대로 빈 방을 배정하고 있다. 고객 설문조사에 따르면 손님들은 호텔 정문으로부터 걸어서 가장 짧은 거리에 있는 방을 선호한다고 한다. 여러분은 지우를 도와 줄 프로그램을 작성하고자 한다. 즉 설문조사 결과 대로 호텔 정문으로부터 걷는 거리가 가장 짧도록 방을 배정하는 프로그램을 작성하고자 한다. 문제를 단순화하기 위해서 호텔은 직사각형 모양이라고 가정하자. 각 층에 W 개의 방이 있는 H 층 건물이라고 가정하자 (1 ≤ H, W ≤ 99). 그리고 엘리베이터는 가장 왼쪽에 있다고 가정하자(그림 1 참고). 이런 형태의 호텔을 H × W 형태 호텔이라고 부른다. 호텔 정문은 일층 엘리베이터 바로 앞에 있는데, 정문에서 엘리베이터까지의 거리는 무시.. 2022. 10. 25.