brunch

매거진 5mm 앱개발

You can make anything
by writing

C.S.Lewis

by 홍기린 Dec 20. 2023

앱개발할 때 AI가 도와준 3가지

#001번째 앱 [ 텍스트게임 - 회사밖은 위험해 ] 개발 로그 (2)

#001번째 앱 [ 텍스트게임 - 회사밖은 위험해 ] 개발 로그 (3)

공부하면서 앱 만들기 #001 - 텍스트게임 [ 회사밖은 위험해 ]

>> 여기서 게임을 직접 플레이 하실 수 있어요 ㅎㅎ



#Intro


불과 10년 전만 하더라도 영상제작은 방송국에서만 만들 수 있다고 생각했었다. 커다란 방송장비와 고가의 편집장비, 그리고 PD와 작가진이 다 갖춰진 방송국에서나 가능하다고, 개인은 불가능한 일이라고 생각했었다. 하지만 이제는 누구나 핸드폰으로 영상을 찍어서 편집본을 인터넷에 올려 돈을 벌고 있다. 1인 방송국 시대가 되었고 많은 돈을 버는 사람들도 생겼다. 그렇게 될 수 있었던 배경에는 웹(web) 기술이 뒷받침되었기 때문이라고 생각한다.


예전이 웹의 시대였다면 지금은 AI의 시대다. 그래서 나는 이번 앱개발 프로젝트를 진행하면서 AI를 적극 활용해보고 싶었다. 플러터도 배운지 얼마 안된 내가, 게임기획이라고는 한 번도 해본적 없는 내가 앱개발을 '시도'라도 해볼 수 있었던 건 사실 AI가 있었기 때문이다. 기획, 디자인, 앱개발을 혼자 하려면 적어도 3-4달은 걸릴 일이었다. 하지만 많은 일을 AI에게 맡겨본다면 더 빨리 가능하지 않을까, 라는 생각으로 테스트해보자 싶었다.





#1 게임 주제는 내가 정할게 시나리오는 누가 짤래?


처음으로 ChatGPT에게 물어본 건 게임 시나리오였다. 게임 시나리오라니.....평생 해본 적도 없는 일이다. 스토리텔링은 늘 배우고 싶었던 주제이지만, 내가 배우고 싶은 것과 내가 잘하는 것 사이에 항상 큰 갭이 있다. 게다가 상상력이라고는 전무한 개발자에게 게임 시나리오 및 스크립트를 짜는 건 손발이 오그라드는 너무 괴로운(?) 작업이었다ㅠ


일단 주제는 SF로 하자 싶었다.(제일 만만해보임) 그리고 목표는 살아남기! (매우 일반적인 게임 목표). 그래서...그 다음엔 어떡하지?�


일단 큰 주제는 정했으니 디테일은 chatGPT한테 물어보기로 했다.

오 뭐야....그럴듯한데?


생각보다 대답이 괜찮았다. 오,,,  그래서 다시 이것 저것 많이 물어보기 시작했다. 그러면서 점점 아이디어를 구체화시켰다. 살을 붙이다보니 "회사에서 좀비가 나타났을 때 탈출하는 이야기"가 좋겠다 싶었다. 좀 더 구체적으로 물어보기 시작했다. 아이템 아이디어부터 엔딩 아이디어까지 다양하게 물어봤다.  


짜란다 짜란다 짜라안다


이 이후에도 계속 줄줄이 물어봤다. 마치 여러 팀원들과 아이디어 회의를 하는 느낌이었다. 상상력 풍부한 친구가 자기의 아이디어를 마구마구 내놓은 것 같았다. 그것도 아주 빠른 시간안에 말이다. 5초만에 전혀 망설임 없이 방대한 아이디어를 쏟아냈다. 꽤 든든했다. 사실 이정도로 아이디어를 많이 줄 걸 기대도 안했는데, 생각보다 풍부한 내용에 감탄했다. 물론 여기서 취할 부분만 취하고, 정교화 시키며 다듬는 작업은 내가 해야 당연히 해야 할 부분이었다.


