디시인사이드 갤러리

마이너 갤러리 이슈박스, 최근방문 갤러리

갤러리 본문 영역

[💬] 게임 개발부터 출시까지, 팁 공유 3부: 그래픽

독개갤로그로 이동합니다. 2023.10.07 20:03:34
조회 3567 추천 27 댓글 18
														


게임 개발부터 출시까지, 팁 공유 1부 바로가기



안녕, 죽지 않고 돌아왔어

변명을 하자면 매일 1개씩 올리려는 포부가 있었지만...


짠~ 우리 게임의 데모가 공개되었어~!!


데모하러 텀블벅 페이지가기


데모 개발하느라 늦었으니 조금만 이해해줘ㅎㅎ


그리고 그 외에도, 그래픽 쪽은 입문난이도도 있는 전문적인 분야라서

어떤 글을 쓸 수 있을까 고민도 좀 해봤어.


지난번 기획을 썼을 때, 생각해보니 스킬적인 내용을 기대하고 들어왔을 수도 있겠더라고.

그래서 팁이라는 글의 정체성은 유지하되!

스킬적인 내용을 우리 팀원에게 물어보고,

내가 이해할 수 있을 정도의 간단한 내용만 적어볼게


그럼 오늘도 가즈아ㅏ



a76d30aa233ab4538af1c1b014c104032bcb284be1ffe7aa22

( 여담이지만, 드디어 HTML로 이미지 크기 변경법이 있음을 깨우침 )









그래픽


1. 그래픽이 어디까지야?

처음 시작하는 인디게임 개발자들이 가장 헷갈려하는 부분이야.

그래픽 리소스를 그리는건 당연히 그래픽의 일이겠지만,


애니메이션은? Unity 애니메이터 만드는 건? 파티클은??


이게 개발인지, 그래픽인지 헷갈리지.


사실 당연해. 엄밀히 따지면

애니메이션 관련은 애니메이터.

파티클, 쉐이더는 TA의 일이야.


즉, 그래픽의 일도, 플머의 일도 아닌거지.


그럼, 그래픽이랑 플머만 있는 우리는 어떡하냐고?


결국, 그래픽을 그릴 수 있는 플머가 하거나

그림을 그리던 그래픽이 언어를 배우거나

둘 중 하나이지.


둘중 한명은 업무량이 늘어나는 Magic



a04424ad2c06782ab47e5a67ee91766dc288f1edd3acc5cfbf10dbc65fd0d6217224020c2eddc7b0076f83fc6d5e



결과물은 그래픽이 언어를 배워서 TA로 진화하는게 더 예쁘게 나와.

그래서 우리 같은 경우에는 그림러에서 컴공을 졸업하신 분이 TA와 그래픽 팀장 업무를 잡아주고 있어



a14834ad231eb44caaff5a4be75dd3d8857f5fb1866308305e66fb5716154da1df



그림실력이 출중한 능력자가 컴공과를 졸업한 케이스지

물론, 만나기 힘들어. 나의 모든 인간복은 우리 팀원들 만나는 데에 썼다고 생각해


다시한번 강조하자면, 업무를 초반에 완벽히 구분해야지

내가 하고 있는 일을 그래픽도 하고 있는 불상사를 막을 수 있어.

이건 반드시 정하고 가는 것이 좋아.


초반에 이거 제대로 안해서 나도 파티클을 만들고

우리 그래픽도 파티클을 만들고 있었어


반대로 쉐이더는 그 누구도 만들고 있지 않았지....



7dec9e74bd8668f037ec8efb479c756f5861b1e3c587302213bf1cbf5ca25fa63b80





2. 그래픽 툴 어떤거 써?

우리는 게임 그래픽 스타일에 따라서 툴을 굉장히 다양하게 써.

픽셀이 아닌 그래픽은 Procreate를 쓰고, 이번 픽셀그래픽은 Aseprite를 쓰고 있어


포토샵을 쓰지 않는 이유는

1. 툴이 너무 복잡

2. 이동하면서 그릴 수가 없어

3. 비싸

이 세가지가 핵심적인 이유야


먼저, 툴이 너무 복잡하면

툴 다루는 실력이 없는 신입 팀원이 들어왔을 때,

가르치기가 힘들고

