전체 글

· ETC/Unity
C# 스크립트로 스토리 진행 로직 작업을 하다가 문득 그런 생각이 들었다. Xml이나 Json에 프리팹이나 리소스와 스토리 내용을 등록해 직렬화 하고, 거기에 필요한 데이터만 런타임중에 불러와서 표시해주면 간단하지 않을까? 바로 해보자. Editor 폴더에 스크립트를 작성한다. Story Scene Editor는 스토리 내용과 리소스를 등록해줄 에디터 Story Scene List는 위 에디터에서 직렬화 후 저장한 데이터들을 한번에 볼 수 있는 창이다. [SerializeField] public Dictionary storySceneList; private SerializedObject storySceneObject; private SerializedProperty storySceneListPropert..
· ETC/Unity
SaveData가 있으면 버튼에 이벤트를 동적으로 할당하게 처리해줬다. 근데 자꾸 0~4의 범위를 벗어나 5번에다 저장한다...ㅜㅜ 검색해보니 for loop 안에서 람다함수 사용 시 발생하는 Closure 문제라고 한다... for loop 내부에서 i값을 그때그때 값 복사, 참조하면 해결 Reference: https://velog.io/@jh11240/Unity%EB%B0%98%EB%B3%B5%EB%AC%B8%EC%97%90%EC%84%9C-%EB%9E%8C%EB%8B%A4delegate%ED%95%A8%EC%88%98-%EC%82%AC%EC%9A%A9%EC%8B%9C-%EB%AC%B8%EC%A0%9C%EC%A0%90%ED%81%B4%EB%A1%9C%EC%A0%80-%EB%AC%B8%EC%A0%9C
어째 인게임 로직 구현보다 UI 구성하는데 시간이 더 오래 걸리는 것 같다..ㅜㅜ DJMAX RESPECT V는 대부분의 UI가 사선으로 깎여서 채워지는데, 쉐이더는 도저히 모르겠어서 아래와 같이 처리했다. 흰 배경 이미지 하나를 넣고 Mask 컴포넌트 추가, 스크립트로 Fill Amount를 0.3~0.5초에 걸쳐 채워주도록 했다. 4, 5, 6, 8 버튼 순환 시 BUTTON TUNES와 배경 사이에 나오는 이펙트는 프리팹으로 만들어서 Start() 함수에서 Fill Amount 호출 왼쪽에서부터 다 채워지면 fillOrigin을 오른쪽으로 바꾼 다음 1.0f -> 0f로 다시 빼도록 처리해줬다. - 사선의 방향이 반대로(45도 or -45도) 되게 하고 싶다면 fillMethod를 Top으로 바꿔주..
· ETC/Git
앞선 포스팅에서 Git을 사용하는 이유로 협업의 용이성과 테스트를 들었다. 위 두가지 모두 가지치기가 필수라고 볼 수 있는데, 이번엔 가지치기에 대해 알아보도록 하자. 가지치기? 영어로는 Branch라고 하며, git 명령어 또한 git branch로 사용한다. 앞서 로컬 저장소를 만들었을 당시 디렉터리 뒤에 master라고 나와있던것을 기억하는가? 그것이 바로 브랜치명이다. 디렉터리명 뒤에 있는 민트색 master가 브랜치명이다. 나무의 줄기(메인 브랜치)에서 별도의 가지(새 브랜치)를 작성, 메인 브랜치에 영향을 주지 않고 코드를 자유롭게 추가, 수정, 삭제가 가능하다. 큰 가지에서 또 다른 갈래가 뻗어나가듯, 메인 브랜치가 아닌 다른 브랜치에서 분기가 가능하다. 테스트가 완료되었다면 메인 브랜치에 ..
· ETC/Git
이전 포스팅에서 push한 솔루션 폴더에는 아래 사진과 같이 비어있는 cpp파일만 있었다. 이 파일을 수정하고 업로드해보자. 간단하게 Hello World만 출력하는 프로그램을 작성했다. 이것만 하면 아쉬우니까 Github에서 추가해달라고 하는 README를 같이 작성해서 넣어보도록 하자. 솔루션 우클릭 - 추가 - 새 항목 파일명은 README.md로 입력한다. readme.md로 해도 상관없다. 확장자인 .md는 마크다운이다. 마크다운 문법은 이 문서에 아주 잘 설명되어 있다. 업로드해보자 Bash를 열고 아래 명령어를 입력한다. git add . git commit -m "커밋메세지" git push 원격 저장소를 보면 잘 적용되어있다. 이번에는 일부 파일만 추가해 커밋을 해보자. 위와 같이 두개의..
· ETC/Git
원격 저장소 생성하기 Github에 로그인 후 메인 페이지에 가면 Dashboard가 보인다. [New] 버튼을 눌러보자. 위와 같은 페이지가 나온다. Repository Name 에는 저장소의 이름을 영어로 입력한다. 한글 및 특수문자는 모두 하이픈-으로 치환된다. Description에는 저장소에 대한 설명을 간략하게 입력한다. 귀찮으면 넘겨도 된다. Public과 Private은 이 저장소를 공개할 것인지, 비공개로 둘 것인지를 선택하는 것이다. TMI 원래 Github의 Private 저장소는 유료였는데, 3인 미만은 무료로 쓸 수 있게 바뀌었다. 다만 무료 사용자는 Private 저장소에서 Pull Request 등의 여러 협업 기능을 사용할 수 없고, 3인 미만의 무료 사용자 팀이라면 Orga..
· ETC/Git
이전 포스팅에서 git config을 사용했는데, 종종 쓰이므로 config의 종류에 대해 알아보자. 콘솔창에 git config --help 라고 입력하면 git-config(1) Manual Page라는 제목의 웹페이지가 하나 뜬다. 입문자의 입장에선 장황하기 그지없는 불친절한 (그것도 영어로 쓰인) 문서이기 때문에 접어두도록 하고, 이 포스팅에선 기초적인 사용방법과 자주 쓰이는 config만 설명한다. 기본 사용방법 기본적인 사용방법은 여타 콘솔 명령어와 다르지 않다. git config [설정 이름] [설정 값] 범위 지정 설정값이 적용될 범위를 지정할 수 있다. 범위가 적용되는 우선순위는 로컬 저장소 > Global > System 이다. 로컬 저장소의 설정이 가장 하위 설정 Local 범위 지..
· ETC/Git
https://github.com/explore Explore GitHub Explore is your guide to finding your next project, catching up with what’s trending, and connecting with the GitHub community. github.com 위 링크로 들어가면 인기있는 공개 저장소와 인기있는 개발자 프로필이 나온다. "누구나 참여 가능한 알고리즘 코딩테스트 문제풀이 스터디" 가 눈에 띈다. 해당 저장소를 받아보자. 클릭하면 위와 같은 화면이 나오는데, 원격 저장소에 올라와있는 코드와 해당 코드가 수정된 날짜, 커밋 등의 정보가 나온다. 우측 상단의 [ Code ] 버튼을 눌러보자. Download ZIP을 눌러 압축파일로 ..
· ETC/Git
Git client 다운로드 이 게시글은 Windows 환경만 설명한다. Git for Desktop으로 접속한다. 화면에 보이는 Windows 를 클릭하고, 본인의 운영체제 환경에 맞는 Setup파일을 다운로드 한다. 설치 옵션이 엄청나게 많은데, 굳이 만질 필요 없다. 계속 Next만 눌러서 설치해준다. 설치 확인 파일 탐색기를 열고 빈 공간에 우클릭 했을 때 Open Git GUI Here 메뉴와 Open Git Bash Here 메뉴가 보인다면 정상적으로 설치가 된 것이다. 혹은 Win + R 키를 눌러 cmd를 입력, 명령 프롬프트에 git이라고 입력 후 엔터. 정상적으로 설치됐다면 아래와 같이 나온다.
· ETC/Git
Git이 뭐야? 리눅스의 아버지, 리누스 토발즈가 개발한 분산형 버전 관리 시스템. 쉽게 설명하면 코드의 다양한 버전을 관리할 수 있는 시스템임. 코드뿐만 아니라 그래픽리소스 등 파일의 버전관리도 가능함. 왜 쓰는건데? 협업이 용이하다. 작업자의 작업 공간이 분리되고, 작업 내역을 하나로 합치는 병합 작업이 쉽게 이뤄진다. 변경사항이 기록되어 버전 관리가 용이하다. 개발을 하다보면 이전 버전으로 되돌아가야 하는 경우가 빈번히 생긴다. 어젯밤에 코드를 수정하고 잠에 들었는데 아침에 실행해보니 동작하지 않는다면? 새 기능을 추가했는데 QA에서는 잡히지 않은 치명적인 예외사항(결제오류 등)이 생겼다면? 테스트 코드를 확인하기 쉽다. 테스트 서버에만 적용하고 라이브 서버에는 적용하면 안되는 경우에 사용할 수 있..
Jade Choe
Jade's Hello, World!