전체 글 78

[Unity] 코드: 안티데시스 보스전 리빌드하기 / 5주차

2025. 6. 5 플레이어가 NPC와 상호작용을 할 때 대사창이 보여지는 것을 구현할 것이다우선 NPC 오브젝트 하위에 대사창이 보여질 canvas와 설명문구를 넣는다canvas는 world space 기준으로 설정한다 처음엔 안보였으나 UI 깎기를 수차례 시도한 후에 보여졌다이제 여기에 이전에 사용했던 대사 스크립트를 적용할 것이다 흠... 그런데 대사 스크립트를 재사용하려고 보니 필요없이 참고된 것이 많다. 가령 bossHealth와 startGame 변수는 사용하지 않을 것이다.그렇다면 NPC대사를 위해 이 스크립트를 새로 작성하고 어느 정도 가공해야 할까? 하지만 NPC 대사 뿐만 아니라 추후 구현할 플레이어의 대사에도 이런 방식으로 구현해야 할까? 모든 대사 기능은 diaglogues 배열에 ..

Unity 2025.06.16

[Unity] 코드: 안티데시스 보스전 리빌드하기 / 4주차

2025. 5. 30 보스가 잡몹을 소환할 때 이것은 어떻게 관리할 수 있을까?반복적으로 잡몹을 생성하고 삭제하면 많은 자원이 소모될 것이다따라서 이것은 오브젝트 풀링 방법으로 관리하는 것이 좋겠다디자인 패턴으로 치면 싱글톤 패턴이다. 잡몹은 보스 주변에 생성되고, 생성될 때마다 카메라가 살짝씩 위아래로 흔들리는 연출을 더할 것이다소환될 때마다 풀에서 꺼내 위치가 초기화되고 플레이어를 따라다닌다. 이런 식으로 자유롭게 소환이 가능했으면 한다 먼저 프리팹 배열과 그것을 담을 풀 리스트를 선언한다.풀 리스트는 프리팹의 길이만큼 초기화되고, 10개의 잡몹을 만들 것이다. 또한 Get에서 현재 오브젝트가 비어있다면 풀의 인덱스로 오브젝트를 넣어준다. 이후 적 스포너 스크립트에서, 풀링 스크립트를 담은 게임 오브..

Unity 2025.06.13

[알고리즘] 1차원 DP 공식

DP 공부하다가 어떤 변수에 대해 식을 세워야 하는지 헷갈려서 정리해보았다. *1차원 DP 공식for (int i = 최대한도; i >= 비용; i--) dp[i] = max(dp[i], dp[i - 비용] + 보상); cout 이하는 적용할 수 있는 문제와 내가 푼 코드다메인 함수 시작 전 dp배열을 초기화 하는 것도 잊지 말자! 1. 백준 12865번 - 평범한 배낭: https://www.acmicpc.net/problem/12865#include #include using namespace std;int dp[100005] = {};int main(){ int N, K, W, V; cin >> N >> K; while (N--) { cin >..

Study 2025.06.09

[Unity] 코드: 안티데시스 보스전 리빌드하기 / 3주차

2025. 5. 25 하루종일 포폴이랑 자소서 다듬고 인턴십 지원 제출했다. 하얗게 불태웠다 보스전에 사용될 기계팔 잡몹을 추가하고 있다 잡몹과 보스 애니메이션을 모두 블렌드 트리로 바꾸었다 원래 게임에서 보스전은 이렇게 진행되었다. 1. 시작과 동시에 보스에게 방어막이 생기고 데미지가 들어가지 않는다.2. 동시에 잡몹이 3마리 소환되며 이 또한 데미지가 들어가지 않는다.2. NPC에게 다가가서 방어막 해킹을 도와달라 요청하고, 이 때부터 잡몹을 공격할 수 있다. 일정한 시간이 지난 후 보스의 방어막이 풀린다.3. 보스 체력이 떨어질수록 소환되는 잡몹이 많아지며 벽에 플레이어를 쏘는 포탑이 추가된다.4. 보스의 방어막이 풀릴 때마다 플레이어를 쫓아가며, 일정 시간이 지나면 플레이어 동료의 지원사격이 추가..

Unity 2025.05.29

로지텍 마우스 왼쪽 클릭 문제 해결방법