같은 브러쉬라도 설정에 따라 천차만별로 나오기 때문에

협업도 힘들어져



3f96d40adf8b75f17bb2f8910feb3105dcf21573151e7880c3475fa6374ee27ee4cc64f6f2cdb3aa5700c55190723c42cfa79ce32d2a5bb57c923db382da2e7c1f08192c769fea830bf5e05d3644d6da0a8170b92a38ce7cef6d5b443e0469b6577c64677d1658e62abfe2a5c4fdd3bcdc26bfff3179001b1d30af74a907ca705275d394af5864ecc8e523b95bf3c2671b869a16acd14ede6d235929952a77442aa28d1e3e



그리고 이동하면서 그릴 수 없는건

일반적인 사람들에게는 해당되지 않는 고려사항이겠지만

우리 같은 경우에는 그래픽 팀장인 아리스가

집에서도, 차안에서도, 본가에 가서도, 카페에 가도

24시간 중 거의 16시간을 작업해주고 있어


그런 와중에 포토샵을 쓰면

아이패드에서는 작업이 힘들기도 하고

장소가 바뀔 때마다 파일 다운받고, 작업하고, NAS에 올리고,

이걸 반복해야하는 거지



7ef3d72fe3f206a26d81f6e441807369ed71

이미지 파일 업데이트를 위한 무의미한 반복 루틴..



마지막으로 알다싶이 포토샵은 월정액이야.

Procreate는 영구 라이센스이지.

우리가 이걸로 아낀 금액만 해도 100만원은 될거야.


우리는 게임을 적어도 3달은 잡고 있을 거야.

그러면 이런 라이센스 비용도 절대 무시할 수 없지.


Procreate는 아이패드가 필요하다는 큰 단점이 있지만,

이걸 써본 그래픽 팀원들은 전부 Procreate의 편의성에 감탄하는거 보면

비싼 타블렛 구매비 + 포토샵 라이센스 + 작업효율을 따지면 Procreate가 낫다고 생각해




3. 그림의 깔(톤)을 맞춰보자

그림의 전체적인 깔을 맞추는 작업은 정말 중요

깔이 맞지 않으면, 하나하나는 정말 잘 만든걸로 보이지만,


모아놓고 보면 묘하게 UI가 배경과 따로노는 느낌을 줄 수 있어

혹은 배경 위에 캐릭터만 둥둥 떠있는 느낌이 들수도 있지


반대로 어떤 오브젝트를 강조하고 싶을 때는, 일부러 깔을 다르게 쓰기도 해


우리가 흔히 무언가를 강조할 때 Outline을 쓰는데,

대부분의 Outline이 원색계열인 이유도

게임내 오브젝트와 깔이 확연히 다르기 때문이야



0893c71ff3f760e87eb1d19528d52703348636c77e

테라리아에서 아웃라인을 먹인 마우스 커서는 눈에 잘보이지



반대로 어떤 게임에서는 원색 Outline을 써도 별로 강조가 되지 않아

이유는 배경 이미지의 채도와 명도가 원색에 가깝기 때문이야.


우리가 어떤 색을 같은 톤으로 인식하는 이유는 1. 채도, 2. 명도

흔히들 색상 값이 다르면 다른 톤으로 보일거라고 착각하고는 해

색상 값은 이게 파랑이냐, 초록이냐 등을 결정할 뿐이야


먼저 채도(색의 짙기)가 다르면 사람들은 다른 "톤"으로 인식

아래는 같은 명도의 다른 채도야


a17d2cad2f1b782a99595a48fa5df5d976e94e7e814888d454db8d59f45a2617


여기서 채도가 더더 빠질수록 무채색에 가까워지고

게임의 분위기가 전반적으로 어떤지 영향을 줘




그리고 명도(색의 어둡기)가 달라도 다른 "톤"으로 인식

그 가장 좋은 예시가 바로 파스텔 톤이야.


a17d2cad2f1b782a99595a48fa9f3433f728bd6f6b8abd3f655da8

파스텔톤의 채도는 사실 원색과 크게 다르지 않아

파스텔톤은 원색에서 명도를 낮추면 만들 수 있어


원색에서 명도가 옅어지면 채도도 함께 빠지게 되고,

사람들은 그 색을 파스텔 톤으로 인식하고

