분류 전체보기78 [Avaratia] Devlog0 개요 이 게임을 개발을 시작하고 끝낸 건 2017~2018년도 쯤입니다. 근데 열심히 만든 게임이 그저 깃헙에만 있는게 아까워서 오랜 기억을 꺼내서 개발로그를 적어보려고 합니다. 이 게임을 만들게 된 계기는 시간이 꽤 지났음에도 아직도 또렷히 기억이 납니다. 그 시절 유니티와 같은 게임엔진을 공부하고 개발을 하는데 제가 게임 개발을 하는건지 유니티 사용법을 공부하는건지에 대해서 의문과 회의감이 들어서 로우한 레벨에서 게임을 만들고 싶어서 시작한 프로젝트였습니다. 그래서 이 게임은 Java에서 OpenGL과 DirectX와 같은 Graphic API를 사용하지 않고 개발한 PC Pixel Game입니다. 이 게임의 대략적인 스토리는 세상의 모든 사람이 다 좀비로 변한 세계에서 살아남기 위해서 도망치는 게임.. 2021. 9. 26. 2021 NAVER CLOVA AI RUSH 후기 상당히 늦은 후기이다. AI RUSH는 올해 5월 중순쯤에 시작해서 7월 초에 끝난 대회이다. CLOVA AI RUSH는 NAVER 서비스 데이터를 분석해서 AI 모델을 개발하는 챌린지이다. 본 대회에서는 1라운드, 2라운드 총 2개의 라운드로 나뉘어서 진행이 되었다. 1라운드가 시작되기 전에 코딩테스트를 통해서 150명의 참가자를 선발하고, 2라운드가 시작되기 전에 1라운드 참가자 중에서 70명을 선발하여 각 라운드가 흘러갔다. NAVER AI RUSH를 진행하는 동안에는 NAVER NSML을 통해서 학습 환경에 크게 고민하지 않고 모델 개발에만 집중할 수 있었다. 특히 항상 학습 환경 때문에 프로젝트를 진행할 때 불편함을 많이 느꼈는데 본 챌린지를 진행하면서 이런 부분을 잊고 모델을 개발할 수 있어서.. 2021. 9. 26. 2021 이븐아이 게임톤 1회 후기 이븐아이(eveni) 겜설팅, 게임업계 온라인 취업 컨설팅 1대1 맞춤형 게임업계취업전문컨설팅, 무스펙 취준생의 치트키 evenigame.imweb.me 게임톤을 신청하게 된 계기 이븐아이 게임톤을 신청하기 전에 스마일게이트에서 주최한 7월달 게임잼을 참가했었다. 해당 게임잼에서 기획자, 디자이너, 개발자 이렇게 세 직군이 팀을 짜서 게임을 개발한 기억이 이때 기획자, 디자이너와 협업하면서 게임을 만드는 것이 즐거워서 기억으로 남아서 신청하게 되었다. 팀을 이뤄 협업으로 게임 개발을 해보면서 배우고 느낀 점들 게임톤을 진행하면서 가장 도전적인 시도가 두 가지라고 있었다. 첫번째는 짧은 기간 동안에 유니티 에디터 툴을 만든 것이고, 두번째는 게임 내에서 등장하는 맵과 장애물을 3D모델을 사용하지 않고 직접.. 2021. 9. 26. [Design Pattern] 싱글톤 패턴(Singleton pattern) 싱글톤 패턴(Singleton Pattern) 이란? 소프트웨어 디자인 패턴에서 싱글턴 패턴(Singleton pattern)을 따르는 클래스는, 생성자가 여러 차례 호출되더라도 실제로 생성되는 객체는 하나이고 최초 생성 이후에 호출된 생성자는 최초의 생성자가 생성한 객체를 리턴한다. 이와 같은 디자인 유형을 싱글턴 패턴이라고 한다. 주로 공통된 객체를 여러개 생성해서 사용하는 DBCP(DataBase Connection Pool)와 같은 상황에서 많이 사용된다. 즉, 프로그램에서 한 번만 객체가 생성되고 이후에는 최초 생성된 객체를 참조하는 형식의 디자인 패턴이다. 싱글톤 패턴을 사용하는 이유 및 문제점 사용하는 이유? 오직 하나의 인스턴스만 사용하므로 메모리적 측면에서 이득이 있다. 단 한 번만 ne.. 2020. 5. 1. [BOJ 2143] 두 배열의 합 https://www.acmicpc.net/problem/2143 2143번: 두 배열의 합 첫째 줄에 T(-1,000,000,000 ≤ T ≤ 1,000,000,000)가 주어진다. 다음 줄에는 n(1 ≤ n ≤ 1,000)이 주어지고, 그 다음 줄에 n개의 정수로 A[1], …, A[n]이 주어진다. 다음 줄에는 m(1≤m≤1,000)이 주어지고, 그 다음 줄에 m개의 정수로 B[1], …, B[m]이 주어진다. 각각의 배열 원소는 절댓값이 1,000,000을 넘지 않는 정수이다. www.acmicpc.net n과 m의 값이 크지 않기 때문에 각 배열의 합을 구하는 것은 가능하다. 이를 이용하여 A배열과 B배열의 연속합을 저장해둔 배열을 만들고, 이를 정렬한 뒤 각 합을 따로 합쳐보면서 개수를 세면 .. 2020. 4. 20. [BOJ 1948] 임계경로 https://www.acmicpc.net/problem/1948 1948번: 임계경로 첫째 줄에 도시의 개수 n(1 ≤ n ≤ 10,000)이 주어지고 둘째 줄에는 도로의 개수 m(1 ≤ m ≤ 100,000)이 주어진다. 그리고 셋째 줄부터 m+2줄까지 다음과 같은 도로의 정보가 주어진다. 처음에는 도로의 출발 도시의 번호가 주어지고 그 다음에는 도착 도시의 번호, 그리고 마지막에는 이 도로를 지나는데 걸리는 시간이 주어진다. 도로를 지나가는 시간은 10,000보다 작거나 같은 자연수이다. 그리고 m+3째 줄에는 지도를 그리는 사람들이 www.acmicpc.net 위 문제는 위상 정렬을 통해서 만나는 최소의 값과 해당 값으로 도달할 수 있는 간선의 개수를 구하는 문제이다. 처음에 도로의 수가 무엇을 .. 2020. 4. 20. [BOJ 2623] 음악프로그램 https://www.acmicpc.net/problem/2623 2623번: 음악프로그램 첫째 줄에는 가수의 수 N과 보조 PD의 수 M이 주어진다. 가수는 번호 1, 2,…,N 으로 표시한다. 둘째 줄부터 각 보조 PD가 정한 순서들이 한 줄에 하나씩 나온다. 각 줄의 맨 앞에는 보조 PD가 담당한 가수의 수가 나오고, 그 뒤로는 그 가수들의 순서가 나온다. N은 1이상 1,000이하의 정수이고, M은 1이상 100이하의 정수이다. www.acmicpc.net 위 문제도 위상 정렬을 해서 차례대로 출력을 하면 되는 문제이지만, 순서를 모를 경우를 예외처리해주어야 한다. 배열에 순서대로 위상정렬의 결과를 저장할 때 배열의 길이와 전체 가수의 개수가 맞지 않는다면 제대로 된 순서를 모르는 것이기 때문에 .. 2020. 4. 20. [BOJ 2252] 줄 세우기 https://www.acmicpc.net/problem/2252 2252번: 줄 세우기 첫째 줄에 N(1≤N≤32,000), M(1≤M≤100,000)이 주어진다. M은 키를 비교한 회수이다. 다음 M개의 줄에는 키를 비교한 두 학생의 번호 A, B가 주어진다. 이는 학생 A가 학생 B의 앞에 서야 한다는 의미이다. 학생들의 번호는 1번부터 N번이다. www.acmicpc.net 위 문제는 전형적인 위상 정렬문제이다. 위상 정렬 알고리즘대로 풀면 쉽게 풀 수 있는 문제이다. #include #include #include #define max(a, b) ((a) > (b) ? (a) :(b)) using namespace std; int n, m; int indgree[100001]; int main(.. 2020. 4. 20. [BOJ 1005] ACM Craft https://www.acmicpc.net/problem/1005 1005번: ACM Craft 첫째 줄에는 테스트케이스의 개수 T가 주어진다. 각 테스트 케이스는 다음과 같이 주어진다. 첫째 줄에 건물의 개수 N 과 건물간의 건설순서규칙의 총 개수 K이 주어진다. (건물의 번호는 1번부터 N번까지 존재한다) 둘째 줄에는 각 건물당 건설에 걸리는 시간 D가 공백을 사이로 주어진다. 셋째 줄부터 K+2줄까지 건설순서 X Y가 주어진다. (이는 건물 X를 지은 다음에 건물 Y를 짓는 것이 가능하다는 의미이다) 마지막 줄에는 백준이가 승리하기 위해 건 www.acmicpc.net 위 문제는 [BOJ 1516] 게임 개발 와 거의 유사한 문제이다. 똑같이 위상정렬을 통해 건물이 지어지는 시간을 갱신하여 출력하면.. 2020. 4. 20. 이전 1 2 3 4 5 6 ··· 9 다음