1. 마우스 클릭이 잘 안눌리는 부분을 열어2. 입술을 오므린다3. 강하게 압축 입바람을 쏴준다 2023년 7월부터 잘 사용하기 시작한 나의 로지텍 M650 L사이즈...최근 들어 갑자기 왼쪽 클릭이 헐거워졌다.큰 힘을 주어야만 클릭 입력이 되었다. 그래서 네이버 쇼핑물에서 발품 파다가 마우스 가격이 생각보다 더 비싸져 이내 마우스 분해까지 생각하며 여러 방법을 찾다가, 헛웃음이 나올 정도로 간단히 해결해서 어이없을 반 해결방법 공유 반 하는 심정으로 작성하였다. 정말 간단하다클릭이 잘 안되는 부위를 살짝 들어 후후 부는 것이다.입술을 오므려 정조준한 뒤 압축 입바람을 불어주면 된다. -도움이 되었던 글들- 로지텍 마우스 왼쪽 클릭 문제 해결1년 전부터 손목이 안 좋아져서 손목이 덜 꺾이는 로지텍 ..

주절주절 2025.05.26

[Unity] 코드: 안티데시스 보스전 리빌드하기 / 2주차

2025. 5. 16 지난 날 동안 생일 겸 알바가 겹쳤다생일 축하한다 나자신! 게임 시작 시 나오는 안내 문구를 추가하고 있다. 2025. 5. 17 알만툴에서 사용했던 효과음을 가져와서 import했다. (+무기를 휘두를 때도 효과음을 추가했다)글자가 나오는 코드, 마지막 문구까지 출력된 후 클릭을 기다리는 것 모두 코루틴으로 구현했다. 글자가 출력될 때 너무 따각따각 효과음이 나왔었는데 두 글자마다 한번씩 재생하여 해결하였다 문뜩 사소한 함수라도(ex. 클릭 기다리기) 이걸 코루틴으로 구현하면 손해가 아닐까..? yield return null;을 해야하므로..?이를 간단하게 Update로 구분할 수 있는 것이 더 좋지 않을까 궁금해진다. 가령 Update로 마우스 입력을 제어할 경우 대사창이 ..

Unity 2025.05.18

[Unity] 코드: 안티데시스 보스전 리빌드하기 / 1주차

CS 공부와 면접 스터디 및 코테로 취준 생활을 보내다가 유니티로 포폴을 하나 더 만들면 좋을 것 같다는 생각이 들었다. 포폴 주제를 많이 고민해보며 모작 쪽으로 방향이 잡히다가... 언뜻 내가 만들었던 게임을 유니티로 리빌드해보면 어떨까?! 싶었다. 코드: 안티데시스 Demo on SteamAn irreversible choice between brothers, endless pursuit, and hidden truths. What awaits at the end...?store.steampowered.com(이 게임 맞다 으흐흐, 홍보 겸 링크를 올려보았다) 코드 안티데시스는 RPG Maker, 유니티나 언리얼과 다르게 비주류 엔진으로 만든 것이라 일종의 사이드 프로젝트가 되었다.게임 후반부 보..

Unity 2025.05.15

[Programmers] [C++] 멀리 뛰기 / 피보나치 수

효진이는 멀리 뛰기를 연습하고 있습니다.효진이는 한번에 1칸, 또는 2칸을 뛸 수 있습니다. 칸이 총 4개 있을 때, 효진이는(1칸, 1칸, 1칸, 1칸)(1칸, 2칸, 1칸)(1칸, 1칸, 2칸)(2칸, 1칸, 1칸)(2칸, 2칸)의 5가지 방법으로 맨 끝 칸에 도달할 수 있습니다.멀리뛰기에 사용될 칸의 수 n이 주어질 때, 효진이가 끝에 도달하는 방법이 몇 가지인지 알아내,여기에 1234567를 나눈 나머지를 리턴하는 함수, solution을 완성하세요.예를 들어 4가 입력된다면, 5를 return하면 됩니다.n은 1 이상, 2000 이하인 정수입니다.입출력 예n result4 53 3- 입출력 예 #1위에서 설명한 내용과 같습니다.- 입출력 예 #2(2칸, 1칸)(1칸, 2칸)(1칸, 1칸, 1칸)..

[Programmers] [C++] 주식가격 / 이진 변환 반복하기

초 단위로 기록된 주식가격이 담긴 배열 prices가 매개변수로 주어질 때,가격이 떨어지지 않은 기간은 몇 초인지를 return 하도록 solution 함수를 완성하세요.prices의 각 가격은 1 이상 10,000 이하인 자연수입니다.prices의 길이는 2 이상 100,000 이하입니다.prices return[1, 2, 3, 2, 3] [4, 3, 1, 1, 0]1초 시점의 ₩1은 끝까지 가격이 떨어지지 않았습니다.2초 시점의 ₩2은 끝까지 가격이 떨어지지 않았습니다.3초 시점의 ₩3은 1초뒤에 가격이 떨어집니다. 따라서 1초간 가격이 떨어지지 않은 것으로 봅니다.4초 시점의 ₩2은 1초간 가격이 떨어지지 않았습니다.5초 시점의 ₩3은 0초간 가격이 떨어지지 않았습니다.#include #inclu..