포근한 색, 부드러운 색으로 생각하지


< 내가 이해가 부족해서 잘못쓴 부분이 있어서 수정해 >


그림자를 표현할 때는, 명도와 색상을 통해 표현해

1차적으로 명도를 낮추고, 근처의 유사한 색으로 색상값을 약간 바꿔줘

그리고 채도를 약간 낮춰주면 조금 더 예쁜 그림자를 표현할 수 있어


물론 절대적인 건 아니고, 상황에 따라서 예외는 있기 때문에

정 모르겠을 때 참고하는 걸 추천해



06bcdb27eae639aa658084e54482756d17b4652048d584b79a4a2dd979402e071c89e7cd01a3b7cf92930513f5




즉 색상 값 보다는

전반적인 채도와 명도로 게임의 분위기

귀여워 질수도, 어두워 질수 있어


그래서 여러명의 그래픽 작업자가 있다면,

주로 사용할 톤(채도, 명도)의 범위를 정하고 가는 것이 좋아



a0490daa0032b277ba34115d9a3be0b0d99acdbacf3199b52d958cd6d071e3a17766a80beb636676838b9ad9d9e6df96


이건 우리 색상규칙 중 일부야

이런식으로 예시와 함께 초장에 정하고 가지





4. Spine2D를 써야할 때와 Sprite Animation을 써야할 때

애니메이션에는 크게 Spine을 이용한 애니메이션과 Sprite 애니메이션이 있어.


Spine은 Vector와 연산을 통한 부드러운 애니메이션을,

Sprite는 우리가 흔히 하는 컷 방식 애니메이션이지.

대부분 사람들이 부드러운 애니메이션은 무조건 Spine이 좋은 거라고 생각하고는 해.


그러나, 이건 서로 다른 거지 뭐가 더 좋은건 없어.

필요에 따라서 둘을 섞어 쓰기도 하지.



2fe48770b7823df73ee9d7e54f85746d4963fcf9b85cf6c1b6b6aef5da6c047b729f1ae2abe3ab6542efe9af1110cb



먼저 Spine은

하나의 애니메이션을 만들기까지 공수가 많이 들어가.


1. 원본 이미지를 만들고

2. 이미지의 Mesh를 나누고

3. 본을 심고

4. Weight를 설정하고

5. 다듬기


이건 가장 기본 절차야. 이걸 다 마쳐야지만 이제 만들 "준비"가 된거야.

이 시간에 Sprite 애니메이션을 만들었으면 아마 다 만들었을 수도 있지.


생각보다 사람들은 게임에서 애니메이션이 "얼마나 부드러운가"를 중요하게 생각하지 않아.

따라서 짧은 애니메이션은 Sprite 방식이 작업속도가 빠르기 때문에,

Spine으로 만들 이유가 없다면 그냥 Sprite로 만드는게 훨씬 낫다는 거지



그렇다면 Spine으로 만들 이유라는 건 뭘까?


다른 전문가들은 의견이 어떨지 모르겠지만, 나는 이렇게 생각해

1. 애니메이션을 변형한 반복 사용이 있다.

2. 애니메이션의 각도(측면, 정측면 등)가 많이 변하지 않는다.

3. 어떤 값에 따라 능동적 변화가 필요하다(ex. IK 등)



먼저, 주인공의 스킨이 디폴트, 개구리, 오리가 있다고 가정하자.


이걸 Sprite 애니메이션으로 만든다면 각각 애니메이션을 그려줘야할거야.

주인공의 애니메이션이 Idle, Walk가 있고 각 4장이라면

디폴트 주인공(8장), 개구리 모습의 주인공(8장), 오리 모습의 주인공(8장),

Sprite 애니메이션에서 그려야할 그림은 총 24장이지.



a04424ad2c06782ab47e5a67ee91766dc288f1edd3acc5cfbf10dac15ad1d121a8decb52860e4879e26490a1f531

오픈소스도, 대충빨리도 불가능한 그래픽.. 이런 그래픽 특성상

그림 1장이 더 추가된다는 의미는 크지


Spine이라면 주인공으로 애니메이션을 하나 만들었으면

각 스킨은 그냥 정적 이미지 1장만 그려주면 돼.

Spine 애니메이션에서 그려야할 그림은 총 3장인거지


