문서 검색 결과(591);
-
-
-
-
-
-
-
-
-

[등산·캠핑] 한라산에서 남긴, 라면국물 하루 120ℓ
■ 한라산 정상에서 남긴 라면 국물…미생물도 '너무 짜서' 죽어버려한라산을 오르는 사람들이 올리는 백록담·윗세오름 인증 사진들을 보면 거의 빠지지 않고 등장하는 음식이 있습니다. 바로 '컵라면'입니다.해발 1,950m 대한민국에서 가장 높은 꼭대기에서 등반 후 먹는 라면은 그 어디에서 먹었던 라면보다도 꿀맛일 수밖에 없을 겁니다.산 정상에서 버너 등을 이용한 취사 행위는 불법이지만 보온병에 따뜻한 물을 담아와 컵라면에 부어 먹는 건 위법한 행위는 아닙니다.이 때문에 한라산 탐방객들이 해발 1,740m 윗세오름 대피소 등지에서 자리를 펴고 앉아 너도나도 보온병을 꺼내고 컵라면 봉지를 뜯어 '후루룩' 들이키는 광경을 쉽게 볼 수 있습니다.문제는 한라산에서 라면을 먹는 사람이 늘면서 남은 라면 국물 등 음식물쓰레기 양도 증가했다는 겁니다. 한라산 윗세오름 대피소에는 60ℓ들이 물통과 함께 국물만 걸러낼 소쿠리를 비치해 탐방객들이 이곳에 라면을 먹은 뒤 남으면 따로 버릴 수 있도록 했습니다.버려진 라면 국물과 건더기를 음식물 처리기에 넣으면 미생물이 포함된 톱밥과 섞여 분해되고 이렇게 분해된 부산물은 모노레일에 실어 산 아래로 가지고 내려옵니다.윗세오름 대피소는 이 같은 대용량 음식물 처리기 2대를 구비해 놓았는데 최근 이런 장비로도 라면 국물 처리가 곤란한 상황을 맞았습니다.라면 국물이 수분이 많은 데다 염분도 높아 음식물 쓰레기를 발효하는 미생물이 죽어버려 제 기능을 하지 못하는 경우가 생겼기 때문입니다. ■ "탐방객 많을 땐 라면 국물 120ℓ 발생"…무단 투기 과태료 20만 원특히 꽃이 피는 봄철 성수기에 탐방객들이 몰릴 땐 컵라면을 먹는 사람도 덩달아 늘어납니다."하루에만 라면 국물이 100~120ℓ가량 모이기도 한다"는 게 하성현 한라산국립공원관리소 공원보호과장의 말입니다.하성현 과장은 "음식물 처리기 용량이 400~500ℓ에 달하지만, 라면 국물에 염분이 너무 많아 종종 작동이 잘 안 돼 직원들이 기계를 열어 굳은 톱밥을 꺼내기도 하는 등 엄청나게 고생을 하고 있다"며 고충을 토로했습니다.한라산 정상에서 컵라면을 먹은 뒤 무심결에 땅에 라면 국물을 그냥 부어 버리는 경우도 있습니다. 자연공원법상 과태료 20만 원이 부과되는 엄연한 불법 행위입니다. ■ "라면 국물, 한라산 물·토양에 치명적…생태계 위협도"탐방객들이 화장실이나 땅에 라면 국물을 버리는 지경까지 이르게 되자 결국 한라산국립공원 관리소는 웃픈(?) 캠페인까지 벌이고 있습니다. 이름하여 '라면 국물 남기지 않기 운동'입니다.현수막은 물론 한라산국립공원 직원들이 착용한 어깨띠에도 "라면 국물을 남기지 말자"는 절절한 호소가 새겨져 있습니다.'라면 국물 남기지 않기' 방법으로 한라산국립공원 관리소가 제시한 것은 '수프 반, 물 반 넣기' 입니다.컵라면 1개에 들어 있는 수프를 다 넣으면 그만큼 물을 많이 부어 넣어야 하기에 애초에 다 마시지 못할 양의 라면 국물이 생기는 걸 막자는 취지입니다.왜 이렇게까지 해야 하나 싶지만 이유는 한 가지입니다. '한라산국립공원'의 청정 환경을 보전하고 생태계 교란을 막기 위해서입니다.하성현 과장은 "염분이 많은 라면 국물을 한라산에 그냥 버리면 계곡 물줄기를 따라 흘러내려 가며 오염돼 깨끗한 물속에서만 사는 날도래, 수채(잠자리 애벌레)와 같은 수서곤충과 제주도롱뇽 등에 위협적"이라고 설명했습니다.이어 "라면 국물을 그냥 땅으로 버리는 행위는 토양으로 스며들면서 오염돼 한라산에서만 자라는 특산 식물의 멸종을 야기할 수 있는 행위"라며 "까마귀나 오소리, 족제비 등이 라면 등 음식물 냄새를 맡고 윗세오름 대피소로 접근해, 오염된 음식물을 섭취하게 되며 생태계 교란도 초래할 수 있다"며 탐방객들의 인식 전환을 부탁했습니다. ■ 제보하기▷ 카카오톡 : 'KBS제보' 검색, 채널 추가▷ 전화 : 02-781-1234, 4444▷ 이메일 : kbs1234@kbs.co.kr
아임OK작성일
2024-03-31추천
29
-
-
-
-
-
-
[자유·수다] 꿈에 주호민이 나옴
간밤의 꿈에 갑자기 주호민 씨가 등장했습니다. 아무래도 그간 주호민 씨가 출연한 각종 방송을 재미있게 보아왔던 터라, 그에 관계된 최근의 이슈를 쭉 좇아오며 사건에 대해 고민해왔기 때문이 아닌가 싶습니다. 요즘처럼 화제 전환이 빠른 시대엔 이미 이것도 철 지난 뉴스가 되어버렸을 지도 모르겠네요. 꿈에서 주호민 씨는 저를 비롯한 몇몇 사람들과 함께 작은 감옥에 있었습니다. 감옥이긴 했지만 사람들 사이는 어떤 학원에서 처음 만난 사람들처럼 각자 자기 소개를 하고 인사를 나누는 분위기였습니다. 몇몇 사람이 자기 소개를 했고 주호민 씨는 늘 그러던 대로 센스있는 위트를 섞어 주변을 웃음짓게 만들더군요. 정확한 워딩은 기억나지 않지만 스스로에게 처지에 조금은 냉소적인 것처럼 보이지만 주변을 배려하고 자기 역할에 책임을 다하는 따뜻한 마음을 보여주는 듯한 이야기를 한 것으로 기억이 납니다. 아마 그 태도는 평소에 방송을 보며 느꼈던 주호민 씨에 대한 저의 마음이 반영된 것이 아닌가 싶고, 그런 사람이 감옥에 있었다는 것은 최근의 사건과 무관하지 않은 것 같습니다. 꿈이란 참 신기하네요. 최근에 주호민 씨에게 일어났던 일은 저에게 참 안타까운 마음을 크게 납깁니다. 자폐아인 주호민 씨의 아들도, 그런 아이를 사랑으로 키워야만 하는 주호민 씨 부부도, 그리고 어려운 여건 속에서도 특수아동을 가르치는 특수교사의 상황도 모두가 안타깝습니다. 스승과 제자, 학부모와 선생으로 만난 사람들이 서로를 믿지 못하고, 오해가 쌓이고, 서로의 삶을 위협하는 상황에 이르기까지 모든 것이 안타깝습니다. 개별적인 사람으로 볼 때, 이들 중 누구도 나쁜 사람은 없었던 셈입니다. 일제강점기의 소설가 중 한 사람인 김동인의 소설 중에서 <송동이>라는 작품이 있습니다. 이 작품의 주인공 송동이는 한 집안안의 3대를 주인으로 모셔온 충직한 하인이었습니다. 첫번째 주인은 고아가 된 어린 송동이를 데려와 그를 자식처럼 대해줬습니다. 첫번째 주인의 아들이자 송동이의 두 번째 주인이 된 2대는 송동이와 함께 자라 그를 벗처럼 대해주었습니다. 그렇지만 2대 주인은 병으로 일찍 죽어버리고, 3대째 주인은 아직 장난감을 좋아하는 어린 아이였고, 집안의 어른은 1대의 부인과 2대의 부인만이 남았습니다. 송동이는 2대의 죽음으로 어두워진 집안 분위기를 밝게 하기 위해 노력했고, 3대 주인을 위해 장난감도 사주며 지극 정성으로 그들을 모셨습니다. 그러던 어느날 집안에 2인조 강도가 들었습니다. 다행히 바깥의 수상한 기척을 느낀 송동이가 빠르게 대처해서 강도를 쫓아냈고, 그 중 한명은 사로잡았습니다. 예전 같았으면 뺨 몇 대 때리고 쫓아냈었겠지만 그가 자라는 동안 시대가 많이 변했고, 경찰서라는 것이 생겼기 때문에 송동이는 경찰을 불러 강도를 감방에 보냈습니다. 그리고 송동이의 영웅적인 행동으로 어두웠던 집안의 분위기가 살아났고 송동이의 기분은 참 좋았습니다. 그런데 며칠 후 송동이가 집을 비운 사이 도망갔던 강도 중 한 사람이 동료를 경찰서에 넘긴 일에 대한 보복으로 집안에 들어와 아직 어린 아이인 3대째 주인을 죽여버립니다. 송동이가 돌아왔을 때 모든 일은 끝나버렸고, 집안의 희망이었던 3대 독자를 잃은 주인 할머니와 아씨는 오히려 송동이를 원망합니다. 그때 잡은 강도를 뺨이나 몇 대 치고 놓아줄 것이지, 왜 경찰에 넘겨서 일을 이지경에 이르도록 만들었냐는 것입니다. 송동이는 스스로에 대한 죄책감과 자신을 원수 취급하는 집안의 분위기를 견디지 못 하여 결국 평생을 모셔오던 집안을 떠나게 됩니다. 이 이야기에서 강도가 아닌 송동이를 원망하는 집안 사람들을 이상하게 보는 사람들도 있을 듯합니다. 하지만 일본이 한국을 식민지로 삼고 근대적 제도를 들여오는 십수년 동안 세상이 빠르게 변했고, 강도를 잡으면 경찰에 넘겨야 한다는 새로운 인식과, 강도를 잡고 뺨 몇 대 때리고 보내면 된다는 과거의 인식이 공존하던 때에, 무엇이 맞고 틀리고는 그야말로 상황에 따라 달라집니다. 똑같은 행위가 어제는 맞고 오늘은 틀리는 일이 발생하는 것입니다. 저는 같은 사건이 전혀 다르게 받아들여지는 일이 오늘날 더 빠르게, 더 짧은 간격으로 일어난다고 생각되고, 주호민 씨의 사건도 비슷한 맥락으로 보입니다. 서이초 교사의 안타까운 일이 있기 전(고인의 명복을 빕니다), 한국에서는 유치원과 어린이집에서 일어나는 아동학대 사건이 큰 이슈로 떠올랐던 일이 있습니다. 스스로 의사를 적극적으로 표현할 수 없는 영유아들이 부모가 없는 사이 교사들로부터 학대를 받고, 이를 의심한 학부모가 어린이집(유치원)의 CCTV를 확보하거나, 녹음기를 들려보내 아동학대의 정황을 발견하는 일이 많았습니다. 많은 사람들이 어린이와 부모의 입장에 서서, 아동을 학대한(아마 이 시기에도 억울한 교사들이 많았으리라 짐작됩니다.) 어린이집 교사들에게 분노를 했고, 자신의 아이가 그런 상황에 처해있으면 어쩌나 하는 불안감에 휩싸이기도 했습니다. 이때까지만 해도 여론의 관심은 ‘교육장에서 일어날 수 있는 아동 학대’였던 것입니다. 그런데 서이초 사건 이후 여론의 관심은 ‘교육장에서 일어난 일을 빌미로 삼은 학부모의 갑질’로 변했습니다. 물론 둘 중 무엇이 더 중요하거나, 무엇 하나가 옳은 것은 아닙니다. 한 사건을 보는 관점이 다양화되면서 편향적인 시선으로 인해 일어날 수 있는 문제들을 줄여가는 과정이라 생각합니다. 모두가 알고 있듯이 완벽한 사람도, 완벽한 부모도, 완벽한 교사도 없습니다. 누구나 어려운 상황에 부딪치면 감정적으로 변할 수 있고 평소와 다른 실수를 할 수 있습니다. 주호민 부부의 행위도 그렇고, 교사의 다소 감정적인 언행도 그렇고, 그들의 이후 대처도 그렇고 모든 것이 사실 조금만 그들을 이해하려고 하면 이해할 수 있는 일들입니다. 그리고 어제까지만 해도 옳다고 여겨지던 일이 하루 사이에 틀린 일로 변해버리는 일도 종종 있습니다. 특히 요즘처럼 통신이 발달하고, 그로 인해 이슈의 전파가 빠른 시기에는 정말 문자 그대로 하루아침에 하나의 사건을 보는 태도가 달라지기도 합니다. 이것을 두고 누구의 잘못이라고 단정 짓기가 어려운 것도 사실입니다. 왜냐하면 내일은 또 무슨 일이 일어날지 알 수 없기 때문입니다. 저는 이번 일이 주호민 부부의 잘못이냐, 교사의 잘못이냐, 혹은 누가 먼저 잘못을 했느냐, 누가 더 큰 피해를 끼쳤느냐 등등을 따지는 것은 크게 의미가 없다는 생각이 듭니다. 따지고 보면 모든 일이 안타깝고, 그들 각자는 누구도 악마화될 만큼의 잘못을 저지르진 않았습니다. 그저 각자의 역할과 시선에서 사건을 이해하려 했고 스스로를 지키려 했을 뿐입니다. 이 사건에 가해자가 있을까, 가해자가 있다 하더라도 그들이 감당해야 할만큼의 대가를 치르는 중인 것일까? 많은 생각이 드는 일입니다. 꼭 맞는 비유는 아니지만, ‘지금은 맞고 그때는 틀리다’는 홍상수의 영화 제목이 떠오릅니다. 우리는 가치 판단의 기준이 너무 빠르게 변하는 사회에 살고 있고, 오늘 옳다고 믿고 던진 돌이 내일은 내 죄의 증거품이 될지도 모르는 사회에 살고 있습니다. 아마 이것은 많은 사람들이 어렴풋이 느끼는 이 시대의 모순일 지도 모르겠다는 생각을 합니다.
-
-
-

