Dungeon & Fighter

새소식

개발자노트

2018년 상반기 최적화 개선 사항 안내

2018.05.10 10:00 103,266

모험가 여러분 안녕하세요.

던전앤파이터 프로그램 총괄팀장입니다.

 

2017년 10월 최적화 개발자 노트를 통해서 프레임 레이트 개선을 목적으로 하는 다양한 개선작업에 대한 소개를 드렸었는데요.

쉽게 말해서 렉 문제를 최소화하기 위한 근본적인 개선 작업들에 대한 소개였었습니다.

그 이후에도 렉 최소화를 위한 추가적인 개선 작업들을 진행하고 있으며 그 외 게임 플레이에 불편함을 줄 수 있는 것들에 대해서도 개선해 나가고 있습니다. 

 

그럼 지금부터 최근 개선되었거나 앞으로 계획 중인 최적화 내용을 소개해 드리도록 하겠습니다. 

 

 

첫 번째, 사운드 엔진 개선

 

던파 게임 플레이 도중 BGM, 캐릭터, 몬스터, 환경음 등 다양한 사운드를 즐기실 수 있을 텐데요.

최적화 이후에는 최대 동시 재생 가능한 사운드 갯수가 증가하였고 내 파티원의 사운드 볼륨을 조정할 수 있도록 옵션으로 제공이 됩니다.

 

1) 사운드 재생 로직 개선

기존보다 좀 더 효율적으로 운용하도록 개선됩니다. (약 2~3배가량의 효율 개선)

동시 재생 가능한 사운드 수가 증가되었고 간헐적으로 사운드를 듣지 못했던 문제들에 대해서도 일부 개선됩니다.

 

2) 파티원 사운드 볼륨 조정 옵션 제공

엔진 개선 뿐만 아니라 내 파티원의 사운드 볼륨을 조정할 수 있도록 옵션이 제공됩니다.

파티원 사운드는 파티원 캐릭터의 사운드 뿐 아니라 파티원이 소환한 오브젝트, 크리쳐, 소환수 등의 사운드도 포함됩니다.

 

 

 

해당 내용은 5월 10일(목)에 적용됩니다.

 

 

두 번째, 멀티 스레드를 활용한 프레임 성능 개선

 

이번에 소개드릴 내용은 2017년 10월 개발자 노트를 통해서 이미 소개해 드렸던 내용이기도 합니다. 

 

1) "로딩 로직"과 "그리는 로직" 분리

게임 내에서 수많은 오브젝트들을 로딩하고 모니터에 순차적으로 보여지게 되는데요.

오브젝트의 수가 많아서 로딩 로직에 부하가 생긴다면 그리는 로직에도 영향을 주어 지연 현상이 발생을 하게 됩니다.

하여 멀티 스레드를 활용하여 "로딩 로직"과 "그리는 로직"을 명확히 분리하여 어느 한쪽이 지연되었을 때 다른 한쪽이 같이 느려지는 것을 최소화하도록 개선하였습니다.

 

게임 내 오브젝트는 내부적으로 종류에 따라 다양한 로직으로 구분되어 있어 전체 로직을 한 번에 적용하였을 때 예상치 못한 문제가 발생할 수도 있습니다.

하여 5월 말에서 6월 초를 목표로 남녀 거너부터 순차적으로 적용하는 것을 계획하고 있습니다.

 

2) "업데이트 로직"과 "그리는 로직" 분리

던파가 오랜기간 서비스되면서 의도치 않게 업데이트 로직과 그리는 로직이 혼용되어 사용됐었고 이로 인해 프레임 레이트 관리에도 어려움이 있었습니다.

이 부분 역시 멀티 스레드를 활용하여 로직을 분리하도록 개선작업이 진행 중에 있습니다.

멀티 스레드를 활용하여 "업데이트 로직"과 "그리는 로직"을 명확히 분리하여 어느 한쪽이 지연되었을 때 다른 한쪽이 같이 느려지는 것을 최소화하도록 개선하려고 합니다.

좀 다른 방향으로 설명해 드리면, 해당 개선 작업은 당장의 프레임 저하를 해결한다기보다는 중.장기적 관점에서의 위험요소를 근간부터 수술하여 제거해버리는 중요한 업데이트라 볼 수 있습니다.

 

수련의 방과 에컨 던전에서의 최적화 전후 프레임 수치를 비교해본 결과 다음과 같은 프레임 향상이 있었음을 확인하게 되었습니다.

 

 

<최적화 전후 비교>

 

다만 해당 최적화의 경우 다른 최적화들보다 난이도가 높은 편이고 다른 로직에도 영향을 줄 수 있는 가능성이 높아 좀 더 보수적으로 접근하고 있으며,

올해 중.하반기부터 시범적으로 적용 및 관찰해 나갈 예정입니다.

 

 

세 번째, 총검사 메모리 최적화

 

총검사 업데이트 이후 메모리 비효율에 대한 개선작업도 함께 진행되었는데요. 
직업에 따라 개선의 차이는 있지만, 전체적으로 10~80MB가량의 메모리 효율을 확인할 수 있었습니다.


해당 내용은 3월 8일(목)에 적용되었습니다. 



네 번째, 버프 스위칭 렉 & 스킬 장비 최적화

 

1) 버프 스위칭 렉 개선

버프 강화 시스템과 관련하여 일부 스킬 사용 시 간헐적으로 끊기는 현상을 개선하게 되었는데요.