몬스터가 지역별 모습이 있는 경우에

Spine이 유리한 경우가 많아



But! Spine은

각도가 자주 변하는 애니메이션이 들어가면 맹점이 드러나

작업 시간이 더 늘어나지.


각 키프레임마다 직접 파츠를 하나하나 바꿔줘야해

지루하기 짝이 없는 단순 노가다 현장이 되지



78e98320e0816fff6bedd5e746807d6d1a39555f97ad997e832278eb438e2c29bcec6ecc3c6b0a99ddc36ace66

키프레임 찍고... 파츠 바꾸고... 키프레임 찍고... xx...



However! IK 같은 능동적 변화가 필요할 때는 무조건 Spine이야

주인공이 울퉁불퉁한 길에서 딱 길에 발을 붙히고 걷는 동작같은 것 말이야.


이런 경우에 일반적인 Sprite 애니메이션은 그냥 불가능

그저, 그럴듯하게 그릴 뿐이지


이렇게 사용해야하는 경우가 다르니,

잘 생각해보고 결정하면 좋을 거야.




5. Atlas는 그냥 모아둔다고 끝이 아니다.

Atlas에 대한 이해도가 부족한 그래픽이 많이하는 실수야

그냥 마구잡이로 모아만 둔거지


약간의 개발 이야기를 하자면,

Atlas의 핵심 목표는 Batch를 줄여서 최적화를 하는거야

그런데 많이들 전혀 무관한 오브젝트들을 함께 Altas해두고는 해


이건 Atlas에 대한 이해도가 없다는 뜻이야.

왜 하는지 모르고 그냥 한다는 거지


Atlas를 하게 되면 거기에 있는 오브젝트 중 하나만 가져오더라도

Atlas 이미지를 통으로 불러오게

즉, 무관한 것들끼리 묶어두면, 필요없는 이미지까지 포함되서

불필요하게 큰 이미지를 불러오는 거지


반대로 상관있는 것들끼리 묶어두면

10 Batch였던 걸 1 Batch로 Batch 를 10%로 줄일 수 있어!



그러니 Atlas를 할 때는 서로 상관있는, 대부분 함께 불러와지는 것들 끼리 묶어두는게 좋아

그래서 Sprite Animation을 만들더라도 빈 공간이 있다고 해도 Idle이랑 Walk랑 마구잡이로 묶지 않는거야


이건 참고하라고 공유하는 우리 게임의 주인공 Idle Atlas야

나중에 몸집이 다른 캐릭터 + 의도대로 크기설정을 하기 위해서 여백을 두었지



00bcd928d5de39bf6bade99c12dd216c61cd5c80b0ca8d14e99e23301dcc34




그외 팁들.


1. Preview로 공유하지 않으면, 차이를 알지 못한다

람은 그림이 모아져 있지 않으면, 기존 그림체와 어울리는지 아닌지를 알지 못해

그래서 그림 한장씩 보지 말고 다른 모든 것들과 모아서 보는게 좋아.


단순히 같은 오브젝트의 시안 1, 2를 비교하는 것 뿐만 아니라,

새로운 캐릭터를 만들 때, 캐릭터가 게임의 느낌과 어울리는지 볼때

캐릭터만 놓고 보지 말고, 다른 캐릭터들과 배경까지 싹 다 깔아두고

그 위에 새로운 캐릭터를 놓고 봐야해



a15714ab041eb360be3335625683746f07534429d6a6ed890b9df62d0ca1c32f2561bc6a208831a013c2f28212fcf7297018b04fa50b75




2. Atlas 손으로 할 필요 없다

포토샵에서는 스크립트라는 기능을 지원해

그걸 사용하면 Altas는 몇번의 클릭만으로 가능하니까

손으로 하지말고 스크립트를 활용해봐!


구글에 "포토샵 아틀라스 스크립트" 이런식으로 검색하면 자료가 꽤 나올거야



3. 이미지는 4배수로 만들자

Unity는 이미지 크기가 4배수로 만들어져 있을 때, 성능이 가장 좋아

여백을 두더라도 4배수(16, 32, 64, 128 ...) 로 이미지를 만드는게 좋아

4배수가 아니면 Unity 내에서 후처리가 들어가기 때문에

우리가 생각한 배율로 안나오고 지 멋대로 크기가 정해져버려.