[컴퓨터] 여러분의 손목건강을 챙겨주는 언리얼엔진
안녕하세요 지나가던 언리얼엔진 사용자 1인입니다. 오늘도 바쁜 여러분을 붙잡고 TMI 가득한 이야기를 좀 해볼까 생각합니다. 거절한다구요? 거절은 거절합니다. 이야기 상대 좀 해주세요. 최근 들어 꽤나 바쁜 나날을 보내고 있습니다. 일은 일대로 하고 있고, 언리얼 인강도 만들어 올렸고, 길고 길었던 책 원고도 마무리하고 편집 작업 중에 있습니다. 얼마 전에는 정말 감사하게도 사용기 게시판에서 인연이 닿아서 한국에 계신 팀과 협업도 했습니다. 그렇게 하루하루 보내고 있는 사이에 에픽게임스에서 또 새로운 엔진 버전을 공개했습니다. 5.1 나온지 얼마나 됐다고 벌써 또 5.2가 나왔습니다. 사실 아직 프리뷰 버전이긴 하지만 Github 언리얼엔진 페이지에 Preview 가 안붙은 그냥 5.2 버전 (정식?) 이 올라와 있는 것으로 보아 5.2 정식 출시도 얼마 남지 않은 것 같습니다. 정식 출시라고 해도 문제점들이 없는 것은 아니지만요. 어차피 회사에서 작업하고 있는 게임 프로젝트 같은 경우에는 엔진 버전을 기민하게 바꿀 수가 없어서 새로운 버전이 나와도 새로운 기능을 바로바로 적용 시킨다던가 할 수가 없습니다. 하지만 아무래도 언리얼엔진 사용자로서 새 버전에 눈을 끄는 새로운 기능이 나오면 써보고 싶기 마련입니다. 밈 조상님 오랜만에 소환 해봅니다 GDC에서 공개된 마법같은 PCG 이번에 에픽이 GDC에서 새로 발표한 것들에는 포트나이트 에디터, Verse 라는 새로운 프로그래밍 언어, 섭스트레이트 머테리얼, 크리에이터 이코노미 등 놀라운 것들이 많았지만 레벨/환경 디자이너로 일하고 있는 제 눈에는 아무래도 절차적 콘텐츠 생성 툴 (Procedural Content Generation Tool) 이라는 것이 제일 눈을 끌었습니다. Procedure 라는 단어를 직역하면 한글로 절차, 순서 쯤이 되는데, 이 맥락에서의 Procedural Content Generation 라는 말은 ‘정해진 룰에 따라 자동으로 생성하는 콘텐츠’에 가까울 것 같습니다. 물론 제가 절차적이라는 표현에 익숙하지 않아서 그런 것일 수도 있겠습니다. 어쨌든 사용자가 정하는 룰과 시스템에 따라 3D 공간에 3D 모델들을 자동으로 채워주는 시스템이라고 생각할 수 있을 것 같습니다. 5.2 데모에서 에픽이 보여준 PCG 시스템의 사용 예제입니다. 이것만 봤을 때는 사실 딱히 특별할게 없죠. 그런데 여기까지 트럭을 운전해서 가는 모습을 보여주더니 갑자기 길이 없다고 중간에 있는 큰 절벽을 치워버립니다. ??? 이걸 클릭한번, 드래그 한번에 합니다. ??????? 그러더니 다시 원래대로 옮기고 블루프린트 하나 끌어와서 절벽 모양을 바꿔버립니다. 이렇게 클릭 한두번으로 환경을 바꾸는데 바닥의 모양, 경사면에 굴러다니는 돌멩이들, 땅을 뚫고 보이는 뿌리들, 절벽 위에 자라는 수풀, 나무 등 모두 자연스럽게 업데이트 됩니다. 그리고선 갑자기 줌아웃 하더니 엄청나게 방대한 스케일을 보여주면서 사실 이거 다 PCG야 를 시전합니다. 이 정도까지 스마트한 오토메이션이 가능하려면 얼마나 복잡한 시스템을 짰을지 상상이 안갑니다. 원래 에픽에서 대대적으로 홍보하는 데모는 시연 이후에 프로젝트 파일을 공개적으로 공유 한 전례가 많아서, 이 프로젝트도 곧 공유 해줄 것으로 많은 사람들이 기대하고 있습니다. 원래 3D 환경이란게 껍데기를 만드는 작업입니다. 속까지 채우고 안보이는 부분까지 다 만들어 놓기에는 현실적으로 퍼포먼스에도 좋지 않고 작업하는데에도 비효율적입니다. 그렇기 때문에 ‘보이는 부분만 만든다’ 가 대전제라고 할 수 있습니다. 이렇기 때문에 완성된 프로젝트를 열고 에디터에서 모델들을 이리저리 치우고 임의로 이것저것 움직이면 텅빈 공간이나 3D 모델의 끄트머리 부분이라던가 이런 보기 싫은 부분들이 보이기 마련입니다. 이런 부분들은 미관상 좋지 않을 뿐더러 플레이어나 시청자의 몰입을 방해하는 버그이기 때문에 무조건 가리는게 맞습니다. 그래서 보통은 이런 환경에서 저런 큰 절벽을 움직이거나 지형을 바꾸는 대형 작업을 할 때에는 그에 걸맞는 작업량과 시간을 예상하고 시작합니다. 그런데 이 PCG 시스템을 사용하면 수작업으로 일일히 만져주고 편집해줬어야 하는 부분들을 자동화 할 수 있기 때문에 잘만 쓰면 작업시간을 획기적으로 단축 할 수 있을 것 같습니다. PCG 배우기 위해 구독! 5.2 GDC 데모를 공개한 시점에서 아직 저는 책 원고를 쓰고 있었는데, 공개 이후에 관련된 뉴스를 다룬 비디오들은 물론이고 각종 튜토리얼까지 유튜브에 쏟아져 나왔습니다. 지금은 한풀 꺾였지만 툴이 더 개발 됨에 따라 관련 콘텐츠도 더 많아질 것으로 예상됩니다. 원고는 끝내야겠고, PCG 빨리 안배우면 뒤쳐질 것 같고, 솔직히 조바심이 나서 죽는줄 알았습니다. 그러면서 가증스럽게도 책 원고 말미에 조바심 내는 것을 조심해야 한다고 위선적인 내용을 적었던 것 같습니다. 셀프 관찰, 관조에서 오는 생생한 중계였던 것을 읽는 분들이 알아차리실지 모르겠습니다. 그래서 데모를 보자마자…… 는 아니고 책 원고 끝내자 마자 에픽게임스 론쳐에서 5.2 프리뷰 버전을 받았습니다. 원고 마감전에 받지 않아서 정말 다행이라고 생각합니다. 받자마자 PCG 플러그인 켜고, 튜토리얼 보고 따라 해보고 한참 빠져서 놀았습니다. 참고로 Adrien Logut 이라는 분이 이 PCG 개발팀에 계신 개발자이신 것 같은데 처음에 이 분이 올려주시는 튜토리얼 보고 따라 하면서 기본 개념이라던가, 사용 방법이라던가 많이 배웠습니다. 그리고 PCG 튜토리얼이라고 유튜브에 올라온 것들 거의 다 훑어 보았는데 FreetimeCoder 라는 분의 채널에 올라온 영상들이 다른 영상들보다 훨씬 자세히 진득하게 여러가지를 다루어서 좋았던 것 같습니다. 아주 개인적인 생각으로, 가십거리나 얕은 내용만 단발적으로 자주 올리는 채널보다는 이런 분들이 더 잘 되셨으면 하는 바람이 있습니다. 물론 더 큰 대중에게 어필해야하는 유튜브의 특성상 그러기가 쉽지가 않겠지만요. 그래도 최근에 올리신 PCG 강의 시리즈 덕분인지 제가 처음 봤을 때 보다 두배 이상으로 구독자가 느셨네요. (부…부럽) 나도 빨리 비디오 만들어 올려야지 그래서 이 분들 비디오에서 배운 것들을 토대로 무엇을 할 수 있을까 생각을 했는데, 수풀이나 나무 같은 것을 PCG에 적용해서 사용하는 것은 이미 비디오가 많이 올라와 있고, 했던 것을 또 하는 것은 별로일 것 같았습니다. 그래서 생각한 것이 돌덩이, 바위 등에 덩굴이 자라는 모습을 PCG 시스템으로 만들어보면 딱일 것 같다는 생각이 들었습니다. 그리고 덩굴도 풀데기의 일종이긴 하지만 자라는 방향이나 방식이 다른 풀데기랑은 좀 다르기 때문에 원래 환경 디자인을 할 때 좀 특별히 더 성가시기도 한 녀석이라 이 놈을 자동화 시키면 좋을 것 같았습니다. 튜토리얼 영상 다 만들고 고심 끝에 언리얼엔진에서 만든 썸네일입니다. 사무실에서 마주칠 때마다 음담패설을 즐겨하던 전 직장동료가 이걸 보자마자 또 디엠으로 음흉한 웃음을 날리네요…….. 아니야 임맠 PCG 시스템으로 덩굴 농사 해본 썰 여기서 부터는 제가 PCG 시스템을 사용해서 돌멩이에 덩굴농사 짓는 과정을 축약해서 보여드리도록 하겠습니다. 스크린샷은 튜토리얼 영상 만든것에서 가져온 것들입니다. 크게 세가지 방식이 있는데, 각 과정마다 자세한 순서 설명은 글이 너무 길어지니 스킵하도록 하겠지만 혹시 궁금하시거나 보고 따라 해보고 싶으신 분들은 글 맨 아래에 영상에서 참고하시면 됩니다. 그냥 흥미로 보시는 분들은 글만 읽어도 대충 어떤 방식으로 작동하는지 보이실 것 같습니다. 언리얼엔진 5.2 버전을 받은 다음에 새 프로젝트를 만들고 Procedural Content Generation Framework 라는 플러그인을 활성화 시켜줍니다. 5.2 프리뷰 버젼에서는 Geometry Script 라는 플러그인도 같이 활성화 시켜줘야 하는데 이후의 정식 5.2 버젼부터는 지오메트리 스크립트는 따로 활성화 시켜주지 않아도 되도록 바뀐다고 합니다. 플러그인 활성화 시키고 엔진을 재시작합니다. 벌써부터 두근두근 합니다. 자동화 고고고 아 그런데 기본 직육면체나 구체 같은거에 덩굴 붙이면 좀 없어보이니까 그래도 좀 그럴듯 해보이게 건물 짓는데 사용할 3D 모델들도 다운로드 받아서 사용하기로 합니다. 파라곤 게임 기억하시는 분들 계실지 모르겠는데 (기억하면 아재인증) 파라곤에서 사용하던 캐릭터들이랑 3D 모델들 에픽 마켓플레이스에서 무료로 받아서 사용 할 수 있습니다. 꽤나 시간이 지난 모델들이라서 엄청 비주얼이 좋다거나 하지는 않지만 최적화가 굉장히 잘되어 있고 레벨 디자인에 유용한 모양들의 3D 모델들이 많아서 이런 개인 프로젝트에 사용하기에 참 좋다고 생각합니다. 에디터에서 퀵셀 브릿지를 열어서 덩굴 모델도 다운로드 받습니다. 제가 사용한 것은 English Ivy 라는 메가스캔 팩인데 덩굴 모양이 다양하게 들어 있어서 이것도 꽤나 유용하게 사용하고 있는 자료입니다. 일단 다운받은 빌딩블록으로 쓸 모델들, 그리고 덩굴들까지 모두 나나이트로 변환시킵니다. 나나이트로 변환 한다는 것의 의미를 모르시는 분들을 위해 설명하고 싶어서 입이 근질거리지만 이것도 글 하나를 따로 써야 할 만큼 길어질테니 참겠습니다. 간단하게 뭉뚱그려서 말하면 최적화를 위한 작업이라고 생각하면 되는 것 같습니다. 원래 5.0 대까지는 수풀, 나무등 폴리지 에셋들은 나나이트 변환이 불가능 했는데 5.1부터 폴리지도 나나이트 지원을 시작했습니다. 덕분에 좀 미친척하고 수풀을 레벨에 엄청나게 칠해버려도 어느 정도 fps를 유지하는 모습을 볼 수 있습니다. PCG 시스템을 사용해서 덩굴을 랜덤으로 마구마구 자라게 하면 아무래도 컴퓨터에 무리가 갈텐데 나나이트로 미리 변환해서 어느정도 퍼포먼스를 유지하도록 합니다. 에디터에서 새로운 PCG 시스템을 사용해서 PCG 그래프라는 것을 생성합니다. 이 그래프는 열어보면 UI 가 기존의 블루프린트나 머테리얼 그래프와 흡사한 노드 시스템이라는 것을 알 수 있습니다. 그리고 블루프린트랑도 상호연계하는 방식으로 사용 할 수 있게 되어 있습니다. 블루프린트는 프로그래밍 언어를 몰라도 시각적인 인터페이스를 이용해서 사용자가 게임플레이나 개발툴을 만들 수 있게 해주는 시스템입니다. 그래서 저 같은 프로그래밍 지식이 없는 디자이너가 프로그래밍적 작업을 할 수 있게 해줍니다. 그래서 저는 프로그래밍 언어를 모르기 때문에 블루프린트도 못합니다 (???) 저는 뭘까요 도대체, 블루프린트 잘했으면 좋겠는데 욕심만 앞서고 노력은 뒷전입니다, 앞으로 공부할게요 죄송합니다. 어쨌든 이 새로운 PCG Graph 시스템은 블루프린트 같은 노드 방식이긴 해도 뭔가 노드 이름들이나 이런게 더 직관적인 것 같습니다. 예를 들어 스태틱메시 (3D 모델) 를 불러오는 노드 이름이 Static Mesh Spawner 라던가 PCG 볼륨과 돌맹이가 만나는 지점에 포인트들을 샘플하는 노드 이름이 Intersect 어쩌고라던가. 온라인 튜토리얼에서 보지 못했던 내용들도 노드 이름들을 보고 어느정도는 기능들을 유추 해볼 수 있는 것들이 꽤 있었습니다. 물론 아직 개발 중인 툴이라 사용 할 수 있는 노드 리스트가 그렇게 길지 않아서 좀 덜 무섭(?)게 느껴져서 살펴보는데에 부담이 덜 한 것일지도 모르겠습니다. 기본적으로 PCG 시스템의 작동 방식은 사용자가 지정한 룰대로 3D 공간에서 포인트, 즉 공간의 특정 좌표를 샘플링 한 다음에 그 포인트 값에 필요한 3D 모델을 불러오는 것인 것 같습니다. 맞게 하는 설명인지는 잘 모르겠지만 적어도 제가 이해한대로는 그런것 같습니다. 그래서 애초에 샘플링 하는 포인트들을 어떤 방식으로 어디에다가 샘플링을 하는지, 그리고 불러오는 3D 모델 위에 또 포인트들을 샘플링 하고 다른 모델을 덧씌워서 불러온다던가 하는 방식으로 점점 복잡한 시스템을 만들어 나갈 수 있는 것 같습니다. 덩굴 농사법 #1 그래서 위의 스샷의 경우에는 PCG 볼륨 중앙에 하나의 포인트를 샘플링 한 다음, 그 포인트에다가 이 돌 블럭을 불러옵니다. 그리고 그 다음에 불러온 돌 블럭 위에 다시 여러개의 포인트들을 샘플링 합니다. 그리고 그 포인트들에 덩굴을 하나씩 붙여주면. 음….. 왠지 성게가 먹고 싶어지는군요. 왠지 이 비주얼이 맛있게 마음에 들기는 하지만 덩굴이 이렇게 자랄리는 만무하니 트랜스폼 포인트라는 노드로 각 포인트의 회전값을 일정한 범위 안에서 놀도록 바꾸어 줍니다. Y 축 회전값을 조절하고 나니 착 가라앉아 차분해진 모습입니다. 이제는 미역국이 생각나네요. 성게 미역국 맛있겠다… 먹어본적은 없지만…. 갑자기 푸…풍성해지셨죠? 덩굴을 불러오는 노드들을 복제해서 다른 종류의 덩굴도 돌 블럭에 붙였습니다. 아래 노드 창에 보이는 노드 가지 (Branch) 하나당 덩굴 모델 하나입니다. 원래 하나의 노드에서 여러가지 덩굴을 불러오는 방법도 있는데 따로따로 컨트롤 할 수 가 없어서 이런식으로 만들었습니다. 참고로 덴시티 노이즈, 덴시티 필터 등의 노드들을 사용해서 결과적으로 샘플링된 포인트들의 위치나 개수를 조절 할 수 있습니다. 이런 방식으로 세가지 덩굴이 너무 서로 겹치거나 하지 않도록 하게 할 수 있습니다. PCG 그래프를 복제하고 처음에 불러온 돌블럭만 다른 3D 모델로 교체한 모습입니다. 그리고 새로운 모델에 맞게 덩굴 모델들 사이즈 정도 바꿔주면 바로 쓸 수 있는 것 같습니다. PCG 그래프를 사용해서 이렇게 작업하니 정말 좋은 점이 이 3D 모델을 회전하거나, 위치를 옮기거나, 사이즈를 바꾸거나 하면 모델에 붙은 덩굴들이 정해진 룰 안에서 업데이트 됩니다. 그래서 저 같은 경우에는 긴 덩굴이 항상 아래쪽으로 향하게 설정 해놨는데 덕분에 이 모델을 한쪽으로 기울이면 덩굴들이 중력에 따라 아래로 자란 것 처럼 자동으로 업데이트 되도록 할 수 있습니다. 그리고 바위나 돌 블럭 같은 모델들의 자리를 옮기거나 할 때마다 예전처럼 수풀이랑 덩쿨을 지웠다가 다시 칠했다가를 하지 않아도 됩니다. 또 샘플링 포인트들이 정해진 범위 내에서 랜덤으로 지정되도록 되어 있기 때문에 똑같은 모델을 복사해서 옆에 놓아도 랜덤한 덩굴 덕분에 서로 자연스럽게 달라보이는 효과를 수작업 없이 해낼 수 있습니다. 물론 이 방식의 단점은 결국에 랜덤 생성에 의존 하는 것이기 때문에 세부적인 수동적 편집이 어렵다는 것과 PCG 그래프로 만들어 놓은 시스템을 잘 아는 사람이 필요하다는 것이라고 생각합니다. 하지만 예를 들어 메인 게임플레이가 이루어지는 공간이나 메인 스토리가 진행되는 공간처럼 아주 세밀한 수작업이 필요한 공간이 아니라, 중간 중간 채워줘야 하는 배경에 해당하는 공간이라던가, 시스템적으로 이루어지는 서브퀘스트를 위한 공간 등에 충분히 사용될 수 있을 것 같습니다. 또 제 짧은 지식으로 거기까지는 잘 모르겠지만, 가능하다면 PCG 시스템 자체가 자동화와 수동적 컨트롤이 양립 할 수 있게 만들어진다면 아주 좋을 것 같긴 합니다. 똑같은 PCG 그래프로 포인트 샘플링 하고 덩굴 스폰한 모델들로 조그만 씬 레벨 빌딩 시작 해봤습니다. 덩굴 붙은 모델들 이리저리 돌리고 움직이면서 노는 맛이 있습니다. 전에 안되던 것 되니까 신났지 아주 덩굴 농사법 #2 한가지 방식으로만 만들면 좀 더 한정적이기도 하고 재미도 있다 말았으니까, 다른 방식도 시도 해봅니다. 스플라인 선 위에 포인트를 샘플링하고 사용자가 스플라인을 그리는 경로에 따라 덩굴이 생기는 방식입니다. 스플라인을 이용해야 하기 때문에 블루프린트에다가 스플라인이랑 PCG 그래프를 같이 넣어서 상호작용하게 합니다. 다행히 블루프린트 구조 자체는 굉장히 단순합니다. 스플라인은 점과 점을 이어 곡선을 만들 수 있게 해주는 기능으로, 포샵 만져보신적 있는 분들은 사용해보신 적이 있을 법한 펜툴과 비슷하다고 생각하시면 됩니다. 이전에 3D 모델을 불러올 때랑 덩굴을 불러오는 방식은 거의 같은 개념입니다. 포인트를 샘플링하고 그 샘플된 포인트들 위에 덩굴 모델을 불러옵니다. 덩굴을 여러개 불러오면서 서로 다른 포인트에서 자라나도록 노드들의 값들을 조절해주고요. 아 그리고 벽에 붙어 자라는 덩굴의 형태에 맞게 사용해야 하는 회전값 등이 조금 다른 것 같습니다. 스플라인은 선 위로도 작동 할 수 있지만 루프 형태로 동그랗게(?) 닫힌 형태로, 그린 형태의 안쪽의 공간에 포인트를 샘플링 하는 형태로도 사용 가능 합니다. 덩굴 농사법 #3 마지막으로 제가 사용한 방법은 PCG 볼륨이랑 레벨에 있는 3D 모델들이 서로 겹치는 부분을 사용한 방법입니다. 이 방법은 PCG 볼륨이 직접 돌 블럭을 불러오지는 않고 대신에 볼륨을 이렇게 3D 모델에 붙이면 겹치는 부분에 한해서 포인트를 샘플링 합니다. 샘플링 된 포인트는 다른 방법들과 마찬가지로 노이즈, 필터링을 거쳐서 컨트롤 할 수 있구요. 이렇게 생성된 포인트들에 또 덩굴을 붙여주면 이렇게 됩니다. 이 방식은 PCG 그래프를 여러번 복제 할 필요없이 이미 레벨에 있는 모델들을 사용해서 볼륨만 붙여주면 덩굴을 붙일 수 있어서 여러모로 편리한 것 같습니다. 볼륨 하나로 여러개의 모델에 덩굴을 붙일 수도 있습니다. 다만 레벨 빌딩을 하다가 돌블럭을 다른자리로 옮긴다던가 회전시킨다던가 하면 볼륨도 같이 편집을 해줘야 하는 수고가 생길 수 있습니다. 상황에 따라 첫번째 방법이 더 편할 수도, 이 방법이 더 편할 수도 있을 것 같습니다. 덩굴 자동농법 공부해본 김에 재미로 레벨 작은 공간 하나 만들어 봤습니다. 손이 많이 가고 클릭을 많이 해야 되는 부분이 자동화 되니까 다른 부분에 시간을 더 쓸 수 있어서 구도 잡는거랑 실루엣 잡는 재미가 있네요. 네? 그런데 구도가 왜 그 모양이냐고요? 도대체 뭘 표현하고 싶었던건지 모르겠지만 그냥 덩쿨 농사 성공적으로 마무리 짓겠습니다. 인스타 스토리용으로 샷 한개 더 만들어 봤습니다. 사실 절차적으로 콘텐츠 생성하는 시스템이 새로운 것은 아닙니다. 이미 옛날부터 트리플A 게임들은 다양한 분야에서 사용하고 있었던걸로 알고 있고, No Man’s Sky 라는 게임은 절차적으로 생성되는 세계로 유명하다고 들었습니다. 그리고 이미 에픽 마켓플레이스에서 판매하는 나무/폴리지 플러그인 중에도 절차적 시스템을 사용하는 것들이 있었습니다. 하지만 전 세계적으로 많은 사용자를 보유한 언리얼엔진에 이 시스템이 큰 헤드라인 피쳐로 도입된다는 것에 의미가 있다고 생각하고 특히 나나이트와의 시너지가 좋을 것으로 개인적으로 기대하고 있습니다. 덩굴농사 자동화방법 #1,2,3 필드매뉴얼 (한글자막 있어요)
-
-