게임 개요 제목 지지는 아무 생각이 없다 플랫폼 PC, Android 개발 언어 C# (Unity 사용) 개발 인원 1인 개발 (기획, 프로그래밍) 개발 기간 6주 맡은 역할, 배운 점 [프로젝트 후기] 지지는 아무 생각이 없다 내가 가장 아끼는 개인 프로젝트이자, 제일 자랑스러운 퍼즐 게임! 정해져있던 GIGDC 팀이 해체되고 친구들은 이미 팀을 구한 상태이고, 새롭게 팀을 꾸려 팀장이 될 자신은 없어 '혼자 뭐라도 해 minyoung529.tistory.com 코드 구조 [Project] 🤖 지지는 아무 생각이 없다 코드 리뷰 코드 전체 구조 Manager Class UIManager와 DataManager는 인스펙터에서 데이터를 가지고와야 하기 때문에 Mono를 상속시켜 GameManager를 통해..
🥈 교내 하계 게임잼 전체 2등 🥈 🥈 부천대 전국 고교생 대상 콘텐츠 경진대회 은상🥈 게임 개요 제목 저 컴퓨터가 이상해요 내공 100 (내공냠냠 신고) 장르 디펜스 플랫폼 PC 개발 언어 C# (Unity 사용) 개발 인원 프로그래머 3명 (각각 기획, 아트 참여) 개발 기간 4일 (게임잼) 맡은 역할, 배운 점 플레이 영상 게임 간단 소개 👉 윈도우의 프로그램을 이용해 바이러스를 물리치고, 파일을 지켜라! 학생마인크래프트를 불법 다운로드한 초등학생 김잼민의 컴퓨터가... 심각한 바이러스에 걸렸습니다! 컴퓨터엔 아빠와 오빠의 폴더도 있는데...... 이대로 아무것도 못하고 혼날 수는 없지! 컴퓨터의 다양한 프로그램을 이용하여 바이러스를 죽이고 폴더를 지키세요! 게임 특징 창의적인 스킬들 적을 구멍으로..
🥈 2022 1학기 교내 우수작 2등 🥈 게임 개요 제목 Bubble Gun! 장르 3인칭 슈팅 게임 (TPS) 플랫폼 PC 개발 언어 C# (Unity 사용) 개발 인원 1인 개발 개발 기간 4주 맡은 역할, 배운 점 플레이 영상 게임 간단 소개 👉 맛없는 채소들을 물리치고, 세상을 풍선껌으로 만들자! 편식의 대상! 맛없는 채소들을 껌으로 만들자! 야채들을 모두 껌으로 만들고, 최종 보스인 양파까지 껌으로 만들어서... 채소들로부터 점령된 도시를 구하자! 게임 특징 껌을 쏠 때의 효과 껌을 쏠 때에 껌에 맞는 오브젝트에 이펙트와 사운드를 넣었습니다. 이펙트는 물감과 같은 재질에 쏜 껌의 색깔을 바탕이고, 이펙트가 닿은 곳은 물감처럼 다른 곳에 묻고 번지게 해 바닥이나 몬스터를 껌의 색깔로 물들게 했습니..
🏅 2022 2학기 교내 우수작품 선정 🏅 제목 Nice, Dice! 장르 턴제 로그라이크 플랫폼 PC, Android 개발 언어 C# (Unity 사용) 개발 인원 프로그래머 2명 개발 기간 5주 맡은 역할, 배운 점 [프로젝트 후기] 🎲 Nice, Dice! 게임 설명 [Project] 🎲 Nice, Dice! 플레이 영상 게임 간단 소개 👉 주사위를 굴려 공격해 적과 싸워라! 갑자기 공격해오는 외계 생명체들! 여러 종류의 주사위를 얻고, 자신만의 덱을 만들어 주사위 minyoung529.tistory.com 게임 플레이 영상 플레이 영상 게임 간단 소개 👉 주사위를 굴려 공격해 적과 싸워라! 갑자기 공격해오는 외계 생명체들! 여러 종류의 주사위를 얻고, 자신만의 덱을 만들어 주사위를 굴려 공격하며,..
게임 개요 제목 선생님을 지켜요! 장르 하이퍼 캐주얼 플랫폼 PC 개발 언어 C++ WinAPI 개발 인원 프로그래머 2명 개발 기간 3주 맡은 역할, 배운 점 [프로젝트 후기] 💗 선생님을 지켜요! 게임 설명 [Project] 💗 선생님을 지켜요! 플레이 영상 게임 간단 소개 👉 사방향으로 오는 벽돌을 깨라! 학생들의 사랑을 받지 못해 머리가 모두 빠져버린 선생님! 벽돌처럼 딱딱한 학생들의 마 minyoung529.tistory.com 플레이 영상 게임 간단 소개 👉 사방향으로 오는 벽돌을 깨라! 학생들의 사랑을 받지 못해 머리가 모두 빠져버린 선생님! 벽돌처럼 딱딱한 학생들의 마음을... 💗사랑을 쏴서 녹이자!💗 학생들에게 하트를 날리고, 아이템을 먹어 총알의 개수를 늘려라! 스킬을 사용해 최고기록을..
String Opinions, Weakly Held 견고한 의견, 하지만 집착하지 않는 태도 나는 졸업작품을 진행하며 팔로워십에 대한 정의를 세울 수 있었다. 리더였지만, 가장 가까운 곳에서 팀원들을 보며 그들 각각의 배울점이나 개선점을 생각하며 나 또한 성찰하는 계기가 되었기 때문. 나의 팔로워십은 어떤 방향으로 성장시켜야 할지 고민하다, 작년에 쓴 업무 습관에 대한 고찰이 떠올랐다. 그때는 간단히 짚고 넘어간 Strong Opinions, Weakly Held였는데... 리더의 자리를 한 번 겪고 난 후 저 태도는 팀원에, 또 프로젝트에 꼭 필요한 태도라는 생각이 들었다. 의견을 탄탄히 잘 준비하되, 의견 자체에 집착하지 말고 객관적으로 보자! 나의 언어대로 해석을 해보았다. 조금식 끊어서 고찰이 필..
연초에 하는 연말결산. 2022년은 정말 빠르게 지나갔고, 그와 반대로 배우고 느낀 게 가장 많으며 가장 바쁜 해였다. 세심하고 다정하신 담임 선생님과 같이 으쌰으쌰 성장하는 반 친구들이 내 성장에 큰 영향을 미쳤다. 부끄러움보다는 피드백을 받는 것을 선택할 줄 알고 경쟁보다는 같이 성장하는 기쁨을 느낄 줄 알게 된 것 같다. 개발 부분이나, 심적으로나 정말 많이 성장한 해였다. 동시에 주말에는 프로젝트와 자기계발로 할애하다 보니, 가족들과 친구들의 얼굴을 볼 시간, 대화할 시간이 많이 없어 많이 속상하고 아쉬운 해이기도 했다.. 1년간 참여한 활동이 정말 많아서, 간단하게만 소개하는 게 좋을 것 같다. 이것만은 내가 학교 짱! 알고리즘 노트 한 학기 동안 가장 꾸준히 한 게 뭐냐고 물어본다면, 나는 한..
월요일부터 수요일까지 짧은 3일이라는 시간 동안, 팀 일을 배분하고, 게임 기획에 대해 심도있게 생각하고, 발표 준비를 하며... 눈 깜빡하면 지나갈 그 3일 동안 참 많은 것을 배울 수 있었다. 팀장이라는 자리가 얼마나 영향력이 크고 중요한지 깨달을 수 있었던 기회였기도 하다. 또, 경험자의 조언은 산출물의 품질을 극한까지 올려줄 수 있다는 생각이 들었다. 생각보다 다른 사람의 시선은 중요하고 비슷하다! 1. 처음부터 다시 우리 팀은 일찍이 산학 협력 프로젝트인 Lighp(로그라이트 게임)를 프로토타이핑을 했었다. 프로토타입을 개발한 후, 게임의 특별한 경쟁력과 아이덴티티가 없다는 생각이 들었다. 핵심 시스템마저도 플레이어를 방해하고 있어 오히려 성가시다는 느낌을 얻었다. 약 2~3개월간 진행한 프로젝..
10942. 팰린드롬 10942번: 팰린드롬? 총 M개의 줄에 걸쳐 홍준이의 질문에 대한 명우의 답을 입력으로 주어진 순서에 따라서 출력한다. 팰린드롬인 경우에는 1, 아닌 경우에는 0을 출력한다. www.acmicpc.net 문제 풀 때 막혔던 것 (바보짓..) 초장부터 문제를 잘못 이해해서 초반에 엄청난 시간을 썼다... 나는 처음에, 숫자를 받으면 하나의 문자열로 생각했다. 반대로, 이렇게 하나의 문자열로 생각하지 말고 숫자 자릿수에 상관없이 하나 하나 비교해야 하는 것이었다! 여기까지는 괜찮았지만, 팰린드롬을 비교할 때 치명적인 실수를 했다. p1(index)부터 p2(index)까지의 수가 팰린드롬인지 확인할 예정이었다. 따라서 p1부터 증가하는 값과 p2부터 감소하는 값을 비교해줄 생각이었는데..
21942. 부품 대여장 21942번: 부품 대여장 첫 번째 줄에 부품 대여장에 작성된 정보의 개수 $N$, 대여기간 $L$, 벌금 $F$이 공백으로 구분되어 주어진다. 대여기간 형식은 DDD/hh:mm으로 DDD는 일, hh는 시간, mm은 분을 의미한다. (000/00:00 는 주어 www.acmicpc.net 문제 풀이 GitHub - minyoung529/AlgorithmStudy: 여러 알고리즘 문제를 푸는 저장소입니다. 여러 알고리즘 문제를 푸는 저장소입니다. Contribute to minyoung529/AlgorithmStudy development by creating an account on GitHub. github.com 흘러가는 로직은 나쁘지 않았지만, 안에서 예상치 못한 실수가 ..
17822번: 원판 돌리기 반지름이 1, 2, ..., N인 원판이 크기가 작아지는 순으로 바닥에 놓여있고, 원판의 중심은 모두 같다. 원판의 반지름이 i이면, 그 원판을 i번째 원판이라고 한다. 각각의 원판에는 M개의 정수가 적혀 www.acmicpc.net 꺄~~ 난생 처음으로 한 번에 맞힌 문제! 구현이 많은 문제였는데 너무 기쁘다~~ 구현을 이제 어느정도 할 수 있게 된 것 같지만, 최적화나 자료구조를 쓰는 부분은 아직도 구현에 비해서 훨씬... 부족한 것 같다. 사실 좋아할 게 아니라 반성해야지만... 그래도 정말정말정말 오랜만에 한 번에 맞힌 문제라 기분이 좋았다!! 알고리즘 설계 구조 우선, 원판 전체를 Deque를 담는 배열로 저장해주었다. 2차원으로 만든 이유는 원판의 숫자 개수가 모두 ..
이펙트 Niagara System 플레이어가 걸어다니는 이펙트를 만들기 위해 나이아가라 시스템을 생성해주었다. 내가 아는 나이아가라는 폭포밖에 없는데... 이번 기회에 얕은 지식을 확장시켜야겠다. Emitter이나 프리뷰나 타임라인 등이 있는 걸로 봐선 Unity의 Particle System과 비슷하다고 추측된다. 강의의 진행에 따라 Loop Behavior를 Infinite에서 Once로 바꿔주었다. 빈 Emitter를 생성해주고 Spawn Burst Instantaneous를 선택했다. 그러자 프리뷰에 동그란 친구 하나가 생성되었다! 생성 카운트를 늘려보았더니 더 진해졌다. 생성된 100개의 친구가 이동하지 않고 같은 자리에 생성되는 모양이다. Initialize Particle을 선택한 뒤 다양한..
발판 만들기 충돌 감지 발판과 누르는 애니메이션을 만들어볼 것이다! 후에 문과 연결할 생각에 신이 난다 ㅎ_ㅎ 발판을 만들기 위해 아까와 같이 새 블루프린트(Actor)를 생성해주었다. Frame과 Platform 메쉬를 모두 끌고 온 후, Frame을 루트로 만들어주었다. 발판과 물체가 닿으면, 발판이 눌러져야 하기 때문에 Box Collision을 추가하고 크기를 잡았다. 트리거로 할 예정이다. 아까와 같이 BeginOverlap, EndOverlap 이벤트를 사용해주었다. 이벤트 그래프에서는 각 객체에 대한 함수도 같은 곳에서 액세스할 수 있는 게 신기했다. PressurePlate뿐만 아니라, Frame이나 Box나 Platform이나 이런 자식들... C++ 스크립트는 어떻게 접근하는지 궁금했다..
오브젝트 생성하기 오브젝트 설정 새 오브젝트를 만들기 위해 Actor 블루 프린트를 생성해주었다. . 에디터에 들어가서 메쉬를 놓아주고 Collision Presets를 OverlayOnlyPawn으로 설정해주었다. 아직 이유는 가르쳐주지 않으셨는데, 강의를 보다가 나오면 추가로 적을 것이다. 입력에 따른 오브젝트 생성 입력을 받는 기능을 구현하기에, 이제는 익숙하게 Project Setting > Input에서 키를 맵핑해주었다. Player Controller의 이벤트 그래프로 와서 방금 만든 Action을 생성해주었다. 키를 뗄 때 Spawn Actor From Class라는 함수를 호출해주었다. Class에는 만든 오브젝트의 클래스를 넣어주었다. Spawn Actor From Class 간단하게 ..
구글 API 사용 구글 드라이브 API key (Google Drive API key) 생성. 클라이언트 아이디 받기등의 Drive API 인증처리.개요-Google Drive API key 생성. 본 글에서 제시하는 정보 : 자신의 구글계정의 드라이브에 Drive API 활성화하고 인증처리하여 클라이언트 아이디등의 인증 key 생성하는 방법 상세. 본 설정과정을 수행igotit.tistory.com Unity Nuget으로 google API 불러오기https://github.com/GlitchEnzo/NuGetForUnity GitHub - GlitchEnzo/NuGetForUnity: A NuGet Package Manager for UnityA NuGet Package Manager for U..
[지금 무료] 개발자를 위한 컴퓨터공학 1: 혼자 공부하는 컴퓨터구조 + 운영체제 강의 - 인프런 베스트셀러 『혼자 공부하는 컴퓨터 구조 + 운영체제』 저자 무료 직강. 개발자들이 꼭 알아야 할 컴퓨터 구조, 운영체제 전공서 요약집., 개발자 필수지식 컴퓨터 구조와 운영체제강의 하나로 www.inflearn.com 해당 인프런 강의를 듣고 정리한 글입니다. 레지스터 CPU 내부의 작은 임시 저장 장치 프로그램 속 명령어 & 데이터는 실행 전후로 레지스터에 저장 프로그램 카운터 메모리에서 가져올 명령어의 주소 (Instruction Pointer) 명령어 레지스터 해석할 명령어 (방금 메모리에서 읽어들인 명령어) 제어장치가 해석 메모리 주소 레지스터 메모리의 주소. CPU가 읽을 주소를 주소 버스로 보낼 ..
[지금 무료] 개발자를 위한 컴퓨터공학 1: 혼자 공부하는 컴퓨터구조 + 운영체제 강의 - 인프런 베스트셀러 『혼자 공부하는 컴퓨터 구조 + 운영체제』 저자 무료 직강. 개발자들이 꼭 알아야 할 컴퓨터 구조, 운영체제 전공서 요약집., 개발자 필수지식 컴퓨터 구조와 운영체제강의 하나로 www.inflearn.com 해당 강의를 듣고 정리한 내용입니다. 소스코드와 명령어 컴퓨터가 명령어를 실행하려면 개발자가 이해하기 쉽게 만든 고급 언어 ⇒ 컴퓨터가 이해하는 저급 언어로 변환하는 과정이 필요함 저급 언어 기계어 0과 1로 명령어로 구성된 저급 언어 어셈블리어 0과 1로 이루어진 기계어를 읽기 편한 형태로 번역한 저급 언어 고급 언어 컴파일 언어 컴파일이라는 과정을 거쳐 컴파일 언어로 작성된 소스 코드는 저..
[지금 무료] 개발자를 위한 컴퓨터공학 1: 혼자 공부하는 컴퓨터구조 + 운영체제 강의 - 인프런 베스트셀러 『혼자 공부하는 컴퓨터 구조 + 운영체제』 저자 무료 직강. 개발자들이 꼭 알아야 할 컴퓨터 구조, 운영체제 전공서 요약집., 개발자 필수지식 컴퓨터 구조와 운영체제강의 하나로 www.inflearn.com 해당 인프런 강의를 들으며 정리한 내용입니다. 0과 1로 숫자를 표현하는 방법 정보 단위 비트 0과 1을 표현하는 가장 작은 정보 단위 2비트로는 4가지 정보, 3비트로는 8가지 정보 표현 가능 n비트로는 (2^n) 워드 CPU가 한 번에 처리할 수 있는 정보의 크기 하프 워드(half word): 워드 절반의 크기 풀 워드(full word): 워드 크기 더블 워드(double word): ..
[지금 무료] 개발자를 위한 컴퓨터공학 1: 혼자 공부하는 컴퓨터구조 + 운영체제 강의 - 인프런 베스트셀러 『혼자 공부하는 컴퓨터 구조 + 운영체제』 저자 무료 직강. 개발자들이 꼭 알아야 할 컴퓨터 구조, 운영체제 전공서 요약집., 개발자 필수지식 컴퓨터 구조와 운영체제강의 하나로 www.inflearn.com 해당 인프런 강의를 들으며 정리한 내용입니다. 컴퓨터가 이해하는 정보 데이터 숫자, 문자, 이미지, 동영상과 같은 정적인 정보 컴퓨터와 주고받는/내부에 저장된 정보 0과 1로 숫자를 표현하는 방법 0과 1로 문자를 표현하는 방법 명령 컴퓨터는 명령어를 처리하는 기계 명령어 컴퓨터를 실질적으로 움직이는 정보 데이터는 명령어를 위한 재료 명령어의 생김새와 동작 방식 컴퓨터의 네 가지 핵심 부품 C..