이 외에 Pixel Perfect, GUI 하이어라키 설정 방법, Unity 내 Color를 활용하기 위한 이미지 설정 등등

알려주고 싶은게 너무 많은데, 디시 글 에디터가 너무 불편해서 쉽지 않네



이후 글들은 하루에 하나가 아니라 이렇게 며칠 텀을 둘거 같아.

그러는 편이 글의 퀄리티가 올라가서

개발을 시작한 사람들에게 더 도움이 될 것 같아.


내가 게임을 홍보하고 싶어서 글을 올리는 이유도 물론 크지만,

정말 초보 개발자들에게 유용한 팁이 되었으면 해!


다음 4부는 개발로 돌아올게~! 내가 개발자 출신이라 할 말이 많아서 글을 정리하는데 시간이 더 걸릴 수도 있어ㅋㅋ


글이 도움이 되었거나, 재미가 있었다면..


이건 우리 팀원들이 열심히 만든 게임이야

지금 텀블벅에 공개되었으니, 관심과 입소문 부탁해~!!


참고로 데모도 공개되어 있어ㅎㅎ

https://link.tumblbug.com/qFAx4QrrADb

 



자동등록방지

추천 비추천

27

고정닉 1

5

댓글 영역

전체 댓글 0
등록순정렬 기준선택
본문 보기
자동등록방지

하단 갤러리 리스트 영역

왼쪽 컨텐츠 영역

갤러리 리스트 영역

