카테고리
개발자를 위한 디자인 관련 자료 모음
2018. 6. 17.대학교에서 모델링 수업을 들었을 때와 개구멍 노동부에서 영상 편집을 했을 때를 제외하고는 아트쪽 관련 공부를 재대로 해본적이 없다. 개발 공부만 해도 빡시긴하지만 조금 조금씩 꾸준히 해서 병특이 끝날즘에는 어느정도 아트도 커버할 수 있게 만들어보려고한다. 그런김에 이 포스팅에 디자인 관련 자료들을 정리해보려함 (Github에 하려고 했지만 추가할 때마다 커밋으로 묶여서 그냥 블로그에....) 0. 개발자를 위한 도트디자인 입문[유유자적 라이프 - 김윤정님] 1. MortMort`s Pixel Art tutorial 잘생긴 외국인이 만든 Pixel Art관련 튜토리얼 영상들 URLAsprite를 기반으로 설명하고 있음 뭐, 툴일 뿐이니 큰 상관은 없을 듯하다. [나중에 한글자막 달 수 있으면 달아줘야지]
Unity할 때 외워두면 유용한 Mathf 함수들
2018. 6. 17.유니티를 사용하다 보면 숫자를 계산할 때가 많습니다. 이 숫자들을 다룰 때 자주 사용하는 클래스가 Mathf 클래스입니다. 레퍼런스가 잘 되어있다고 하더라도 자주 사용하는 함수들을 외워두면 코드를 작성하는 시간을 크게 줄일 수 있을 것입니다. (무엇보다 구글 켜서 검색하는게 귀찮음...) 그래서 이번에는 알아두면 좋고, 나의 삽질 시간을 줄여줄 수 있는 유용한 Mathf 함수들을 정리해보려고 합니다. 0. 절댓값 Mathf.Abs(float num) Abs은 num에 대한 절댓값을 반환해줍니다. 가끔 데이터의 부호를 때고 계산해야 할 때 편리하게 사용할 수 있습니다. 1. 최대/최솟값 Mathf.Clamp(float num, float min, float max)Mathf.Clamp01(float num..
수학으로 곡선을 그려보기 Part.1 [Hermite Curve]
2018. 6. 9.학교에서 들었던 컴퓨터 그래픽스 수업은 정말 지루했습니다... (지금까지 대학교생활에서 가장 재미없던 강의로 손에 꼽을 듯) 그래도 그중에서 재미있었던 파트를 꼽자면 과 를 고를 수 있을 것 같습니다. 좌표계 변환은 이다음에 알아보기로 하고 지금은 에 관련해서 정리해보려 합니다. 수학적인 곡선곡선은 수학적으로 어떻게 표현할 수 있을까요? 꺼무위키를 인용해 보면 다음과 같습니다. ...좀 더 엄밀하게 말하자면 연속적인 순서쌍의 집합이나 선으로 동형사상이 있는 위상 공간 정도일 것이다. 조금 더 이해하기 쉽게 우리에게 친숙한 xy-평면인 $R^{2}$ 공간으로 생각한다면, 평면 위의 곡선은 어떠한 연속함수 $\varphi:\left[0,1\right]\to R^2$가 있어서 $S=\left\{\left(x,..
예능 자막의 재구성 - 무한도전편 [형이 왜 거기서]
2018. 4. 3.윈도우 데스크탑에 용량이 좀 부족해서 이리저리 폴더를 정리하다가 옛날에 사용했던 자막 파일들이 눈에 들어와서 포스팅을 새롭게 해보려 합니다. 포스팅을 안한 두세가지 정도의 자막 템플릿이 있는 것 같은데 레이어 좀 다듬는 데 시간이 걸릴 것 같습니다. 일단 가장 추가 변경 없이 사용할 수 있는 '형이 왜 거기서 나와…? 재구성해보도록 합시다. 살펴보기 '형이 왜 거기서 나와...?' 자막을 살펴보면 핑크색 계열의 컬러와 꽃, Sparkle 정도의 요소들을 조합해서 만든 폰트라는 것을 알 수 있다. 생각보다 훨씬 간단하게 제작할 수 있는 자막입니다. 준비물준비물을 정리해서 또 파일로 올리겠지만 위에서 언급했던 요소들을 적당히 구글링으로 구해서 사용하면 될 것 같습니다. 자막 재구성1. 먼저 '형이 왜 거기서..
Javascript 정규식(Regex) 분석기
2018. 4. 3.최근 플러그인이나 툴을 만들때 사용자가 입력한 string을 일정 규칙에 따라 파싱할 일이 생겨서 정규식에 대해 좀 뒤적거려봤다. 정규식에 익숙하지 않다면 정규식을 활용한 소스코드를 읽고 이해하기는 힘들 겠지만, 정규식을 알고 있다면 작성해야하는 소스코드라인이 확 줄어버리기 때문에 대량의 문자열을 처리하는 웹이나 데이터 사이언스 분야에서는 필수가 아닐까 싶다. 하지만, 가독성만큼은 거의... 멸망에 가깝다고할 수 있다. 완벽하게 익혀서 술술 읽을 수 있는 것이 아니라면 대략 어떤 형태인지 주석이라고 달아두는 것이 유지 보수가 편할 것이라고 생각한다. 그러나 이번에 다른 오픈소스나 Gist를 좀 뒤적거리면서 느낀건.... 그렇게 주석을 써둔 사람이 없다는 거다. 그래서 (1)정규식이 아직 익숙하지 않고, ..
GDC18 기념 무료 게임 사운드 30GB 모음집
2018. 3. 26.다운로드 : https://goo.gl/nDyRgX 올해 GDC18에서도 SONNISS에서 무료로 30GB 상당의 사운드 파일을 배포하고 있다. 다운로드 링크와 드랍 박스, 구글 드라이브, Torrent로도 배포하고 있으니 저장공간이 여유가 있다면 쟁여두고 찬찬히 살펴보는 것도 좋을것 같다. 매년 GDC 마다 이렇게 30GB씩 배포하는데 그동안 받았던 것들도 정리해 놔야 될 것 같다. // 뭔가 길게 쓸까 했다가 작년이랑 같은 내용이 될 것같아 이만 생략!
[번역] 유니티의 예약 폴더들이 가지고 있는 기능들
2018. 3. 18.원문: http://wiki.unity3d.com/index.php/Special_Folder_Names_in_your_Assets_Folder 유니티 에셋 폴더의 예약된 이름들 유니티에서 몇몇 폴더 이름은 특별한 속성을 가지고 있다.숨겨진 폴더들 - 점(.)으로 시작하는 폴더(ex. “.UnitTests/”, “.svn/”)는 유니티에 의해 무시된다. 이 폴더에 들어 있는 어떠한 에셋도 임포트되지 않으면 어떠한 스크립트도 컴파일되지 않는다. 또한 프로젝트 뷰에서도 보이지 않는다. 1. Standard Assets 이 폴더에 있는 스크립트들은 가장 먼저 컴파일된다. 그로므로 스크립트를 Standard Assets 폴더에 두는 것은 C# 스크립트가 .js 스크립트에 접근할 수 있게 하거나 또는 .js 스크..
[번역] 유니티의 Resource Folder에 관하여
2018. 3. 14.The Resource folder이건 Unity5에서 에셋, 리소스 그리고 리소스 관리에 관한 아티클 스리즈의 세 번째 챕터입니다. 이 챕터에서는 리소스 시스템에 관해 설명합니다. 리소스 시스템은 개발자가 "Resource"라는 이름의 하나 이상의 폴더에 Asset을 저장하고 Resource API를 사용하여 런타임에 이러한 Asset에서 개체를 로드하거나 언로드 합니다.. 2.1 Resource System에 대한 모범 사례쓰지마세요! 이렇게 말하는데에는 몇가지 이유가 있습니다. 1. 리소스 폴더를 사용하면 세분화된 메모리 관리가 더욱 어려워집니다.2. 리소스 폴더를 부적절하게 사용하면 애플리케이션 시작 시간과 빌드 길이가 증가합니다. (리소스 폴더의 수가 증가함에 따라 이러한 폴더 내의 Asset ..
Unity VideoPlayer가 Gradle 빌드에서 작동하지 않는 이슈
2018. 2. 12.요즘 어느 정도 볼륨이 있는 게임을 하다 보면 AssetBundle을 다운받는 동안 해당 게임 관련 동영상을 틀어준다거나 튜토리얼, 세계관 같은 것들을 영상으로 틀어주는 경우가 가끔 있다. 그 외에도 학부 프로젝트를 하다보면 유니티 안에서 동영상으로 대략 때우거나 VR 관련 영상을 재생 해야 하는 경우가 생기는데 이때 유니티 내장 Video Player를 사용하곤 한다. 회사에서도 라이브 운영 중 바뀐 시스템에 대해서 간단하게 소개하기 위해 Video Player를 사용하게 되었는데 에디터에서는 잘 작동했으나 디바이스에서는 어째 잘 작동하지 않았다. 에디터에서는 분명히 잘 작동했기 때문에 디바이스의 로그를 찍어보기로 했다. 결과는? AndroidVideoMedia OpenExtractor: file is..
Unity에서 iPhone X를 대응하는 간편한 방법
2018. 1. 5.시작하면서얼마 전까지 iOS에서 가장 핫한 이슈였으며 골칫거리였던 주제는 iPhone X의 탈모 디자인이었다. 각진 사각형이거나 살짝 라운드가 들어간 기존의 안드로이드나 iOS의 화면과는 다르게 화면 상단 부분에 1)M자 탈모처럼 생긴 검은 영역이 생겼기 때문이다. 탈모도 문제였지만 2)물리 홈버튼을 제거하면서 생겨난 홈바가 터치 화면의 일정 영역을 차지했고, 이 영역 또한 고려해 프로그램을 작성해야 했다. 우리는 이 두 개의 요소를 고려해 대응할 필요가 있다. (그래야 피쳐드를 받...읍읍) 이런 대응은 일반적인 iOS 개발은 기존에 있었던 Auto layout 정책을 잘 따랐다면 쉽게 대응할 수 있다고는 한다. 하지만, 게임은 주로 상용화된 게임 엔진을 이용하여 제작하는 경우가 많기 때문에 빌드 사이..
iOS 빌드할 때 Your development team has reached the maximum number of registered iPhone devices. 문제
2017. 12. 27.2년 만에 핸드폰을 iPhone으로 교체했다. 요즘 iPhone X에 대응하게 해주면서 Editor 안에서 테스트를 해볼 수 있게 해주는 Unity 플러그인을 하나 제작 중이다. 제작을 어느정도 끝내고 당연하게도 iOS를 빌드 하는 순간 다음과 같은 매세지를 던졌다. Your development team has reached the maximum number of registered iPhone devices.해석할 필요도 없이 그냥 '네가 사용할 수 있는 iPhone 디바이스 개수를 초과했다' 정도이다. 그런데 나는 최근에 아이폰 빌드를 시도한 적도 없는데 이게 뭔 X소리인지... 게다가 Xcode 7 이후부터는 어느 정도 제약이 있지만, 무료로 iOS 빌드를 해서 디바이스에 넣어볼 수 있다고 알고 ..
Unity3d 스크린 캡쳐 후 Slack로 보내주는 Plugin 제작기
2017. 12. 24.작업을 하다 보면 Unity에서 세팅한 오브젝트나 씬이 실제 디바이스 위에서는 어떤 느낌으로 보일지 궁금해진다. 만들어진 아트 작업물을 Unity 에디터 위에 그대로 올렸다 하더라도 실제 디바이스 위에 결과물을 올려두면 에디터에서는 느끼지 못했던 느낌들이나 개선점이 있기 마련이다. 그 때문에 나는 작업 중간중간 스크린샷을 통해 그런 느낌들을 하나하나 체크해가면서 작업하고 있다. 실제로 이 작업은 크게 3-step으로 이루어진다. 1) 화면 캡쳐2) 비율에 맞게 캡쳐본 자르기3) 디바이스에 전송해서 느낌보기정도일 것이다. 손이 빠른 아티스트라면 고민 없이 쓱싹 해치우고 올려보겠지만, 나는 편집에 그리 손이 빠른 편이 아니라 작업을 할 때마다 불편함을 느낄 수밖에 없었다. 자세히 보면 작업의 난이도가 단순하..