[Unity C#] Photon Fusion2 환경에서 Photon Voice2 사용하기
Unity/공부2025. 12. 11. 14:28[Unity C#] Photon Fusion2 환경에서 Photon Voice2 사용하기

게임 리팩토링 작업을 하면서 Voice 시스템도 수정해야 할 필요가 생겼다.여러 시행착오를 거쳐서 적용한 방식을 블로그에 적어보고자 한다.시작하기에 앞서당연한 얘기지만, Fusion2와 Voice2를 먼저 프로젝트에 설치해야한다.Fusion2 : https://assetstore.unity.com/packages/tools/network/photon-fusion-267958 Photon Fusion | 네트워크 | Unity Asset StoreGet the Photon Fusion package from Photon Engine and speed up your game development process. Find this & other 네트워크 options on the Unity Asset Stor..

『 WASD : 토리의 모험 』  스팀 출시
MyStory2025. 7. 19. 22:46『 WASD : 토리의 모험 』 스팀 출시

안녕하세요.이번에 제가 개발자로 참여한 게임이 스팀에 출시 되었습니다.WASD : 토리의 모험에 대해 간략하게 설명해드리겠습니다.『 WASD : 토리의 모험 』 은 어떤 게임인가요?"WASD"는 2 ~ 4명의 플레이어가 함께 즐기는 온라인 협동 게임입니다. 각 플레이어는 인원 수에 따라 W, A, S, D 키 중 1 ~ 2개의 키를 담당하여 캐릭터를 조작하게 됩니다. 혼자서는 움직일 수 없고, 오직 팀원들과의 협력을 통해서만 앞으로 나아갈 수 있습니다. 『 WASD : 토리의 모험 』 플레이 방법 - 역할 분담 2~ 4명의 플레이어가 인원 수에 맞춰 W, A, S, D 키 중 1 ~ 2개의 조작을 담당합니다. - 이동 키를 누르면 어느 한 방향으로 계속 이동하게 됩니다. 이는 멈출 ..

[백준 C++] 21736 : 헌내기는 친구가 필요해
CSE/코딩 문제풀이2025. 4. 19. 18:38[백준 C++] 21736 : 헌내기는 친구가 필요해

https://www.acmicpc.net/problem/21736DFS BFS다 가능한 문제이다.입력으로 주어진 맵에 따라서 돌아다니며 방문할 수 있는 위치에 있는 P의 갯수를 찾으면 된다.전형적인 탐색 문제이므로 아는 방식 그대로 적용해서 풀면 된다.#include #include #include using namespace std;int dx[] = { 1, 0, -1, 0 };int dy[] = { 0, 1, 0, -1 };vector> campus;int N, M;void calculate(int startY, int startX) { int ans = 0; queue> que; que.push(make_pair(startY, startX)); campus[startY].at(startX) = ..

[백준 C++] 1541 : 잃어버린 괄호
CSE/코딩 문제풀이2025. 4. 19. 17:52[백준 C++] 1541 : 잃어버린 괄호

https://www.acmicpc.net/problem/1541연산자가 +와 -로만 구성되어 있다.괄호는 자유롭게 사용할 수 있으므로 가장 작은 수를 만든다고 하면 작은 수에서 큰 수를 빼주면 된다. 여기서 큰 수를 빼주는 방법은 간단하게 첫번째로 나오는 마이너스 연산자의 뒤에 있는 숫자를 다 묶어서 더해주면 된다. 즉 이 문제의 포인트는 첫번째로 나오는 마이너스를 찾아주는 것이다.#include #include using namespace std;int calculate(string input){ string temp; int sum = 0; bool bMinus = false; for (int i = 0; i > input; cout stoi로 숫자들을 뽑아주다가 마이너스 연산자가 나오면 bool ..

[Unity C#] 자연스럽게 등장하는 UI 애니메이션 구현
Unity/공부2025. 4. 19. 16:21[Unity C#] 자연스럽게 등장하는 UI 애니메이션 구현

게임에서 UI 요소가 갑자기 "툭!" 하고 뜨는 것보다, 자연스럽게 슬라이드 되며 등장하면 훨씬 깔끔할 것이다.화면 바깥에서부터 슬라이드 인(Slide-In) 되는 애니메이션을 간단한 C# 스크립트로 구현해보자.https://zeniff.tistory.com/88 [Unity C#] Dynamic Menu에 따른 카메라 움직임 구현World Makers에서 제작한 Deceit2 라는 게임의 메인메뉴 구성이 너무 마음에 들었다.이를 필자의 프로젝트에 적용한 방법을 적어본다시작하기에 앞서메뉴 선택에 따라 카메라가 특정 공간으로 부드zeniff.tistory.com이전 글에서 Menu를 따라 카메라가 움직이게 되는데, 이와 함께 자연스럽게 UI가 화면 바깥에서 슬라이드 인 되면서 들어오게 할 것이다. 구성 요..

[Unity C#] Dynamic Menu에 따른 카메라 움직임 구현
Unity/공부2025. 4. 19. 14:36[Unity C#] Dynamic Menu에 따른 카메라 움직임 구현

World Makers에서 제작한 Deceit2 라는 게임의 메인메뉴 구성이 너무 마음에 들었다.이를 필자의 프로젝트에 적용한 방법을 적어본다시작하기에 앞서메뉴 선택에 따라 카메라가 특정 공간으로 부드럽게 이동하면서 공간이 전환되는 다이내믹한 메뉴를 만들고 싶었다.Deceit2의 메뉴 구성을 참고하여 필자의 프로젝트에 다음과 같이 구현해보았다. 위에 Setting과 Exit는 공간을 채우기 위한 용도이고, 플레이 와 장비 탭으로만 구현을 하였다. 다음과 같이 각각의 기능을 넣어둔 여러개의 캔버스가 존재한다.상단 Canvas_Bar에서 버튼을 누를 때마다 카메라 이동 및 메뉴 표시가 될 것이다.카메라 이동 애니메이션 구현배경은 다음과 같은 맵을 준비하였다. 프로젝트 창에서 마우스 우클릭 > Create ..

[Unity C#] 씬 이동 시 로딩 화면 만들기
Unity/공부2025. 3. 26. 21:36[Unity C#] 씬 이동 시 로딩 화면 만들기

메인 화면에서 다른 씬으로 이동할 때, 게임이 멈춘 상태로 씬을 로딩하는 것보단 움직이는 로딩 화면을 보고 있는 것이 나을 것이다.이 로딩 화면 기능을 만들어보자유니티 에디터에서 준비필자가 만들 로딩 화면은 Scene 1 -> Scene 2 로 넘어갈 때, 중간에 로딩 Scene으로 넘어가는 것이 아닌 Canvas를 띄워 안보이는 뒷편에서 Scene2를 로딩하고 바로 이동하는 식으로 진행할 것이다.기본 씬 하이어라키에서인 화면에서 다른 씬으로 이동할 때, 게임이 멈춘 상태로 씬을 로딩하는 것보단 움직이는 로딩 화면을 보고 있는 것이 나을 것이다.이 로딩 화면 기능을 만들어보자유니티 에디터에서 준비필자가 만들 로딩 화면은 Scene 1 -> Scene 2 로 넘어갈 때, 중간에 로딩 Scene으로 넘어가는..

[백준 C++] 18870 : 좌표 압축
CSE/코딩 문제풀이2025. 3. 15. 16:48[백준 C++] 18870 : 좌표 압축

https://www.acmicpc.net/problem/18870좌표 압축이란? 간단하게 말해서 존재하는 좌표 중 비교하는 자신보다 낮은 좌표의 갯수를 대신 출력하는 것이다. 입력이 2 4 1 3 이라고 하면 압축 시 1 3 0 2 가 되는 것이다.#include #include #include using namespace std;int main(){ vector list; vector solve; int N; cin >> N; for (int i = 0; i > temp; list.push_back(temp); solve.push_back(temp); } sort(solve.begin(), solve.end()); solve.erase(unique(solve.begin(), solve.end()..

[Unreal Engine] 언리얼 엔진의 멀티 플레이 환경
Unreal/공부2025. 3. 11. 22:00[Unreal Engine] 언리얼 엔진의 멀티 플레이 환경

https://zeniff.tistory.com/23 [Unreal Engine C++] Online Subsystem을 활용한 멀티플레이 구현언리얼에는 온라인 서브시스템 Steam API를 통해 만든 게임을 밸브의 스팀 플랫폼에 출시하는 것이 가능하다. 그 기능을 이용해서 멀티 기능을 만들어보자 시작하기 전 준비 Online Subsystem을 사용하zeniff.tistory.com이전에 이 글에서 Steam API를 이용해 멀티플레이 환경을 만들어보았다. 이번에는 근본적으로 접근하여 언리얼 엔진에서 어떤 식으로 멀티 환경을 관리하는지를 이해해보고 이를 정리해보고자 한다. 언리얼엔진에서의 멀티플레이 게임 프로젝트를 시작할 때 처음부터 멀티 플레이 환경을 생각하지 않고 싱글 플레이로만 가정하게 된다면 이..

[백준 C++] 2805 : 나무 자르기
CSE/코딩 문제풀이2025. 3. 10. 21:06[백준 C++] 2805 : 나무 자르기

https://www.acmicpc.net/problem/2805간단하게 생각해서 맨 위에서부터 잘라나가면 정답을 찾을 수 있지 않을까? 지만N, M의 범위가 굉장히 크기 때문에 시간 초과가 발생할 것이다. 그렇기 때문에 이분 탐색을 활용해 문제를 풀어야 한다.#include #include #include using namespace std;int N, M;vector list;int solve(){ int answer = 0; int minValue = 0; int maxValue = list[N - 1]; while (minValue midValue) sum += list[i] - midValue; } if (sum > M) { minValue = midValue + 1; ans..

image