특히 크루세이더 스킬 일부가 실시간화되면서 장비 교체와 관련한 내부 로직에서 많은 부하가 있음을 확인하게 되었습니다.

하여 문제 가능성이 있는 로직들에 대한 개선 및 호출 횟수에 대한 조정을 통해 끊기는 현상을 일부 개선하게 되었습니다.

 

평균적으로 기존보다 대략 400%가량의 성능 향상이 있었음을 확인하였고요.

다만 게임환경이나 PC 사양에 따라 정도의 차이가 있을 수 있어 패치 이후에도 모험가 여러분의 의견을 주위 깊게 듣도록 하겠습니다. 

 

2) 스킬 장비 최적화

무기 외형이 변경되는 일부 스킬들의 내부로직 개선 및 이미지 선로딩을 통해 프레임 저하 현상을 완화하였는데요.

예를들면 베틀메이지의 사도화, 크루세이더의 성령의 메이스/썬더해머 : 유피테르, 쿠노이치의 쿠사나가의 검 등이 여기에 해당됩니다.

 

빠른 이해를 돕고자 영상을 준비했습니다. 

 

<적용 전><적용 후>

 

해당 내용은 5월 3일(목)에 적용되었습니다.

 

 

마지막으로 "포화채널 플레이 렉" & "로그 프레임 드랍" & "클라이언트 구동 렉"

마지막으로 포화채널 플레이 렉 & 로그 프레임 드랍 & 클라이언트 구동 렉 에 대한 개선내용을 소개하여 드리겠습니다. 

 

1) 포화 채널 플레이 렉 개선

포화 채널에서 플레이 시 발생하는 렉 현상은 모험가분들이 집중적으로 많이 모이는 채널에서 발생하는 현상입니다.

너무나도 당연하게 많은 모험가분들이 모여있기 때문에 발생하는 현상이라고 판단했었고, 하여 더욱 문제 원인을 찾기가 어려웠던 기억이 나는데요.

문제의 원인은 포화채널 입장시점에서의 패킷 처리 과정에서 지연되는 현상이었고 이를 수정하게 되었습니다.

아래 이미지를 통해 개선 전후 프레임이 심하게 등락하는 현상이 사라졌음을 알 수 있습니다.

 

 

<개선 전>

 

 

<개선 후>

(※ 위 화면은 유저가 80~90% 접속해 있는 채널에서 테스트한 결과입니다.)

 

해당 내용은 2월 22일(목)에 적용되었습니다. 

 

2) 로그 프레임 드랍 현상 개선

히트엔드 발동 시 스킬 에니메이션을 그리는 과정에서 데이터가 지속적으로 누적되는 현상이 확인되었는데요.

플레이 타임이 길어질수록 프레임 수치는 지속적으로 떨어져서 점점 더 느려질 수 있는 구조였으며, 파티 플레이 시 다른 모험가분들에게까지 영향을 미칠 수 있었습니다.

해당 내용은 5월 3일(목)에 적용되었습니다.

 

3) 비활성 모드 시 클라이언트 로딩 최적화

GAME START 버튼을 클릭한 후에 던전앤파이터 클라이언트가 실행이 되는 동안 다른 프로그램을 사용하고 있을 경우(비활성 모드), 그렇지 않은 경우보다 로딩 시간이 3분가량 지연되는 문제였습니다.

비활성 모드일 때 불필요한 로직을 개선하여 활성 모드 실행 시간과 동일하게 개선되었습니다.

해당 내용은 5월 10일(목)에 적용됩니다.

 

지금까지 2018년 상반기에 진행되었거나 지속 계획 중인 최적화에 대해 소개하여 드렸는데요.

모험가분들과 오랜기간 던파 라이브 서비스를 함께 해 오면서 다양한 재미와 컨텐츠를 제공해 드리기 위한 과정에 있어서 의도치 않게 게임 안정성을 저해하는 문제들이 발생하곤 하였습니다.

물론 모험가분들마다 게임 환경이나 PC 환경이 다르기에 체감 정도나 원하시는 부분이 다를 수 있다고 생각됩니다.

다만 개발 과정에서 의도치 않게 발생하는 버그나 문제점으로 인해 발생할 수 있는 모험가분들의 불편함을 최소화하고자 최선의 노력을 다하겠습니다.

 

고맙습니다.

개발자노트

  • 아스라한 : 안개의 신, 무 퍼스트 서버 안내드립니다. (127) 2024.04.17 40,493
  • 안녕하세요. 라이브 디렉터 박종민입니다. (234) 2024.03.13 92,233
  • 아이템, 파밍 관련 개선 사항에 대해 말씀드립니다 (595) 2024.02.14 140,201
  • 아라드 패스 방향성에 대해 말씀드립니다. (1,881) 2024.01.17 137,538
  • 콘텐츠 보상 방향성에 대해 말씀드립니다. (346) 2024.01.03 130,756
  • 개발자 수의 던파 편의성 개선 이야기 13회 (99) 2023.12.06 82,212
  • 미스트기어 개선 사항에 대해 말씀드립니다 (507) 2023.12.06 146,284
  • 미스트 기어 세트 옵션에 대해 말씀드립니다 (699) 2023.11.22 98,955
  • 신규 레기온 어둑섬 업데이트 안내 (1,144) 2023.11.01 163,468
  • 개발자 수의 던파 편의성 개선 이야기 12회 (117) 2023.10.18 106,486