목록전체 글 (93)
오르막길
최근 운 좋게 더 높은 급여에 더 가까운 위치로 이직에 성공했다. 내가 약 7년 간 방황했던 과정을 높게 평가해 주신 덕에 합격할 수 있었다.사실 그동안은 내가 방황했던 만큼 돌고 돌아 이 기회를 얻은 것 같아서 속이 후련하면서도 아쉽기도 하다. 그래서 회고를 적게 됐다.또 우연히 이 글을 읽게 되는 다른 방랑자?가 읽게 된다면 조금이나마 용기를 얻었으면 해서 공개적으로 글을 남긴다. 1. 학부시절 - 소프트웨어 융합과 (4년)사실 나는 학교에서 개발관련으로 배운 게 그다지 없다. 과 자체도 기존엔 00과였으나, SW와 융합된 지 얼마 안 된 학부였다.그래서 그런지 뭐든 겉핥기 식으로만 배웠다. 부족한 개발 개념은 인강과 동아리에서 배웠다. 깔짝 배우다 보니 학부생들도 학습에 대한 열의가 낮았다. 시험 ..
🧭 프로젝트 소개《야간경비일지(가제)》는 Unity 기반 1인 개발 프로젝트로,"스테이지 기반 라이트 공포 게임"이라는 콘셉트를 가진 모바일 게임입니다.플레이어는 ‘야간 순찰’이라는 설정 아래 매일 새롭게 주어지는 나폴리탄 괴담 규칙을 알아가며,이를 지키거나 파훼해 30일 동안 살아남아 일지를 남기는 것이 목표입니다.게임의 핵심 재미는 죽음을 통해 규칙을 발견하고, 이를 매뉴얼에 스토리를 알아가는 반복 구조에 있습니다.1일 차 루프를 완성하는 MVP(Minimum Viable Product)를 목표로,가장 핵심이 되는 시스템 구조를 중심으로 개발을 진행하고 있습니다. 🧪 현재 진행 중인 핵심로직 범위전체 게임은 30일간의 야간 근무를 배경으로 구성될 예정이며,이번 1차 개발 목표(MVP)는 그중 1일..
🧭 프로젝트 소개《야간경비일지(가제)》는 Unity 기반 1인 개발 프로젝트로,"스테이지 기반 라이트 공포 게임"이라는 콘셉트를 가진 모바일 게임입니다.플레이어는 ‘야간 순찰’이라는 설정 아래 매일 새롭게 주어지는 나폴리탄 괴담 규칙을 알아가며,이를 지키거나 파훼해 30일 동안 살아남아 일지를 남기는 것이 목표입니다.게임의 핵심 재미는 죽음을 통해 규칙을 발견하고, 이를 매뉴얼에 스토리를 알아가는 반복 구조에 있습니다.1일 차 루프를 완성하는 MVP(Minimum Viable Product)를 목표로,가장 핵심이 되는 시스템 구조를 중심으로 개발을 진행하고 있습니다. 🧪 현재 진행 중인 핵심로직 범위전체 게임은 30일간의 야간 근무를 배경으로 구성될 예정이며,이번 1차 개발 목표(핵심로직)는 그중 1..
🧭 프로젝트 소개《야간경비일지(가제)》는 Unity 기반 1인 개발 프로젝트로,"스테이지 기반 라이트 공포 게임"이라는 콘셉트를 가진 모바일 게임입니다.플레이어는 ‘야간 순찰’이라는 설정 아래 매일 새롭게 주어지는 나폴리탄 괴담 규칙을 알아가며,이를 지키거나 파훼해 30일동안 살아남아 일지를 남기는 것이 목표입니다.게임의 핵심 재미는 죽음을 통해 규칙을 발견하고, 이를 매뉴얼에 스토리를 알아가는 반복 구조에 있습니다.1일차 루프를 완성하는 핵심로직을 목표로,가장 핵심이 되는 시스템 구조를 중심으로 개발을 진행하고 있습니다. 🧭 프로젝트 목표이 게임은 다음과 같은 학습/도전 목적으로 기획되었습니다디자인 패턴 실습 (전략, 상태, 옵저버 등)유지보수가 쉬운 구조 설계Google Play 배포 및 광고 수..
✅ 기본 개념옵저버 패턴 (Observer Pattern)은 발행자와 구독자 간의 일대다 관계를 정의하여, 발행자의 상태가 변할 때 이를 구독자에게 자동으로 알리는 패턴이벤트 기반의 비동기 구조에서 자주 사용됨 🗂️ 주요 특징느슨한 결합: 발행자와 구독자가 서로 직접 참조하지 않음확장성: 구독자를 쉽게 추가하거나 제거 가능재사용성: 동일한 이벤트를 여러 구독자가 동시에 사용할 수 있음RuleTrigger는 옵저버 패턴으로 설계하는 게 좋음EventPublisher가 이미 간단한 옵저버 역할을 하고 있지만, 더 체계적으로 관리할 수 있음 📝 옵저버 패턴 적용 (RuleTrigger)EventPublisher - 이벤트 발송자RuleManager - 이벤트 수신자RuleData - 트리거 상태 관리 📂..
✅ 기본 개념상태 패턴 (State Pattern)은 객체의 상태에 따라 행동이 달라지도록 만드는 디자인 패턴.상태를 독립적인 클래스로 분리하여, 상태에 따른 행동을 각각의 클래스로 캡슐화.🗂️ 주요 특징유연성: 새로운 상태를 쉽게 추가 가능.코드 재사용성: 동일한 로직을 여러 객체에서 재사용 가능.응집도: 각 상태가 독립적인 로직을 가지므로 관리가 쉬움.느슨한 결합: 상태 전환 로직이 Context에 집중되어, 각 상태가 서로 직접 의존하지 않음.📝 상태 패턴 적용 (PlayerController)IdleState - 플레이어가 멈춰 있는 상태WalkingState - 플레이어가 이동 중인 상태InteractingState - 플레이어가 상호작용 중인 상태📂 구조1. 상태 인터페이스 (Player..
공부 배경가시화 모니터링 테스트 중, 규모에 비해 과한 성능이 요구되는 것을 발견하고 비코드적인 면으로 여러 최적화 시도를 하게 되었습니다.개발자 입장에서 코드 최적화도 중요하지만그 외 쉽게 놓칠 수 있는 최적화 방법을 정리해 두고자 글을 작성하게 되었습니다.앞으로도 놓쳤던 최적화 방법이 있다면 계속해서 추가할 예정입니다. 출처유니티 공식 문서를 바탕으로 유니티 21.3.16f1 버전에서 적용 가능하도록 작성되었습니다. 목차1. Occlusion Culling2. Resources 폴더3. Build Compression 설정 : WebGL 1. Occlusion Culling다른 오브젝트에 가려(오클루전된) 카메라에 보이지 않는 오브젝트의 렌더링을 비활성화하는 기능3D 컴퓨터 그래픽스에서는 대부분의..
공부 배경관제 시스템 가시화 업무 중, 건물 전체를 자연스럽게 보여주는 연출을 구현하기 위해 유니티 시네머신을 공부했습니다.시네머신은 기본적으로 정말 유용한 기능도 많고, 스크립트와 함께 활용하면 무궁무진한 연출이 가능합니다.필요한 상황에 따라 어떤 기능을 써야 할지 고민될 때 참고하기 위해 글을 작성하게 되었습니다. 출처https://www.youtube.com/watch?v=2oOIp22Y11U https://docs.unity3d.com/Packages/com.unity.cinemachine@2.8/manual/index.html About Cinemachine | Cinemachine | 2.8.9About Cinemachine Cinemachine is a suite of modules for ..
Unity 6 업데이트 기념 – 최신 게임 엔진 트렌드에 대한 개인적인 견해 및 Unity 6 챌린지 리뷰Unity (유니티)란?Unity 엔진은 게임 개발자가 20개 이상의 플랫폼과 수십억 대의 기기에서 비디오 게임을 제작할 수 있도록 지원하는 게임 및 앱 개발 소프트웨어이 소프트웨어는 다른 산업 분야에서도 활용되어 CAD 및 3D 데이터를 몰입형 앱과 경험으로 변환하여 언제 어디서나 모든 디바이스에서 사용 가능https://unity.com/ Unity 실시간 개발 플랫폼 | 3D, 2D, VR 및 AR 엔진엔터테인먼트, 영화, 자동차, 건축 등의 분야에서 활용할 수 있는 실시간 3D 게임, 앱, 경험을 만들고 성장시켜 보세요. 지금 바로 Unity를 시작해 보세요.unity.com 유니티(Uni..
지난 2024년 12월 7일, 넥슨의 대표적 게임 중 하나인 메이플 쇼케이스와 메이플콘에 참석했다.따라서 메이플콘 방문기와 그중에서 가장 인상 깊었던 메이플 월드에 대한 정보, 그리고 게임 개발에 관심이 많은 사람으로서의 개인적이고 짤막한 의견을 기술하고자 한다.참석하게 된 배경사실 난 진득한 메이플 유저는 아니고 여러 게임을 얕게 플레이하는 일명 찍먹 전문가이다.그러나 2023년도 아카데미 수료 즈음에 메이플 고인물 친구가 쇼케이스 티켓팅을 한다길래 나도 그냥 해봤다가 덜컥 성공했다. (친구는 떨어졌다..)쇼케이스에서 공개된 6차 스킬에 당시 현장분위기는 축제였고 나도 덩달아 응원봉을 흔들어 재끼며 즐겁게 환호했다. 뭔지도 잘 모르면서..당시 너무 좋았던 기억만 남은 메이플 쇼케이스! 이번 2024 쇼..