:DitoLand
Studio ManualAPI ReferenceVideo TutorialSample
  • DitoLand Developer
  • 📚Glossary
  • 🥳EVENT
    • 2024 메타버스 개발자 경진대회
    • 🎊[종료] 🖥 전남관광메타버스 스탬프 투어 인증 이벤트
  • Notice
    • 약관 개정(2024.06.17)
    • 약관 개정 (2024.03.04)
    • 약관 개정 (2023.08.25)
    • 약관 개정 (2022.12.14)
  • Manual
    • Studio
    • Resources
    • Studio Workflow Tips
    • NPC
    • NavMeshVolume
    • Land Teleport
    • Enterprise Account
    • Enterprise Studio Manual
    • Coroutine
    • AddTimeEvent
    • SaveUserData
    • Set Object Parameter
    • Toolbox Upload
    • Debugging (Breakpoint)
    • Gun Toy
    • Coupon / Event Key
    • Optimization
    • AI FSM
    • SpreadSheet
    • Mod Kit
    • AddReplicateValue / ConnectChangeEventFunction
    • Event Execution Order
    • WorldTree Search Filter
    • Object
    • Coordinate
    • Inworld Product
    • Management UserData & Leaderboard
    • Channel
    • World Event
    • Matchmaking
    • Collecting Game Logs
    • External Avatar
  • Coding Style
  • API Reference
    • Global
      • Variables
    • Lua
      • Built-in
      • NotSupport
    • Enums
      • AttachPoint
      • Bone
      • CharacterType
      • ChatCategoryType
      • ChatVisibleType
      • CollisionResponse
      • ControlMode
      • DivideTeamType
      • EventKeyState
      • InputMode
      • InventoryState
      • Key
      • KeyInputType
      • LuckyDrawOrderState
      • MaterialType
      • MediaStateType
      • ModeAnimStateType
      • ObjectSelectType
      • ObjectType
      • PathFollowingStatus
      • PointSpawnType
      • ProgressFillType
      • ProjectionType
      • QuickSlotState
      • ReplicateType
      • ScrollOrientationType
      • SimulatePhysicsType
      • SpawnType
      • TeamType
      • TeleportErrorType
      • TouchType
      • TransformPlayType
      • UIDisplayType
      • UIWidgetType
      • WidgetAnchorType
    • Common
      • BindEvent
      • Character
      • Collision
      • Color
      • CouponReturnData
      • DateTime
      • Environment
      • EventKeyReturnData
      • FactorPhysics
      • FiniteState
      • FiniteStateMachine
      • Game
      • GameStatisticsData
      • HitResult
      • Item
      • LandTransferData
      • Matrix
      • MouseHitResult
      • Object
      • Physics
      • ScriptPhase
      • TimeEvent
      • Track
      • Vector
      • WorldObject
    • Client
      • AnimStateBase
      • AnimStateMachine
      • AnimStateMachineSetting
      • BlendAnimationDataSetting
      • BlendAnimState
      • BlendAnimStateSetting
      • Button
      • Camera
      • CameraClient
      • Character
      • CharacterAnimationSetting
      • CharacterAppearanceSetting
      • CharacterBaseSetting
      • CharacterClient
      • CharacterSetting
      • Collider
      • Collision
      • DPad
      • Environment
      • FiniteStateMachine
      • Frame
      • FX
      • Game
      • GridBox
      • HyperLinkButton
      • Image
      • Input
      • InputGroup
      • InventoryBox
      • Item
      • ListView
      • LocalPlayer
      • Media
      • MediaView
      • NPC
      • ObjectGroup
      • ObjectNoneClient
      • PDFView
      • Physics
      • PointLight
      • ProgressBar
      • RemotePlayer
      • ScreenButton
      • ScreenUI
      • Script
      • ScrollBox
      • SequenceAnimState
      • SequenceAnimStateSetting
      • Sound
      • SpotLight
      • StaticMesh
      • SurfaceUI
      • Text
      • TextBox
      • UIScene
      • WebBrowser
      • WebForum
      • WidgetBase
      • YouTubeView
    • Server
      • Character
      • CharacterAnimationSetting
      • CharacterAppearanceSetting
      • CharacterBaseSetting
      • CharacterServer
      • CharacterSetting
      • Collider
      • Collision
      • Environment
      • FactorPhysics
      • FiniteStateMachine
      • FX
      • Game
      • Item
      • Media
      • NPC
      • Physics
      • Player
      • PointLight
      • Script
      • ScriptObjectGroup
      • ScriptObjectNoneServer
      • Sound
      • Spawner
      • SpawnPoint
      • SpawnPointGroup
      • SpotLight
      • StaticMesh
      • Team
      • UIScene
      • Widget
  • Tutorial
    • Script Tutorial
      • 스크립트 심화 강좌
        • 1. 스크립트의 종류, 호출 순서, 호출, 통신
        • 2. 동기화, 파라미터, 예외사항
        • 3. 디토랜드로 루아 활용하기
  • Sample
    • Scripting
    • Event
    • Collision & Physics
    • Transform
    • UI
    • Camera
    • Input
    • FX
    • Sound
  • Guide for Developers
    • Guide For Unity Developer
    • Guide For Roblox Developer
  • Release Note
    • Script Changes
      • 1.5.0 Map Changes
      • 1.2.0 Map Changes
      • 1.1.0 Map Changes
      • 1.0.0 Map Changes
      • 0.9.0 Map Changes
      • 0.7.0 Map Changes
      • 0.6.0 Map Changes
      • 0.5.0 Map Changes
      • 0.4.0 Map Changes
      • 0.3.0 Map Changes
      • 0.2.0 Map Changes
    • Known Issues
Powered by GitBook
On this page
  • 📊 권장 사양
  • 월드 최적화🛠하기
  • 1 뭐든지 과하면 좋지 않다! 🏜📐⚔📉
  • 2 필요 없으면 끄자 🔍
  • 3 ⚙ 최적화를 위한 팁 💡

Was this helpful?

  1. Manual

Optimization

맵 제작 시, 최적화 방법에 대한 메뉴얼이에요.

PreviousCoupon / Event KeyNextAI FSM

Last updated 1 year ago

Was this helpful?

📊 권장 사양

디토랜드는 원활한 사용을 위한 최소 사양을 제공하고 있어요. 현재 사양📝을 확인해보세요. 😊

➡

월드 최적화🛠하기

1 뭐든지 과하면 좋지 않다! 🏜📐⚔📉

월드를 어떻게 만드느냐에 따라 같은 컨텐츠더라도 부하 수준이 다를 수 있어요. 😥

부하를 주는 요소들을 인지하고 월드를 만들면, 누구나 원활하게 플레이할 수 있는 환경을 만들 수 있어요. 😍

이에 대한 🍯꿀팁들은 아래를 참고하세요. 🤗

1.1 스태틱 메쉬🎲의 갯수를 줄이자!

여러개의 스태틱 메쉬를 조합하여 외형을 표현할 수도 있지만, 툴박스를 잘 이용하면 하나의 메쉬만으로도 쉽게 외형을 표현할 수 있어요.

❤사용 예시

비슷한 모양의 소파이지만 쓰인 메쉬의 갯수가 달라요.

툴박스의 토이들은 높은 퀄리티를 가지고 있으니 적극적으로 활용해보세요. 💛

1.2 🧊 반투명 재질의 사용은 최소한으로!

유리 같은 반투명한 재질을 사용하는 오브젝트가 많아지면 느려질 수 있어요. 🧊

유리 재질이 꼭 필요한 상황이 아니면 다른 재질로 🔁변경하는 것을 권장해요.

또는 하나의 유리를 늘려서 사용하여 사용량을 줄일 수 있어요.

❤사용 예시

1.3 🙋‍♂️🙋‍♀️ NPC 친구들도 적당히~

캐릭터의 외형을 참조하는 NPC가 🙅‍♀️🙅‍♂️ 많아질 경우 느려질 수 있어요.

다수의 NPC가 꼭 필요한게 아니라면 사용량을 줄여보세요.

1.4 🎨 UI도 최적화!

하위에서 하위로 UI를 연달아서⛓️ 배치된 구조를 너무 많이 사용하면

스튜디오에 부하가 발생할 수 있어요.

UI의 계층구조를 구성할 때 너무 복잡하고 깊지 않은 구조로 제작해보세요.

❤사용 예시

2 필요 없으면 끄자 🔍

2.1 충돌 정보💥를 줄이자

오브젝트의 💥콜리전 사용이 많아지면 충돌 처리에 부하가 생길 수 있어요.

오브젝트들의 콜리전은 🔒비활성화하고 콜라이더를 배치하는 방법을 사용해보세요. 😎

❤사용 예시

각각의 오브젝트에서 콜리전을 사용하면 충돌에 따른 처리량이 오브젝트 수 만큼 필요하지만 콜라이더를 4개만 배치하는 것으로 부하를 쉽게 줄일 수 있어요.

2.2 ✨조미료(라이트)는 적정량만

PointLight나 SpotLight의 사용이 많아지면 부하도 문제이지만, 모바일에선 일부가 제대로 표현되지 않을 수 있어요. 🚦

모바일에서도 플레이할 수 있는 월드에서는 라이트 사용을 ❌ 권장하지 않아요.

PointLight / SpotLight

PC

모두 출력

Mobile

가까운 4개만 표시

2.3 🌗 그림자를 없애보자

그림자를 표시하지 않아도 되는 Mesh 라면, Cast Shadow 프로퍼티를 false 로 변경해서, 그림자를 안보이게 만들어보세요. 🌘

3 ⚙ 최적화를 위한 팁 💡

3.1 보이지 않는 곳은 표시🕶할 필요가 없다! - Cull Distance

오브젝트의 렌더에는 거리가 멀어지면 자동으로 표시가 꺼지는 Cull Distance 기능이 있어요. 기본적으로 Cull Distance는 켜져있고, 이것을 끄지 않는 것을 권장해요. 📣

Cull Distance가 켜져있으면 거리에 따라 자동으로 오브젝트를 끄고 키면서 최적화가 진행돼요.

단, 오브젝트가 많이 작으면 조금만 멀어져도 안 보일 수 있어요. 😥 반드시 보여야 한다면 끄는 것도 고려해보세요. 👍

❤사용 예시

규모가 큰 하나의 월드에서 구역을 여러 개로 나눌 때 벽을 이용하면, 벽 뒤의 오브젝트는 표시되지 않아요.

이 방법으로 맵을 크게 만들더라도 부하를 적게 해서 원활한 플레이 환경을 제공할 수 있어요. 🙌

3.2 얇은 구조물은 🟫Plane 메쉬를 사용하자

창문과 같은 납작한 오브젝트는 Cube 메쉬를 사용하는것 보다는 Plane 메쉬를 이용해보세요.

Plane 메쉬는 Cube 메쉬 보다 로딩이 빠르고 가벼워서 최적화에 유리해요.

❗단, Plane 메쉬는 한쪽 면에서만 보이므로 만약 보이지 않는다면 방향을 돌려주세요!

❤사용 예시

Plane 메쉬는 한쪽 면만 보이기 때문에 월드의 🚧가장자리🚧에 배경을 표현할 때도 유용하게 사용할 수 있어요.

3.3 텍스쳐🖼를 활용해보자

타일이나 철조망 같은 오브젝트를 표현하고 싶다면 머터리얼에서 ‘키’와 ‘텍스쳐’를 활용해보세요.

오브젝트의 머터리얼에는 오브젝트 재질을 선택할 수 있는 많은 옵션이 포함되어 있어요. 이를 활용하여 다양한 모습을 쉽게 표현할 수 있어요.

이름
설명

키

오브젝트의 재질이에요.

텍스쳐

오브젝트의 텍스쳐를 변경할 수 있어요. 더 다양하고 예쁜 모습을 표현할 수 있어요.

TilingScale

타일링을 사용할 때, 타일의 크기에요.

타일링

텍스쳐를 타일처럼 쓸 지에 대한 여부에요.

❤사용 예시

여러 텍스쳐와 키를 활용하여 다양한 모습을 표현해보세요. 🎶

최소 권장사양은 5번 참고