갤러리 리스트
번호 말머리 제목 글쓴이 작성일 조회 추천
3004 설문 소속 연예인 논란에 잘 대응하지 못하는 것 같은 소속사는? 운영자 25/04/21 - -
3002 AD 작혼X페스나 헤븐즈필 콜라보 개시! 운영자 25/04/22 - -
174286 공지 인디 게임 개발 갤러리 규칙 - 질문 전 필독!! 파베르갤로그로 이동합니다. 24.12.04 3037 3
178773 공지 신문고 파베르갤로그로 이동합니다. 25.02.19 479 0
163344 공지 유료 강의 언급 차단에 관한 글 [12] 김메가갤로그로 이동합니다. 24.06.28 3998 19
52873 공지 게임제작 초심자를 위한 글 모음 [12] Goranic갤로그로 이동합니다. 20.07.02 82732 60
123789 공지 뉴비 개임개발 하려는데 뭐부터 해야하나요 복사본 [19] 흉황갤로그로 이동합니다. 23.04.11 24937 43
183507 📚정보 AI 스프라이트 생성 [1] ㅇㅇ(58.141) 06:37 184 1
183506 💬 게임&소설에 나오는 창 모음집 [3] vertex갤로그로 이동합니다. 06:09 136 2
183505 💬 대학 게임개발동아리 질문 [4] Indie(211.212) 05:46 179 0
183504 🐣질문 나니노벨 쓰는 사람 있음? [2] 유문암갤로그로 이동합니다. 05:22 124 0
183503 💬 블렌더 시작햇다!! [2] ㅇㅇ갤로그로 이동합니다. 04:03 167 0
183502 💬 요 며칠 계속 끄고 커밋할 때마다 뇌가 하얘짐 [2] Micharie갤로그로 이동합니다. 03:37 135 0
183501 💬 아니 정확히 일주일전에 데모 심사 보냈는데 Indie(211.226) 03:33 133 0
183500 💬 UI 작업 한거 [5] ㅇㅇ갤로그로 이동합니다. 03:30 170 4
183499 📜일지 [Unity DOTS] Active Ragdolls 벽타기, 물리 최적화 [4] Vg_갤로그로 이동합니다. 02:55 143 4
183498 💬 분위기 진짜 우울해졌네 ㅋㅋㅋ [3] Ray.갤로그로 이동합니다. 02:37 458 1
183497 💬 AI 도움 받아서 하니깐.. [2] Mr빙그레갤로그로 이동합니다. 02:33 176 1
183496 🐣질문 님들은 어캐 짬? Indie(175.116) 02:01 141 0
183495 💬 나도 게임해야하는데.. [1] 하루카남편갤로그로 이동합니다. 01:45 194 0
183494 💬 나이먹고 게임을 안하다보니까 [7] ㅇㅇ(124.5) 01:10 294 0
183493 🐣질문 질문 [3] J5D갤로그로 이동합니다. 01:02 106 0
183491 📜일지 출시 일주일도 안남았는데 신규기능 넣는 사람이 있다? [10] 호두펀치갤로그로 이동합니다. 00:56 268 5
183490 💬 코딩도 분야마다 ai 체감이 다르더라 [2] Indie(175.116) 00:39 266 1
183487 🐣질문 유니티 2d 탑다운 보스 패턴 어떻게 만드나요 [4] ㅇㅇ(220.126) 00:06 178 0
183486 💬 님들 그래픽카드 뭐씀? [11] Indie(61.253) 04.25 211 0
183485 🐣질문 유니티 빛이 자꾸 새어나와요ㅠㅠ [3] Indie(211.213) 04.25 243 0
183484 💬 이짤보고 기획영감을 얻었다 [6] ㅇㅇ갤로그로 이동합니다. 04.25 346 0
183483 💬 이제 좀 괜찮아진듯? [5] Ray.갤로그로 이동합니다. 04.25 411 0
183482 💬 혹시 게임프로그래밍전문가 자격증 따보신분?? [4] ㅇㅇ(121.169) 04.25 240 0
183481 📜일지 3일동안 처 만든 엘베 [12] Indie(58.79) 04.25 750 10
183480 💬 게임 개발 시작하고 조울증 준내 심해지는거같다 [1] Indie(58.228) 04.25 272 0
183479 📜일지 사소하고 중요한 개선 [27] ㅇㅇ갤로그로 이동합니다. 04.25 680 9
183478 💬 [1인 개발] 퇴사 후 독학으로 만든 로그라이크 RPG 양대 마켓 출시! [36] 인헤이븐갤로그로 이동합니다. 04.25 847 12
183477 💬 요즘엔 겜에 공포 한스푼씩 넣는게 기본인거같더라 [8] ㅇㅇ(14.43) 04.25 287 0
183476 🐣질문 징징글) 레벨디자인은 일단 만들고 부수는거 말고는 방법 없음? [7] Indie(39.113) 04.25 234 0
183475 💬 좀 무서웠던 일 [5] Indie(211.44) 04.25 240 0
183474 💬 내가 좋아하는 스팀 게임 설명 [9] dryrain갤로그로 이동합니다. 04.25 388 0
183473 💬 플엑 한달 남앗네 [5] 김메가갤로그로 이동합니다. 04.25 194 0
183472 📢홍보 로그라이크 스토리겜 [시그나노타] 출시했습니다 [11] 수내김갤로그로 이동합니다. 04.25 513 11
183471 💬 다시 한번 보는 경겜오 합격작 목록 Indie(121.131) 04.25 386 5
183470 💬 와 경겜오디션붙었다 [8] Indie(121.131) 04.25 457 5
183469 💬 경기게임오디션 TOP 10 결과 [16] limforest갤로그로 이동합니다. 04.25 1004 5
183468 💬 그냥 팔레트 통일 하지 말까 ㅋㅋ... [13] Ray.갤로그로 이동합니다. 04.25 364 3
183467 💬 요즘 페이스북 광고 효율 어떰? Indie(14.57) 04.25 84 0
183466 💬 ai에셋 써본사람 [2] Indie(123.108) 04.25 164 0
183465 📜일지 #6 배경작업일지-1 (40일차) [7] 조깐지갤로그로 이동합니다. 04.25 198 5
183464 💬 게임개발 시작1일차 PARANOIA갤로그로 이동합니다. 04.25 159 1
183463 💬 회사다니면서 게임만들기 어렵네 [24] Indie(110.70) 04.25 580 0
183462 💬 GPT 귀엽네 Indie(121.165) 04.25 191 0
183461 📚정보 유니티 csv 한글깨짐 현상 귀찮게 메모장 안거쳐도 되네ㄷㄷ Indie(58.29) 04.25 184 2
183460 💬 아아 낭만이여 [28] 하루카남편갤로그로 이동합니다. 04.25 637 8
뉴스 엑소 카이, 11년 만에 ‘런닝맨’ 귀환…유재석 “기세 좋다” 예능감 극찬 디시트렌드 04.25
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

뉴스

디시미디어

디시이슈

1/2