분류 전체보기
-
보호되어 있는 글입니다.
[스파르타코딩] SSL, OAuth 에 필요한 개념과 그 흐름에 대해보호되어 있는 글입니다.
2022.02.06 -
그래서 클린 코드 작성은 어떻게 하는걸까? 완벽하게 문서처럼 만든다면서? 그래서 어떤 이름으로 선언하고 어떤 규칙으로 만드는 건데? 클린 코드의 원칙은 엄청 많고 종류도 다양하다. 하나 둘씩 알아보자. 의미 있는 이름에 대해 변수를 하나 선언한다고 했을때 그 이름은 명확해야 한다. 예를 들어 이름은 줄임말로 써선 안된다. int mca; //my cat age 이 변수는 my cat age 라는 의미를 줄임말로써 선언한 것인데, 다른 개발자가 본다면 전혀 의미를 모를 것이다. 하물며 주석을 달아서까지 이를 설명하려고도 하는데 변수 하나에 주석을 달아서 설명한다? 너무나도 비효율 적이다. 차라리 변수가 길이질지언정 그 의미를 전부 작성해서 함축적으로 내포하는 것이 좋다. int my_cat_age; 그러면..
[CleanCode] #002. 의미 있는 이름이란?그래서 클린 코드 작성은 어떻게 하는걸까? 완벽하게 문서처럼 만든다면서? 그래서 어떤 이름으로 선언하고 어떤 규칙으로 만드는 건데? 클린 코드의 원칙은 엄청 많고 종류도 다양하다. 하나 둘씩 알아보자. 의미 있는 이름에 대해 변수를 하나 선언한다고 했을때 그 이름은 명확해야 한다. 예를 들어 이름은 줄임말로 써선 안된다. int mca; //my cat age 이 변수는 my cat age 라는 의미를 줄임말로써 선언한 것인데, 다른 개발자가 본다면 전혀 의미를 모를 것이다. 하물며 주석을 달아서까지 이를 설명하려고도 하는데 변수 하나에 주석을 달아서 설명한다? 너무나도 비효율 적이다. 차라리 변수가 길이질지언정 그 의미를 전부 작성해서 함축적으로 내포하는 것이 좋다. int my_cat_age; 그러면..
2022.01.04 -
이 블로그에 올라오는 CleanCode 글은 파이참을 사용해서 익혀볼 예정이다. 따라서, 아래 링크를 통해 파이썬과 파이참을 설치하자. 필자는 파이참을 파이참 커뮤니티 버전으로 설치했다. https://www.python.org/downloads/ Download Python The official home of the Python Programming Language www.python.org https://www.jetbrains.com/ko-kr/pycharm/download/#section=windows 다운로드 PyCharm: JetBrains가 만든 전문 개발자용 Python IDE www.jetbrains.com 새 프로젝트 만들기 파이참을 켜서 New project를 눌러 프로젝트를 생성하..
[CleanCode] #001.파이참 세팅하기이 블로그에 올라오는 CleanCode 글은 파이참을 사용해서 익혀볼 예정이다. 따라서, 아래 링크를 통해 파이썬과 파이참을 설치하자. 필자는 파이참을 파이참 커뮤니티 버전으로 설치했다. https://www.python.org/downloads/ Download Python The official home of the Python Programming Language www.python.org https://www.jetbrains.com/ko-kr/pycharm/download/#section=windows 다운로드 PyCharm: JetBrains가 만든 전문 개발자용 Python IDE www.jetbrains.com 새 프로젝트 만들기 파이참을 켜서 New project를 눌러 프로젝트를 생성하..
2022.01.03 -
개발자가 개발하는데에 있어서 시간을 가장 많이 투자하는 요소는 "코드를 읽는 것"이다. 당장 오늘 개발하게 된다면 어제 작성해놨던 코드들을 기억, 이해하고 새로운 코드를 작성해야 한다. 또, 6개월이나 1년이 지난 내 코드를 보더라도 헷갈린데 남의 코드를 읽고 이해하려면 어떡해야 할까. "클린 코드"는 코드를 부연설명 없이 해석, 이해가 가능하도록 하는 '완성된 문서화'를 시키는걸 의미한다. 코드를 깨끗하게 만들어서 클린코드를 처음부터 구성한 후에도 이를 유지하는 것이 중요하다. 바쁘게 코드를 작성하고 개발을 진행하면 이 코드는 언젠가는 결국 문제를 만들어서 돌아오게 되어 있고 이를 해결하는 데에 시간을 들여야 할 것이다. 항상 코드를 깨끗하게 유지해두어야 하며 이로인해 내일의 나는 지금의 내가 만들어둔..
[CleanCode] #000. 클린코드에 대해개발자가 개발하는데에 있어서 시간을 가장 많이 투자하는 요소는 "코드를 읽는 것"이다. 당장 오늘 개발하게 된다면 어제 작성해놨던 코드들을 기억, 이해하고 새로운 코드를 작성해야 한다. 또, 6개월이나 1년이 지난 내 코드를 보더라도 헷갈린데 남의 코드를 읽고 이해하려면 어떡해야 할까. "클린 코드"는 코드를 부연설명 없이 해석, 이해가 가능하도록 하는 '완성된 문서화'를 시키는걸 의미한다. 코드를 깨끗하게 만들어서 클린코드를 처음부터 구성한 후에도 이를 유지하는 것이 중요하다. 바쁘게 코드를 작성하고 개발을 진행하면 이 코드는 언젠가는 결국 문제를 만들어서 돌아오게 되어 있고 이를 해결하는 데에 시간을 들여야 할 것이다. 항상 코드를 깨끗하게 유지해두어야 하며 이로인해 내일의 나는 지금의 내가 만들어둔..
2022.01.03 -
보호되어 있는 글입니다.
[Unity/Logic] 로그라이크식 랜덤 맵 생성에 대해보호되어 있는 글입니다.
2021.06.09 -
일전에 Git LFS로 터진 버그로 글을 쓴 적이 있다. 지난 글 이후에도 LFS를 사용하다가 버그가 발생한 경우가 있었는데 이 때문에 Git LFS를 조금 더 자세하게 알아보고 싶었다. 이 글에서는 LFS를 사용하면서 알아야 할 주의점이나 이슈들을 정리해둘 생각이다. Git LFS를 사용하는 방법에 대해서는 올릴 생각은 있지만 이미 여럿 많은 글들이 올라와있고 참고하면 되기 때문에 차후에 생각해보려고 한다. Git LFS 용도 프로젝트를 협업하면서 유용하게 쓰이는 Git과 Github. 하지만 Git도 데이터를 관리하는데 한계가 존재한다. 이미지 파일, 동영상, 3D 모델링 파일처럼 대용량의 파일의 경우 Git으로 단순히 올릴 수 없다. 더보기 이러한 파일을 바이너리 파일이라고 하는데, ASCII 코드..
[Git/Sourcetree] Git LFS에 대해 알아보자일전에 Git LFS로 터진 버그로 글을 쓴 적이 있다. 지난 글 이후에도 LFS를 사용하다가 버그가 발생한 경우가 있었는데 이 때문에 Git LFS를 조금 더 자세하게 알아보고 싶었다. 이 글에서는 LFS를 사용하면서 알아야 할 주의점이나 이슈들을 정리해둘 생각이다. Git LFS를 사용하는 방법에 대해서는 올릴 생각은 있지만 이미 여럿 많은 글들이 올라와있고 참고하면 되기 때문에 차후에 생각해보려고 한다. Git LFS 용도 프로젝트를 협업하면서 유용하게 쓰이는 Git과 Github. 하지만 Git도 데이터를 관리하는데 한계가 존재한다. 이미지 파일, 동영상, 3D 모델링 파일처럼 대용량의 파일의 경우 Git으로 단순히 올릴 수 없다. 더보기 이러한 파일을 바이너리 파일이라고 하는데, ASCII 코드..
2021.06.07 -
!!! NOTICE !!! 이 글은 Web의 이론을 다루고 있습니다! 학습한 정보를 제가 기억하고 추후에도 사용해두기 위해 기록해둔 내용입니다! 공부하면서 참고한 사이트 https://opentutorials.org/course/2039/10937 개발도구 - 생활코딩 개발도구는 선택사항입니다. 아래 도구들을 추천합니다. opentutorials.org https://opentutorials.org/course/2039/10939 HTML의 변천사와 통계 - 생활코딩 HTML의 변천사와 통계 2015-12-05 23:29:12 opentutorials.org 개발도구 HTML 코드는 메모장으로도 작성할 수 있다. 하지만, 앞으로의 개발 속도를 고려한다면 개발도구는 선택이지만 거의 필수라고 할 수 있다. ..
[Web/HTML] 6. 개발 도구와 HTML의 변천사, 통계!!! NOTICE !!! 이 글은 Web의 이론을 다루고 있습니다! 학습한 정보를 제가 기억하고 추후에도 사용해두기 위해 기록해둔 내용입니다! 공부하면서 참고한 사이트 https://opentutorials.org/course/2039/10937 개발도구 - 생활코딩 개발도구는 선택사항입니다. 아래 도구들을 추천합니다. opentutorials.org https://opentutorials.org/course/2039/10939 HTML의 변천사와 통계 - 생활코딩 HTML의 변천사와 통계 2015-12-05 23:29:12 opentutorials.org 개발도구 HTML 코드는 메모장으로도 작성할 수 있다. 하지만, 앞으로의 개발 속도를 고려한다면 개발도구는 선택이지만 거의 필수라고 할 수 있다. ..
2021.06.06 -
!!! NOTICE !!! 이 글은 Web의 이론을 다루고 있습니다! 학습한 정보를 제가 기억하고 추후에도 사용해두기 위해 기록해둔 내용입니다! 공부하며 참고한 사이트 https://opentutorials.org/course/2039/10938 웹사이트 만들기 - 생활코딩 예제 index.html HTML - 수업소개 HTML 기술소개 기본문법 하이퍼텍스트와 속성 리스트와 태그의 중첩 선행학습 본 수업을 효과적으로 수행하기 위해서는 웹애플리케이션에 대한 전반적인 이해가 필 opentutorials.org 실전적인 웹사이트 만들기 앞서 작성한 글에서 중요한 태그들 몇가지를 추려 공부해보았다. 이외에서 다른 이론적인 부분을 공부하는 것도 좋기야 하겠지만, 프로그래머의 중요한 소양은 이렇게 배운 이론을 가지..
[Web/HTML] 5. 웹사이트 만들어보기!!! NOTICE !!! 이 글은 Web의 이론을 다루고 있습니다! 학습한 정보를 제가 기억하고 추후에도 사용해두기 위해 기록해둔 내용입니다! 공부하며 참고한 사이트 https://opentutorials.org/course/2039/10938 웹사이트 만들기 - 생활코딩 예제 index.html HTML - 수업소개 HTML 기술소개 기본문법 하이퍼텍스트와 속성 리스트와 태그의 중첩 선행학습 본 수업을 효과적으로 수행하기 위해서는 웹애플리케이션에 대한 전반적인 이해가 필 opentutorials.org 실전적인 웹사이트 만들기 앞서 작성한 글에서 중요한 태그들 몇가지를 추려 공부해보았다. 이외에서 다른 이론적인 부분을 공부하는 것도 좋기야 하겠지만, 프로그래머의 중요한 소양은 이렇게 배운 이론을 가지..
2021.06.06 -
!!! NOTICE !!! 이 글은 Web의 이론을 다루고 있습니다! 학습한 정보를 제가 기억하고 추후에도 사용해두기 위해 기록해둔 내용입니다! 공부하며 참고한 사이트 https://opentutorials.org/course/2039/10935 DOCTYPE - 생활코딩 DOCTYPE 2015-12-05 21:53:08 예제 HTML - 수업소개 HTML 기술소개 기본문법 하이퍼텍스트와 속성 리스트와 태그의 중첩 선행학습 본 수업을 효과적으로 수행하기 위해서는 웹애플리케이션에 대한 전반 opentutorials.org DOCTYPE DOCTYPE 은 여태껏 배웠던 태그의 형식에 비하면 중요하진 않다. 그저 앞으로의 HTML 문서 최 상단에 태그를 추가하면 된다. 하지만 뭔지 궁금하기 때문에 이렇게 정리..
[Web/HTML] 4. DOCTYPE!!! NOTICE !!! 이 글은 Web의 이론을 다루고 있습니다! 학습한 정보를 제가 기억하고 추후에도 사용해두기 위해 기록해둔 내용입니다! 공부하며 참고한 사이트 https://opentutorials.org/course/2039/10935 DOCTYPE - 생활코딩 DOCTYPE 2015-12-05 21:53:08 예제 HTML - 수업소개 HTML 기술소개 기본문법 하이퍼텍스트와 속성 리스트와 태그의 중첩 선행학습 본 수업을 효과적으로 수행하기 위해서는 웹애플리케이션에 대한 전반 opentutorials.org DOCTYPE DOCTYPE 은 여태껏 배웠던 태그의 형식에 비하면 중요하진 않다. 그저 앞으로의 HTML 문서 최 상단에 태그를 추가하면 된다. 하지만 뭔지 궁금하기 때문에 이렇게 정리..
2021.06.06 -
!!! NOTICE !!! 이 글은 Web의 이론을 다루고 있습니다! 학습한 정보를 제가 기억하고 추후에도 사용해두기 위해 기록해둔 내용입니다! 공부하면서 참고한 사이트 https://opentutorials.org/course/2039/10934 문서의 구조 - 생활코딩 문서의 구조 2015-12-05 21:52:24 예제 HTML - 수업소개 HTML 기술소개 기본문법 하이퍼텍스트와 속성 리스트와 태그의 중첩 선행학습 본 수업을 효과적으로 수행하기 위해서는 웹애플리케이션에 대한 opentutorials.org 문서의 구조 지금까지 만들어온 문서를 완성시키면서 문서의 큰 틀의 체계를 알아보자 시작하기에 앞서, 문서를 만들기 위한 소스를 불려와 문서처럼 보이도록 골격을 맞추자. 먼저, 문단별로 있는 큰 ..
[Web/HTML] 3. HTML 문서의 구조 <head>, <body>, <html>!!! NOTICE !!! 이 글은 Web의 이론을 다루고 있습니다! 학습한 정보를 제가 기억하고 추후에도 사용해두기 위해 기록해둔 내용입니다! 공부하면서 참고한 사이트 https://opentutorials.org/course/2039/10934 문서의 구조 - 생활코딩 문서의 구조 2015-12-05 21:52:24 예제 HTML - 수업소개 HTML 기술소개 기본문법 하이퍼텍스트와 속성 리스트와 태그의 중첩 선행학습 본 수업을 효과적으로 수행하기 위해서는 웹애플리케이션에 대한 opentutorials.org 문서의 구조 지금까지 만들어온 문서를 완성시키면서 문서의 큰 틀의 체계를 알아보자 시작하기에 앞서, 문서를 만들기 위한 소스를 불려와 문서처럼 보이도록 골격을 맞추자. 먼저, 문단별로 있는 큰 ..
2021.06.06 -
!!! NOTICE !!! 이 글은 Web의 이론을 다루고 있습니다! 학습한 정보를 제가 기억하고 추후에도 사용해두기 위해 기록해둔 내용입니다! *공부하면서 참고한 사이트 https://opentutorials.org/course/2039/10933 태그의 중첩과 목록 - 생활코딩 태그의 중첩과 목록 2015-12-05 10:58:24 예제 기술소개 기본문법 하이퍼텍스트와 속성 리스트와 태그의 중첩 최진혁 최유빈 한이람 한이은 opentutorials.org 태그의 중첩 지난 글에서는 태그안에 단순히 문자를 넣어 내용을 변형시켜주었다. 이번엔 태그 안에 태그를 넣어서 중첩을 시켜보자. 데이터를 리스트 형식으로 출력하려고 한다. 항목을 하나로 묶어서 하나하나 연속되게 출력된다는 말이다. 태그는 데이터를 항..
[Web/HTML] 2. 중첩 태그!!! NOTICE !!! 이 글은 Web의 이론을 다루고 있습니다! 학습한 정보를 제가 기억하고 추후에도 사용해두기 위해 기록해둔 내용입니다! *공부하면서 참고한 사이트 https://opentutorials.org/course/2039/10933 태그의 중첩과 목록 - 생활코딩 태그의 중첩과 목록 2015-12-05 10:58:24 예제 기술소개 기본문법 하이퍼텍스트와 속성 리스트와 태그의 중첩 최진혁 최유빈 한이람 한이은 opentutorials.org 태그의 중첩 지난 글에서는 태그안에 단순히 문자를 넣어 내용을 변형시켜주었다. 이번엔 태그 안에 태그를 넣어서 중첩을 시켜보자. 데이터를 리스트 형식으로 출력하려고 한다. 항목을 하나로 묶어서 하나하나 연속되게 출력된다는 말이다. 태그는 데이터를 항..
2021.06.02 -
!!! NOTICE !!! 이 글은 Web의 이론을 다루고 있습니다! 학습한 정보를 제가 기억하고 추후에도 사용해두기 위해 기록해둔 내용입니다! 전부터 웹프로그래밍이 정말 인기가 많은 부류로 여러가지 강좌가 많이 올라왔었다. 최근들어 친구까지 회사에 입사하고나서 웹을 공부하고 있다고 소식을 전해왔다. 때문에 자기개발을 위해서 웹 프로그래밍을 기초부터 익혀보기로 했다. 추가로 항상 뜨문한 블로그에도 하루 기본 2시간씩 공부한 분량을 업로드 해보기로 했다. *공부하면서 참고한 사이트 https://opentutorials.org/course/2039/10931 웹 프로그래밍의 공부 순서를 알아보자 웹프로그래밍이 무엇인지, 어떤 종류가 있는지 알아보고 순서를 정해서 공부해보기로 했다. https://zooo...
[Web/HTML] 1. 태그와 속성!!! NOTICE !!! 이 글은 Web의 이론을 다루고 있습니다! 학습한 정보를 제가 기억하고 추후에도 사용해두기 위해 기록해둔 내용입니다! 전부터 웹프로그래밍이 정말 인기가 많은 부류로 여러가지 강좌가 많이 올라왔었다. 최근들어 친구까지 회사에 입사하고나서 웹을 공부하고 있다고 소식을 전해왔다. 때문에 자기개발을 위해서 웹 프로그래밍을 기초부터 익혀보기로 했다. 추가로 항상 뜨문한 블로그에도 하루 기본 2시간씩 공부한 분량을 업로드 해보기로 했다. *공부하면서 참고한 사이트 https://opentutorials.org/course/2039/10931 웹 프로그래밍의 공부 순서를 알아보자 웹프로그래밍이 무엇인지, 어떤 종류가 있는지 알아보고 순서를 정해서 공부해보기로 했다. https://zooo...
2021.06.02 -
온라인 그림판으로 사용해서 회의가 가능한 사이트 https://miro.com/ Miro | Free Online Collaborative Whiteboard Platform Scalable, secure, cross-device and enterprise-ready team collaboration whiteboard for distributed teams. Join 8M+ users from around the world. miro.com 게임에 사용할 음원을 구하기 좋은 사이트 https://dova-s.jp/bgm/play13231.html フリーBGM素材「ブランチタイム」試聴ページ|フリーBGM DOVA-SYNDROME dova-s.jp 팀단위로 계획/협업 등이 가능한 사이트 www.notion.s..
[GameDesign] 팀 프로젝트에서 유용한 것들온라인 그림판으로 사용해서 회의가 가능한 사이트 https://miro.com/ Miro | Free Online Collaborative Whiteboard Platform Scalable, secure, cross-device and enterprise-ready team collaboration whiteboard for distributed teams. Join 8M+ users from around the world. miro.com 게임에 사용할 음원을 구하기 좋은 사이트 https://dova-s.jp/bgm/play13231.html フリーBGM素材「ブランチタイム」試聴ページ|フリーBGM DOVA-SYNDROME dova-s.jp 팀단위로 계획/협업 등이 가능한 사이트 www.notion.s..
2020.10.04 -
최근 Sourcetree 를 이용해서 버전관리를 하면서 발생한 상황이다. Unity 프로젝트에 Git LFS 를 사용해서 파일을 커밋하고 푸쉬했는데, 대략 2시간 가까이 푸쉬 작업을 진행하더니 다음과 같은 에러를 내뱉었다. 무슨 의미인지, 어떻게 해결하는지 찾아보는 와중, 아래 링크에서 에러의 원인을 알 수 있었다. stackoverflow.com/questions/42597408/git-lfs-what-is-locking-support-and-should-i-enable-it Git (LFS): what is locking support? And should I enable it? "New" Git Comment: Just today I ran across the following comment fro..
[Programming/Issue] LFS locking 과 관련한 에러최근 Sourcetree 를 이용해서 버전관리를 하면서 발생한 상황이다. Unity 프로젝트에 Git LFS 를 사용해서 파일을 커밋하고 푸쉬했는데, 대략 2시간 가까이 푸쉬 작업을 진행하더니 다음과 같은 에러를 내뱉었다. 무슨 의미인지, 어떻게 해결하는지 찾아보는 와중, 아래 링크에서 에러의 원인을 알 수 있었다. stackoverflow.com/questions/42597408/git-lfs-what-is-locking-support-and-should-i-enable-it Git (LFS): what is locking support? And should I enable it? "New" Git Comment: Just today I ran across the following comment fro..
2020.10.02 -
보호되어 있는 글입니다.
[Unity/Private] Lerp 선형보간 기본 코드보호되어 있는 글입니다.
2020.09.25 -
보호되어 있는 글입니다.
[Unity/Private] 스와이프 감지 코드보호되어 있는 글입니다.
2020.09.25 -
!!! NOTICE !!! 이 글은 유니티의 이론을 다루고 있습니다! 학습한 정보를 제가 기억하고 추후에도 사용해두기 위해 기록해둔 내용입니다! 이 점 유의하고 봐주세요! 지난 글에선 구글 플레이 계정에 로그인까지 해보았습니다. 이번엔 주 기능이라 할 수 있는 리더보드와 업적 등을 사용해보겠습니다. 업적 추가하기 Google Play Console에 들어가 업적 메뉴를 클릭합니다. 업적을 추가해보죠. 업적 추가 버튼을 클릭. 리더보드나 상세정보 때처럼 기본적으로 이름, 설명, 아이콘이 존재합니다만, 몇가지 업적에만 존재하는 요소가 있습니다. 이들에 대한 내용은 다음과 같습니다. 단계별 업적 : 해당 업적을 달성하는데 선행 업적이 존재할 경우. 초기 상태 : 해당 업적 내용의 공개 여부 점수 : 해당 업적..
[Unity/Theory] 구글 플레이와 연동하여 기능을 구현하자! (리더보드/업적)!!! NOTICE !!! 이 글은 유니티의 이론을 다루고 있습니다! 학습한 정보를 제가 기억하고 추후에도 사용해두기 위해 기록해둔 내용입니다! 이 점 유의하고 봐주세요! 지난 글에선 구글 플레이 계정에 로그인까지 해보았습니다. 이번엔 주 기능이라 할 수 있는 리더보드와 업적 등을 사용해보겠습니다. 업적 추가하기 Google Play Console에 들어가 업적 메뉴를 클릭합니다. 업적을 추가해보죠. 업적 추가 버튼을 클릭. 리더보드나 상세정보 때처럼 기본적으로 이름, 설명, 아이콘이 존재합니다만, 몇가지 업적에만 존재하는 요소가 있습니다. 이들에 대한 내용은 다음과 같습니다. 단계별 업적 : 해당 업적을 달성하는데 선행 업적이 존재할 경우. 초기 상태 : 해당 업적 내용의 공개 여부 점수 : 해당 업적..
2020.09.14 -
!!! NOTICE !!! 이 글은 유니티의 이론을 다루고 있습니다! 학습한 정보를 제가 기억하고 추후에도 사용해두기 위해 기록해둔 내용입니다! 이 점 유의하고 봐주세요! 지난 글에서는 유니티 프로젝트를 Google Play Console에 등록하기까지 다뤄보았다. 이번에는 실제로 게임을 구글 플레이에 로그인 해보도록 하자. 구글 플레이 로그인하기 지난번 글에서 등록했던 게임의 세부정보를 다시 들어가보면 세부정보 최하단에서 OAuth2 클라이언트 ID를 얻을 수 있습니다. 이번에 이 클라이언트 ID를 사용할 터이니 복사해두세요. 왼쪽 메뉴에서 리더보드를 클릭해주세요. 유니티에서 사용할 리소스가 필요한데 이를 위해서 리더보드를 추가해줄 것입니다. 리더보드 추가 버튼을 눌러주세요. 지금은 간단하게 리더보드를..
[Unity/Theory] 구글 플레이와 연동하여 기능을 구현하자! (로그인)!!! NOTICE !!! 이 글은 유니티의 이론을 다루고 있습니다! 학습한 정보를 제가 기억하고 추후에도 사용해두기 위해 기록해둔 내용입니다! 이 점 유의하고 봐주세요! 지난 글에서는 유니티 프로젝트를 Google Play Console에 등록하기까지 다뤄보았다. 이번에는 실제로 게임을 구글 플레이에 로그인 해보도록 하자. 구글 플레이 로그인하기 지난번 글에서 등록했던 게임의 세부정보를 다시 들어가보면 세부정보 최하단에서 OAuth2 클라이언트 ID를 얻을 수 있습니다. 이번에 이 클라이언트 ID를 사용할 터이니 복사해두세요. 왼쪽 메뉴에서 리더보드를 클릭해주세요. 유니티에서 사용할 리소스가 필요한데 이를 위해서 리더보드를 추가해줄 것입니다. 리더보드 추가 버튼을 눌러주세요. 지금은 간단하게 리더보드를..
2020.09.14 -
!!! NOTICE !!! 이 글은 유니티의 이론을 다루고 있습니다! 학습한 정보를 제가 기억하고 추후에도 사용해두기 위해 기록해둔 내용입니다! 이 점 유의하고 봐주세요! 게임 개발자라면 반드시 만나게 될 운명. "모바일 게임 개발 및 출시" 이다. 그 중에서도 안드로이드 플랫폼에서 가장 큰 규모의 시장인 구글 Play 스토어에서 출시하는 개발자는 관련 기능들을 만나볼 수 있다. 이번 글은 그 기능들을 시작하는 방법부터 사용해보기까지를 정리해보았다. 구글 개발자 계정 생성 개발자 계정은 Play 스토어에 출시하기 위해선 필수로 요구하는 것이다. 개발자는 Play 스토어 관련 기능들을 게임에 적용하기 위해서는 Google Play Console을 접하게 되는데 여기에 진입하기 위해서는 개발자 계정을 요구하..
[Unity/Theory] 구글 플레이와 연동하여 기능을 구현하자! (초반 앱 승인하기)!!! NOTICE !!! 이 글은 유니티의 이론을 다루고 있습니다! 학습한 정보를 제가 기억하고 추후에도 사용해두기 위해 기록해둔 내용입니다! 이 점 유의하고 봐주세요! 게임 개발자라면 반드시 만나게 될 운명. "모바일 게임 개발 및 출시" 이다. 그 중에서도 안드로이드 플랫폼에서 가장 큰 규모의 시장인 구글 Play 스토어에서 출시하는 개발자는 관련 기능들을 만나볼 수 있다. 이번 글은 그 기능들을 시작하는 방법부터 사용해보기까지를 정리해보았다. 구글 개발자 계정 생성 개발자 계정은 Play 스토어에 출시하기 위해선 필수로 요구하는 것이다. 개발자는 Play 스토어 관련 기능들을 게임에 적용하기 위해서는 Google Play Console을 접하게 되는데 여기에 진입하기 위해서는 개발자 계정을 요구하..
2020.09.14 -
IT 업계에 종사하는 직군들에게 있어 다음의 두 가지가 꼭 필요하다고 생각한다. 일정 관리 해주는 앱 & 저장소 일정 관리는 캘린더, 구글 캘린더와 같은 달력에 일정을 입력하고 확인이 가능한 것들을 말한다. 이는 바쁜 생활 속에서 어떤 일을 해야 했었는지 잊을 수 있는 상황에 정리해둔 일정을 확인할 수 있도록 해주기 때문이다. https://calendar.google.com/calendar/r?tab=wc&pli=1 Google 캘린더 하나의 계정으로 모든 Google 서비스를 Google 캘린더로 이동하려면 로그인하세요. accounts.google.com 저장소란 구글 드라이브나 네이버 클라우드, FileZila 같은 FTP 서버에 데이터를 저장하고 언제 어디든지 꺼낼 수 있도록 접근이 가능한 그런..
[Tip] 일정 관리와 저장소IT 업계에 종사하는 직군들에게 있어 다음의 두 가지가 꼭 필요하다고 생각한다. 일정 관리 해주는 앱 & 저장소 일정 관리는 캘린더, 구글 캘린더와 같은 달력에 일정을 입력하고 확인이 가능한 것들을 말한다. 이는 바쁜 생활 속에서 어떤 일을 해야 했었는지 잊을 수 있는 상황에 정리해둔 일정을 확인할 수 있도록 해주기 때문이다. https://calendar.google.com/calendar/r?tab=wc&pli=1 Google 캘린더 하나의 계정으로 모든 Google 서비스를 Google 캘린더로 이동하려면 로그인하세요. accounts.google.com 저장소란 구글 드라이브나 네이버 클라우드, FileZila 같은 FTP 서버에 데이터를 저장하고 언제 어디든지 꺼낼 수 있도록 접근이 가능한 그런..
2020.07.11 -
소스코드를 수정할 때마다 업데이트를 하게 되고, 업데이트 할 때마다 버젼별로 프로젝트를 나누게 된다. 업데이트한 버전에서 버그가 발생하면 다시 버그를 수정하거나 당장 라이브 서버에 올려야 한다면 이전버전을 올리는 방식으로 진행한다. 그러면 이때 발생하는 버전들의 관리는 어떻게 처리해야 될까? 제일 좋은 방법 중의 하나는 Git과 같은 버전관리 프로그램을 사용하는 것이다. 본인은 지금까지 Github를 사용해서 버전관리를 해왔었다. 그것이 제일 보편적이며 효과적이라 생각했고 실제로도 효과적으로 동작해주었기 때문이다. Github Desktop 프로그램을 사용하면 콘솔로 Git을 다루는 방법을 크게 모르더라도 간단하게 Github에 접근이 가능했었다. 하지만 Github Desktop은 완벽히 안정적이지 못..
[Programming] 소스코드 버전 관리소스코드를 수정할 때마다 업데이트를 하게 되고, 업데이트 할 때마다 버젼별로 프로젝트를 나누게 된다. 업데이트한 버전에서 버그가 발생하면 다시 버그를 수정하거나 당장 라이브 서버에 올려야 한다면 이전버전을 올리는 방식으로 진행한다. 그러면 이때 발생하는 버전들의 관리는 어떻게 처리해야 될까? 제일 좋은 방법 중의 하나는 Git과 같은 버전관리 프로그램을 사용하는 것이다. 본인은 지금까지 Github를 사용해서 버전관리를 해왔었다. 그것이 제일 보편적이며 효과적이라 생각했고 실제로도 효과적으로 동작해주었기 때문이다. Github Desktop 프로그램을 사용하면 콘솔로 Git을 다루는 방법을 크게 모르더라도 간단하게 Github에 접근이 가능했었다. 하지만 Github Desktop은 완벽히 안정적이지 못..
2020.07.11 -
회사 내에서는 E-MAIL 을 통해서 직원분들과 소통하는 일이 비일비재 하다고 한다. 예를 들어서 게임 프로젝트를 진행하고 있을 때 변경사항에 대해서 정보를 보낸다든지 예를 들어서 타 거래처분이 요청하신 내역을 E-MAIL 로 보낸다든지 이런 상황에 대해서 대처방법을 대학교 강의에서 교수님께 들은 적이 있기에 이번에 게시글로 정리해서 올리려고 한다. 우선 메일을 보낼 때 다음의 내용은 들어가야 한다고 한다. 1. 개요 2. 요약 내용 3. 자세한 내용 4. 끝인사 개요는 첫 인삿말과 함께 무엇을 이유로 메일을 보내는지에 대해서 이다. 예를 들면 이렇다. "안녕하세요, @@@의 @@@입니다. 요청하신 기획서 파일을 보내고자 메일로 첨부하여 드립니다." 이 내용은 받는 사람이 해당 메일의 내용을 알 수 있도..
[Tip] 회사 내에서 프로젝트 변경사항을 보낼 때회사 내에서는 E-MAIL 을 통해서 직원분들과 소통하는 일이 비일비재 하다고 한다. 예를 들어서 게임 프로젝트를 진행하고 있을 때 변경사항에 대해서 정보를 보낸다든지 예를 들어서 타 거래처분이 요청하신 내역을 E-MAIL 로 보낸다든지 이런 상황에 대해서 대처방법을 대학교 강의에서 교수님께 들은 적이 있기에 이번에 게시글로 정리해서 올리려고 한다. 우선 메일을 보낼 때 다음의 내용은 들어가야 한다고 한다. 1. 개요 2. 요약 내용 3. 자세한 내용 4. 끝인사 개요는 첫 인삿말과 함께 무엇을 이유로 메일을 보내는지에 대해서 이다. 예를 들면 이렇다. "안녕하세요, @@@의 @@@입니다. 요청하신 기획서 파일을 보내고자 메일로 첨부하여 드립니다." 이 내용은 받는 사람이 해당 메일의 내용을 알 수 있도..
2020.07.10 -
이번에 다루는 내용은 스트리머 김나성님 방송에서 보고 정리하는 내용입니다! 혹시라도 이번 글이 문제가 된다면 즉시 댓글 혹은 아래 링크에 적혀있는 연락처를 통해서 연락해주시길 바랍니다. 문제가 확실시 된다면 바로 글을 내리도록 하겠습니다. https://onionisdelicious.tistory.com/pages/About-Me About Me 안녕하세요. 처음뵙겠습니다. 훈제양파 입니다. Who am i? 저는 게임 프로그래머를 지망하는 대학생입니다. 게임을 좋아하는 사람으로써 게임에 관련된 분야라면 이것저것 건들여(?)보고 있습니다 onionisdelicious.tistory.com 내용은 이렇습니다. Everslash 라고 하는 어드벤처 게임을 제작하시는 개발자님의 부탁으로 나성님이 해당 게임을 ..
[Unity/Issue] 어드벤처 게임에서의 캐릭터 대사 관리이번에 다루는 내용은 스트리머 김나성님 방송에서 보고 정리하는 내용입니다! 혹시라도 이번 글이 문제가 된다면 즉시 댓글 혹은 아래 링크에 적혀있는 연락처를 통해서 연락해주시길 바랍니다. 문제가 확실시 된다면 바로 글을 내리도록 하겠습니다. https://onionisdelicious.tistory.com/pages/About-Me About Me 안녕하세요. 처음뵙겠습니다. 훈제양파 입니다. Who am i? 저는 게임 프로그래머를 지망하는 대학생입니다. 게임을 좋아하는 사람으로써 게임에 관련된 분야라면 이것저것 건들여(?)보고 있습니다 onionisdelicious.tistory.com 내용은 이렇습니다. Everslash 라고 하는 어드벤처 게임을 제작하시는 개발자님의 부탁으로 나성님이 해당 게임을 ..
2020.07.10 -
블루프린트 뷰포트에서 캐릭터 메쉬를 할당해주고 위치를 조절할 때 좌측 상단의 원근을 사용하면 정확한 위치 이동이 가능하다. 여담으로 유니티, 3DMAX, 언리얼의 좌표계는 모두 다르다. 그렇기에 화살표(Arrow) 컴포넌트는 캐릭터의 방향을 알려주어 정말 편하다고 할 수 있다. 이벤트 그래프에서 데이터에 우클릭 하면 변수로 승격이라는 버튼이 존재한다. 이 기능은 해당 핀에 호환되는 변수를 만들고 Get 노드를 꺼내 바로 연결까지 해준다. https://onionisdelicious.tistory.com/49 [UE4/Theory] 008. 인터페이스 Interface !!! NOTICE !!! 이 글은 언리얼의 기본 이론 등을 다루고 있습니다! 학습한 정보를 제가 기억하고 추후에도 사용해두기 위해 기록해..
[UE4/Theory] 000. 자잘한 팁들블루프린트 뷰포트에서 캐릭터 메쉬를 할당해주고 위치를 조절할 때 좌측 상단의 원근을 사용하면 정확한 위치 이동이 가능하다. 여담으로 유니티, 3DMAX, 언리얼의 좌표계는 모두 다르다. 그렇기에 화살표(Arrow) 컴포넌트는 캐릭터의 방향을 알려주어 정말 편하다고 할 수 있다. 이벤트 그래프에서 데이터에 우클릭 하면 변수로 승격이라는 버튼이 존재한다. 이 기능은 해당 핀에 호환되는 변수를 만들고 Get 노드를 꺼내 바로 연결까지 해준다. https://onionisdelicious.tistory.com/49 [UE4/Theory] 008. 인터페이스 Interface !!! NOTICE !!! 이 글은 언리얼의 기본 이론 등을 다루고 있습니다! 학습한 정보를 제가 기억하고 추후에도 사용해두기 위해 기록해..
2020.07.09 -
!!! NOTICE !!! 이 글은 언리얼의 기본 이론 등을 다루고 있습니다! 학습한 정보를 제가 기억하고 추후에도 사용해두기 위해 기록해둔 내용입니다! 이 점 유의하고 봐주세요! 언리얼에서는 AI 컨트롤 클래스 라는 녀석을 제공해주고 있다. 이 클래스는 AI가 하는 행동들을 구현해 놓은 클래스이다. 위처럼 AI 컨트롤러를 만들어 두면 이를 다른 Enemy에 연결하여 AI를 활용할 수 있도록 한다. 스텔스 게임의 경우 일반적으로 게임 내에서의 적이 플레이어를 보거나 플레이어의 소음을 듣고 행동한다. 그런 행동 역시, AI Controller 블루프린트에서 지정이 가능하다. 위에서 생성한 블루프린트의 컴포넌트에 PawnSensing 을 추가하자. PawnSensing 으로 방금 말했던 부분들을 감지할 수 ..
[UE4/Theory] 016. AI 컨트롤러 AI Controller!!! NOTICE !!! 이 글은 언리얼의 기본 이론 등을 다루고 있습니다! 학습한 정보를 제가 기억하고 추후에도 사용해두기 위해 기록해둔 내용입니다! 이 점 유의하고 봐주세요! 언리얼에서는 AI 컨트롤 클래스 라는 녀석을 제공해주고 있다. 이 클래스는 AI가 하는 행동들을 구현해 놓은 클래스이다. 위처럼 AI 컨트롤러를 만들어 두면 이를 다른 Enemy에 연결하여 AI를 활용할 수 있도록 한다. 스텔스 게임의 경우 일반적으로 게임 내에서의 적이 플레이어를 보거나 플레이어의 소음을 듣고 행동한다. 그런 행동 역시, AI Controller 블루프린트에서 지정이 가능하다. 위에서 생성한 블루프린트의 컴포넌트에 PawnSensing 을 추가하자. PawnSensing 으로 방금 말했던 부분들을 감지할 수 ..
2020.07.09 -
!!! NOTICE !!! 이 글은 언리얼의 기본 이론 등을 다루고 있습니다! 학습한 정보를 제가 기억하고 추후에도 사용해두기 위해 기록해둔 내용입니다! 이 점 유의하고 봐주세요! 언리얼에서는 NPC의 AI를 편하게 구현하기 위해서 다양한 기능을 제공한다. 이번에 소개할 기능은 그 중 하나이다. 여담으로 이 기능은 유니티에서도 존재한다. 내비게이션 메쉬는 AI가 움직일 수 있는 이동 범위를 지정할 수 있다. 우선 다음의 객체를 꺼내 배치해보자. 그럼 큐브와 비슷한 모습으로 등장하는데 해당 큐브 영역 안에 스테이지가 존재하면 이를 자동으로 감지하여 이동할 수 있는지 없는지를 자동으로 판단한다. 내비 메시의 스케일을 늘리면 늘릴 수록 그 범위는 증가한다. 내비 메시의 스케일을 늘려서 내비가 적용되는 범위를 ..
[UE4/Theory] 015. 내비게이션 메쉬!!! NOTICE !!! 이 글은 언리얼의 기본 이론 등을 다루고 있습니다! 학습한 정보를 제가 기억하고 추후에도 사용해두기 위해 기록해둔 내용입니다! 이 점 유의하고 봐주세요! 언리얼에서는 NPC의 AI를 편하게 구현하기 위해서 다양한 기능을 제공한다. 이번에 소개할 기능은 그 중 하나이다. 여담으로 이 기능은 유니티에서도 존재한다. 내비게이션 메쉬는 AI가 움직일 수 있는 이동 범위를 지정할 수 있다. 우선 다음의 객체를 꺼내 배치해보자. 그럼 큐브와 비슷한 모습으로 등장하는데 해당 큐브 영역 안에 스테이지가 존재하면 이를 자동으로 감지하여 이동할 수 있는지 없는지를 자동으로 판단한다. 내비 메시의 스케일을 늘리면 늘릴 수록 그 범위는 증가한다. 내비 메시의 스케일을 늘려서 내비가 적용되는 범위를 ..
2020.07.09 -
!!! NOTICE !!! 이 글은 언리얼의 기본 이론 등을 다루고 있습니다! 학습한 정보를 제가 기억하고 추후에도 사용해두기 위해 기록해둔 내용입니다! 이 점 유의하고 봐주세요! 사운드를 사용하기 위해선 콘텐츠 브라우저로 사운드 파일을 가져오고 우클릭 -> 큐 생성으로 큐를 만들어준다. (언리얼에서 사운드를 사용하기 위해선 되도록 .wav파일을 사용하자) Material 파일과 비슷한 맥락으로 사운드 소스를 출력하는데 여러가지 처리를 할 수 있다. 예를 들어서 Modulator 라는 노드는 해당 사운드의 Pich값, Volume값을 조절할 수 있도록 해준다. Random 노드를 추가하면 다수의 사운드 클립을 연결 해주고 재생했을 때, 연결된 사운드 중에서 랜덤으로 하나를 재생하도록 한다. 이는 피격마다..
[UE4/Theory] 014. 사운드 Sound!!! NOTICE !!! 이 글은 언리얼의 기본 이론 등을 다루고 있습니다! 학습한 정보를 제가 기억하고 추후에도 사용해두기 위해 기록해둔 내용입니다! 이 점 유의하고 봐주세요! 사운드를 사용하기 위해선 콘텐츠 브라우저로 사운드 파일을 가져오고 우클릭 -> 큐 생성으로 큐를 만들어준다. (언리얼에서 사운드를 사용하기 위해선 되도록 .wav파일을 사용하자) Material 파일과 비슷한 맥락으로 사운드 소스를 출력하는데 여러가지 처리를 할 수 있다. 예를 들어서 Modulator 라는 노드는 해당 사운드의 Pich값, Volume값을 조절할 수 있도록 해준다. Random 노드를 추가하면 다수의 사운드 클립을 연결 해주고 재생했을 때, 연결된 사운드 중에서 랜덤으로 하나를 재생하도록 한다. 이는 피격마다..
2020.07.09 -
!!! NOTICE !!! 이 글은 언리얼의 기본 이론 등을 다루고 있습니다! 학습한 정보를 제가 기억하고 추후에도 사용해두기 위해 기록해둔 내용입니다! 이 점 유의하고 봐주세요! 대쉬를 구현하기 위해서 Launch 노드를 사용할 것이다. 구현 방법은 다음과 같은 구조로 시행했다. 프로젝트 세팅에서 DashStart Input 값을 설정하고 캐릭터 블루프린트의 부모 클래스에서 이벤트를 만든다. 그리고 커스텀 이벤트를 만드는데 이때, 커스텀 구현내용은 자식 클래스에서 할 것이기에 비워둔다. 자식 클래스에서 DashEvent 노드를 꺼낸다. 구현하기 전에 부모 클래스에 있던 내용도 실행해주기 위해서 우클릭 -> 부모 함수로의 호출 추가를 누른다. 그러면 부모 함수도 호출하는 노드가 생성된다. 이후엔 Laun..
[UE4/Theory] 013. 앞 대쉬 구현 (Launch)!!! NOTICE !!! 이 글은 언리얼의 기본 이론 등을 다루고 있습니다! 학습한 정보를 제가 기억하고 추후에도 사용해두기 위해 기록해둔 내용입니다! 이 점 유의하고 봐주세요! 대쉬를 구현하기 위해서 Launch 노드를 사용할 것이다. 구현 방법은 다음과 같은 구조로 시행했다. 프로젝트 세팅에서 DashStart Input 값을 설정하고 캐릭터 블루프린트의 부모 클래스에서 이벤트를 만든다. 그리고 커스텀 이벤트를 만드는데 이때, 커스텀 구현내용은 자식 클래스에서 할 것이기에 비워둔다. 자식 클래스에서 DashEvent 노드를 꺼낸다. 구현하기 전에 부모 클래스에 있던 내용도 실행해주기 위해서 우클릭 -> 부모 함수로의 호출 추가를 누른다. 그러면 부모 함수도 호출하는 노드가 생성된다. 이후엔 Laun..
2020.07.09 -
!!! NOTICE !!! 이 글은 언리얼의 기본 이론 등을 다루고 있습니다! 학습한 정보를 제가 기억하고 추후에도 사용해두기 위해 기록해둔 내용입니다! 이 점 유의하고 봐주세요! 적의 피격 판정을 처리해보려고 한다. 본인은 사전에 적에 대해서 블루프린트를 만들어 두었다. 혹시라도 이 글을 보는 사람이 있다면 이 글이 조금 난해하더라도 구현 방식에 집중하주었음 한다. 그럼 원하는 정보를 얻을 수 있을 것이다. 적의 피격 판정을 처리하기 위해서 피격 판정용 콜리전을 만들어 넣어준다. 이유는 캐릭터 기반 블루프린트가 기존에 가지고 있는 캡슐 콜리전은 용도에 맞게 변경이 어려울 뿐 아니라 다른 콜리전으로 변경이 복잡하다. 캐릭터의 공격 판정을 처리하기 위해서 마찬가지로 캐릭터에 공격 판정용 콜리전을 만들어 넣..
[UE4/Theory] 012. 피격 판정 처리 (Collision Overlap / AnimNotifyState)!!! NOTICE !!! 이 글은 언리얼의 기본 이론 등을 다루고 있습니다! 학습한 정보를 제가 기억하고 추후에도 사용해두기 위해 기록해둔 내용입니다! 이 점 유의하고 봐주세요! 적의 피격 판정을 처리해보려고 한다. 본인은 사전에 적에 대해서 블루프린트를 만들어 두었다. 혹시라도 이 글을 보는 사람이 있다면 이 글이 조금 난해하더라도 구현 방식에 집중하주었음 한다. 그럼 원하는 정보를 얻을 수 있을 것이다. 적의 피격 판정을 처리하기 위해서 피격 판정용 콜리전을 만들어 넣어준다. 이유는 캐릭터 기반 블루프린트가 기존에 가지고 있는 캡슐 콜리전은 용도에 맞게 변경이 어려울 뿐 아니라 다른 콜리전으로 변경이 복잡하다. 캐릭터의 공격 판정을 처리하기 위해서 마찬가지로 캐릭터에 공격 판정용 콜리전을 만들어 넣..
2020.07.09 -
!!! NOTICE !!! 이 글은 언리얼의 기본 이론 등을 다루고 있습니다! 학습한 정보를 제가 기억하고 추후에도 사용해두기 위해 기록해둔 내용입니다! 이 점 유의하고 봐주세요! 이번 글은 이전 글 중에서 'C++로 다루는 언리얼'의 추가 내용이다. 다음의 링크를 확인하자. https://onionisdelicious.tistory.com/44 [UE4/Theory] 005. C++로 다루는 언리얼 !!! NOTICE !!! 이 글은 언리얼의 기본 이론 등을 다루고 있습니다! 학습한 정보를 제가 기억하고 추후에도 사용해두기 위해 기록해둔 내용입니다! 이 점 유의하고 봐주세요! 언리얼은 C++ 언어로 프� onionisdelicious.tistory.com 본인이 사용하고 있는 캐릭터는 부모 클래스가 C..
[UE4/Theory] 011. C++로 다루는 언리얼 2!!! NOTICE !!! 이 글은 언리얼의 기본 이론 등을 다루고 있습니다! 학습한 정보를 제가 기억하고 추후에도 사용해두기 위해 기록해둔 내용입니다! 이 점 유의하고 봐주세요! 이번 글은 이전 글 중에서 'C++로 다루는 언리얼'의 추가 내용이다. 다음의 링크를 확인하자. https://onionisdelicious.tistory.com/44 [UE4/Theory] 005. C++로 다루는 언리얼 !!! NOTICE !!! 이 글은 언리얼의 기본 이론 등을 다루고 있습니다! 학습한 정보를 제가 기억하고 추후에도 사용해두기 위해 기록해둔 내용입니다! 이 점 유의하고 봐주세요! 언리얼은 C++ 언어로 프� onionisdelicious.tistory.com 본인이 사용하고 있는 캐릭터는 부모 클래스가 C..
2020.07.09