그렇게 큰 줄거리와 시나리오를 완성했다ㅋ 짧아보이지만, 방대한 아이디어를 추려서 여러개의 결말로 완료해보는 것도 꽤 큰 경험이었다. 누구나 일을 벌리기는 쉽다. 하지만 완료하기란  정말 쉽지 않고 하기 싫은 일이다. 나도 중간부터는 어느샌가 '벌려놓은 일을 제발 마무리라도 지어보자' 라는 심정으로 작업하고 있었다(...).


하얗게 불태웠다.. 게임 시나리오를 너무 만만히 봤다....



가끔 이렇게 응원도 해준다.



#2 riverPod, 이건 어떻게 쓰는거야?


간단한거니까 Flutter로 바로 개발할 수 있을 거라 생각했는데, 아차차, 가장 기본적인 것조차 모르고 있었다. 바로 전역  state 상태를 관리하는 방법을 몰랐던 것이다. vuex store나 react의 state 관리하는 기초적인 개념은 알고 있었던 터라 Flutter에도 당연히 그런게 있겠지 싶어서 검색했더니 riverPod이라는 게 있었다. 당연히 사용법은 몰랐다. 그래서 어떻게 사용하는건지 물어봤다.


AI를 활용할 때 제일 좋은 점은, 공식문서를 훑어보기 전에 대략적인 개념을 잡을 수 있다는 점이다. 개념을 알고 공식문서를 읽으면 훨씬 이해가 빠르다. "이게 모야? 어디에 쓰는거야?" 라는 질문에 대답해달라고 하면 아주 쉬운 버전부터 아주 어려운 버전까지 다양하게 대답을 들을 수 있다는 것도 장점이다. 이렇게 새로운 개념이나 기능을 익힐 때마다 chatGPT에게 물어봤고, 빠른 답변을 얻을 수 있었다. 그만큼 배움의 속도도 빨랐다.




#3 픽셀 이미지 아트좀 그려줘


게임이라는 장르에 범접하기 힘든 가장 큰 이유는 바로 '그래픽' 때문이다. 난 디자이너도 아니고 설령 디자이너라고 하더라도 게임 그래픽은 또 다른 얘기다. 정말 막막했다. 아니 사실 아예 못하는 분야라서 막막하지도 않았고 어떻게 하면 AI한테 그림을 그리게 하지?? 라는 고민만 했다. 처음에 디자인 없이 해볼까? 라고 생각해서 피그마에서 끄적거려봤더니 정말 형편이 없었다.


이게 뭐지;;; 싶었던 처음 스케치들


그러다 문득 AI로 그림을 그리는 여러 사이트들이 생각이 났고, 제일 유명한 DALL-E 한테 가봤다. 게임 아트로는 픽셀 아트가 좋을 것 같아서 여러 장면들에 맞는 픽셀아트를 주문했다. 


"empty office at night, pixel art"

AI랑 같이 일하려면 명령어를 어떻게 입력하는지가 굉장히 중요하다는 것을 깨달았다. 원하는 분위기와 상황을 구체적으로 이야기해주고, 원하는 결과물도 정확하게 알려주어야 한다. 여러번의 실험을 거듭하면서 원하는 이미지를 얻어냈다.


생성했던 이미지들. 생각보다 퀄이 좋았다.


최종적으로 선택했던 첫 화면


더 많은 이미지를 사용하고 싶었지만, AI로 생성하는 픽셀아트는 치명적인(?) 단점이 있었다. 바로 똑같은 톤앤매너를 유지할 수 없다는 점이었다. 방금 생성한 느낌으로 쭉 시리즈로 생성하고 싶었는데 내가 기술이 부족했던 탓인지는 모르겠지만 톤을 그대로 유지하면서 이미지를 생성하기는 어려웠다. 더 찾아보면 어딘가에 그런 서비스가 있을지도 모르겠다...


그래도 10초만에 이런 이미지를 얻을 수 있다는 건 엄청난 수확이었다. 다음에는 포토샵 AI를 이용해서 만들어보고 싶은 생각도 들었다. 



#Ending

재밌는 경험 및 실습이었다. AI가 없었다면 시도조차 못해볼 일이었을 것 같다.  앞으로도 앱개발을 하면서 적극적으로 활용할 수 있을 것 같다. 다음 기획때는 좀 더 고도화시켜서 활용해볼 수 있지 않을까 싶다. 이번 프로젝트는 이렇게 마무리! �


브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari