디시인사이드 갤러리

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

갤러리 본문 영역

[📜일지] 댕댕이 서바이벌 #8 - 성능 최적화 (움짤 주의)

태보미코갤로그로 이동합니다. 2023.03.23 00:12:23
조회 1499 추천 13 댓글 30
														

7ceb877fb1826df23dec98a213d3341d3a1f2010f4b3f2d9bb73425d7b

지난 번 개발일지 마지막은 요렇게 데미지 표기, 플레이어 스텟 등의 작업이 완료되었었다.

댓글로 성능 관련 질문을 받게되었는데,

대략 텍스트가 많이 표시되면 렉 걸리지 않느냐, 대량의 몬스터도 괜찮은가 였다.

간단히 점검을 해 보았다.

프로파일러도 볼 줄 모르고 물리, 렌더링 관련 지식이 없으므로 양해바람.

7ceb877fb1826ffe3eef98a213d3341d074eccc9303d96431060a912

먼저 데미지가 한번에 대량으로 나오게되면, 순간적으로 프레임이 치솟는게 보인다.

하늘색으로 하이라이트된 부분이 데미지 관련하여 캔버스에 렌더링 되는데에 차지하는 소요시간이다.

데미지 텍스트는 월드 스페이스 캔버스에 tmp를 오브젝트 풀링을 이용해 생성해준다.

두트윈을 이용하였고, 크리티컬, 일반 데미지 각각 두개의 시퀀스를 가지고있다보니

데미지 표기가 많아질수록 두트윈 시퀀스도 500개이상으로 늘어나버린다.

시퀀스를 끝내면 풀에 다시 넣어주는 작업까지.

가비지도 많이 생성되고, 프레임도 불안정하고, 이런저런 문제가 있는 상태다.


아래와 같은 순서로 변경해주었다.

1. 두트윈 대신 애니메이터 이용 => 풀링에 넣어주는 것은 애니메이션 이벤트 이용

애니메이션 이벤트는 ide 상에서 어디서 참조되고 호출되는지 체크하기가 힘들어서 사용을 지양했는데,

가비지도 발생되지 않고 성능도 지금보다 좋아보여서 변경했다.

애니메이터 behaviour는 좀 별로인 것 같았다.

2. TMP Text UI에서 TMP Text로 변경 => 캔버스 사용이 의미가 없는 듯 하고 풀링 시 오브젝트를 껏다 켜는 것이 아닌

mesh renderer enabled 를 제어

3. 데미지 텍스트의 양 제한 => 동시에 일정 개수만 존재 가능, 이후 필요 시 가장 먼저 사용했던 오브젝트를 사용

결과 아래와 같다.

7ded8068f2d73ab64e81d2b628f17c647c2379941b

텍스트 개수를 제한한 것이 효과가 가장 크긴 하겠지만

위 1번 2번 변경을 하며 가비지 생성이 줄어들었으니 다 긍정적인 거 아닐까?

기존과 비교하여 프레임 드롭이 사라졌다 !




참고로 빌드 시에는 성능이 훨씬 좋으므로

나같은 뉴비는 일단 개발하고 성능걱정해도 괜찮을 것 같다.

컴퓨터 사양에 따라 다르겠지만 화면을 가득 채운상태로 대략 1000개 이상의 dynamic 콜라이더가 비벼도 멀쩡해보인다.

프레임 제한을 해제해두었다.

7ded8168f2d73ab64e81d2b628f17c6e9381a3e5f7


7ded8268f2d73ab64e81d2b628f17c6aa7b53d5a26

데미지 표기 개수를 제한해도 크게 거슬리지 않는 느낌?


개수를 제한하는 오브젝트 풀은 요런 식으로 구현해주었다.

2ebcc224eadc76b660b8f68b12d21a1d557c54887c32


실제 게임 플레이 시에는 최대 600마리정도 존재할 것이므로

성능에 대한 걱정보단 역시 구현이나 빨리 해야겠다는 경험이었다.


뉴비인지라 잘못된 부분이 있을 수 있으니 양해바라며, 쓴 말 좋은거에요.

안냥


자동등록방지

추천 비추천

13

고정닉 6

1

댓글 영역

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

하단 갤러리 리스트 영역

왼쪽 컨텐츠 영역

갤러리 리스트 영역

갤러리 리스트
번호 말머리 제목 글쓴이 작성일 조회 추천
2861 설문 어떤 상황이 닥쳐도 지갑 절대 안 열 것 같은 스타는? 운영자 24/05/20 - -
2862 AD 희귀 정령 획득 기회! <아스달 연대기> 출석 이벤트 운영자 24/05/23 - -
160417 공지 완장 호출벨 봄네코갤로그로 이동합니다. 24.05.21 126 0
159490 공지 인디 게임 개발 갤러리 규칙 - 질문 전 필독!! [25] 에뚜갤로그로 이동합니다. 24.05.10 537 3
52873 공지 게임제작 초심자를 위한 글 모음 [9] Goranic갤로그로 이동합니다. 20.07.02 63589 51
123789 공지 뉴비 개임개발 하려는데 뭐부터 해야하나요 복사본 [14] 흉황갤로그로 이동합니다. 23.04.11 11786 18
160695 💬 Unity Input [1] ㅇㅇ(218.235) 14:37 28 0
160694 📜일지 스킬시스템 아키텍처 설계해봄 [6] ㅇㅇ갤로그로 이동합니다. 14:09 127 0
160693 💬 디펜스 게임 '크리스탈 연대기' 일지. - 공격 및 스킬 추가 - [1] Noah갤로그로 이동합니다. 14:07 48 0
160692 💬 어디 괜찮은 소재 없나... [15] 로망바드갤로그로 이동합니다. 12:44 327 0
160691 🐣질문 모바일이 나을까요 스팀이 나을까요 [5] ㅇㅇ(222.108) 11:43 192 1
160690 💬 키우기 겜이라는거 의외로 급식들도 많이 하는구나 [2] ㅇㅇ(222.108) 11:37 149 0
160689 🐣질문 에픽에서 매주 무료로 뿌리는 게임은 [1] ㅇㅇ(211.51) 11:38 122 0
160687 📚정보 험블번들 픽셀 RPG어드벤쳐 번들 [2] dawnDev갤로그로 이동합니다. 11:30 161 2
160686 💬 요 며칠동안 AI 아트 붙잡고 싸메고 있었는데 [1] 아이고이아(223.222) 11:29 169 1
160685 📜일지 Space Zombie Shooter 개발 일지 #09 - 투명기능 추가 [1] Nomadway갤로그로 이동합니다. 10:56 52 1
160684 🐣질문 파이어베이스 이미지 저장해봤는데 문제 있는듯 [1] GAKA갤로그로 이동합니다. 10:37 93 0
160683 💬 여기보면 웹게임 이야기는 별로 없는 거 같은데 [8] 카프카하루키갤로그로 이동합니다. 10:21 194 0
160682 🐣질문 언리얼 에셋 어디서 얻나요? [1] ㅇㅇ갤로그로 이동합니다. 10:07 66 0
160681 💬 플엑 때 재밌었거나 인상 깊었던 게임들 알려줘 [8] 레몬픽셀갤로그로 이동합니다. 09:09 252 0
160680 💬 진짜 인디게임 개발 해보려고 고정닉 갑합니다 [5] 카프카하루키갤로그로 이동합니다. 09:02 241 2
160678 💬 뭔가 계속 부족함 [6] 사슴발레리나갤로그로 이동합니다. 08:45 257 0
160677 📢홍보 오늘도 PlayX4 에서 RedDawn 많이 플레이 해주셈... [3] 샤오룽왕만두갤로그로 이동합니다. 06:28 247 1
160676 📚정보 번)스팀 플레이어는 어려운 게임을 좋아할까? 캐쥬얼 게임을 좋아할까?-1 [4] ㅆㅇㅆ(124.216) 03:23 504 13
160675 🐣질문 C# 공부할만한 책 추천 좀 부탁드립니다. [6] NLBO96갤로그로 이동합니다. 03:12 148 0
160674 📜일지 쯔구르 제작중 240523 [2] 아리_수갤로그로 이동합니다. 03:05 170 1
160673 💬 버그수정만 계속하니 빡친다 [4] ㅆㅇㅆ(124.216) 02:51 153 0
160672 💬 플레이 엑스포 목요일 후기(장문) [12] ㅇㅇ갤로그로 이동합니다. 02:41 614 12
160671 💬 플레이엑스포 겜들 후기 [9] longZam갤로그로 이동합니다. 02:18 538 7
160670 💬 겜메단들 질문 [1] ㅇㅇ(182.227) 00:41 115 0
160669 💬 플레이엑스포 재밌었엉 [1] ㅇㅇ(115.137) 00:39 247 0
160668 💬 저도 플레이엑스포 게임소감 의식의 흐름 올려봄 (퍼즐) [20] ㅇㅇ(125.132) 05.23 416 3
160667 💬 cpu를 바꾸니깐 컴파일 속도 신세계네. [3] 닉네임을잃어버림갤로그로 이동합니다. 05.23 229 0
160664 💬 플레이 엑스포 b2b 온라인상담 / 코트라 상담 이거 뭐냐? [3] ㅇㅇ(27.119) 05.23 193 1
160663 💬 스팀 노릴거면 어떤쪽 홍보가 가장 좋음? [2] ㅇㅇ(119.69) 05.23 153 0
160662 💬 집가면서 쓰는 2024 PlayX4 목요일 갤기장 [32] 김메가갤로그로 이동합니다. 05.23 752 11
160660 🐣질문 bic에서 ai그림 써도됨? [1] ㅇㅇ(220.124) 05.23 243 0
160658 💬 현직 개발자 기획은 하나도 안중요함 [15] 씨이바(175.193) 05.23 486 0
160657 💬 vr은 이게 짱이지 ㅇㅇ(27.119) 05.23 93 0
160656 💬 솔직히 vr기기 자체는 꽤 수준급으로 올라왔는데 [3] ㅇㅇ(182.211) 05.23 146 0
160655 💬 갑자기 vr 땡기네 [1] ㅇㅇ(222.109) 05.23 81 0
160653 💬 야 너네도 로프같은거 애니메이션 할때 빡치냐? [5] ㅇㅇ(1.246) 05.23 194 0
160649 💬 플레이 엑스포 재밌었어요 [1] ㅇㅇ(125.132) 05.23 308 2
160648 💬 파티클 이펙트를 UI오브젝트 뒤에서 나오게 하고싶어요. [1] ㅇㅇ(1.234) 05.23 101 0
160647 💬 근데 갤 보면 모바일로 돈벌기가 더 쉽다고 하던데 [10] ㅇㅇ(222.108) 05.23 354 0
160646 💬 밸런스 다 맞춰주는 Ai는 언제 나오냐 [1] ㅇㅇ갤로그로 이동합니다. 05.23 111 0
160645 💬 플엑 네트워크 파티 오신분 香風智乃갤로그로 이동합니다. 05.23 163 0
160644 🐣질문 몽글몽글 귀엽뽀쨕한 ui가 있는 게임 ㅊㅊ좀 [4] ㅇㅇ갤로그로 이동합니다. 05.23 154 0
160643 💬 님들은 인프런에 대해 어떻게 생각함 [8] 홈프갤로그로 이동합니다. 05.23 345 0
160642 💬 안녕서울 인갤출신 게임이라고 하면 안되냐 [8] dawnDev갤로그로 이동합니다. 05.23 733 7
160641 💬 ui 디자인 개 ㅈ같다 진짜 [13] ㅇㅇ(222.236) 05.23 392 0
160640 💬 게임 개발 시작하려면 c쁠쁠 깊게는 몰라도 되냐 [20] 유나fan갤로그로 이동합니다. 05.23 294 0
160639 💬 gpt가 뮤텍스처리는 못하네... [2] 파베르Dev갤로그로 이동합니다. 05.23 173 0
160637 💬 길쭉해요 [3] ㅇㅇ(125.133) 05.23 242 2
160636 🐣질문 suno ai로 브금 만드려는데 아시는 분 계심? [2] ㅇㅇ(180.182) 05.23 125 0
160635 💬 c++에서 폴드 표현식과 파라미터팩 차이를 알았음... [7] ㅇㅇ(211.199) 05.23 138 1
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

뉴스

디시미디어

디시이슈

1/2