태그 참조

*이 콘텐츠는 AI(베타)를 사용해 번역되었으며, 오류가 있을 수 있습니다. 이 페이지를 영어로 보려면 여기를 클릭하세요.

다음은 MicroProfiler의 일반적인 태그 목록입니다, 카테고리별로 그룹화되어 있습니다. 이 태그를 이해하는 것은 문제가 있는 코드를 식별하는 데 도움이 될 수 있습니다. 테이블에는 태그 레이블, 설명 및 성능 조언이 포함되어 있습니다. 이를 통해 경험을 개선하고 성능을 최적화할 수 있습니다.

AI/나비게이션

레이블설명성능 팁
랙화일경로 찾기 요청에 필요한 탐색 타일을 업데이트하는 경우, 일반적으로 해당 타일이 최신 상태여야 하는 계산 경로를 따라 수행됩니다. 메인 스레드의 NavigationJob/pre処理를 따릅니다.경로 찾기 타일 무효화의 수를 줄이십시오, 이렇게 하면 이러한 경로가 다시 계산해야 하기 때문에 필요합니다. 이는 이동 가능한 부품 때문에 발생합니다.
컴퓨트 경로

경로를 계산합니다. 일반적으로 rasterizeTile 후에.

ComputePath 호출의 개수 및 세계 영역을 줄이십시오. 경로를 다시 사용하여 여러 에이전트에서 시작/종료하는 것이 예상되는 경우 경로를 다시 사용하십시오.
프로처리/프리미티브 중첩 가져오기각 경로 찾기 타일에 대한 세계 지오메트리를 수집하고 경로 찾기 스레드에서 렌더링 작업을 예약합니다.부품 수를 줄이십시오.

애니메이션

레이블설명성능 팁
시뮬레이션/게임Stepped게임 특정 개체처럼 Humanoids, Animations 및 하트 비트 콜백을 처리하는 중
시뮬레이션/게임Stepped/StepLegacyHumanoid 상태 변경 및 movement.Called 서버의 stepHumanoid(병렬 버전)NPC에 있는 Humanoid 상태를 비활성화하거나 줄이십시오. 사다리 상태는 가장 중요한 비활성화 방법입니다. 콜백을 상태 변경으로 줄이십시오, 예를 들어 Humanoid.Died 또는 Humanoid.Running입니다.
시뮬레이션/게임Stepped/stepAnimationAnimators 는 현재 애니메이션을 재생하는 것으로 전진합니다.이 단계의 작업 부하를 줄이려면 Animators 또는 애니메이션 조인트의 수를 줄이십시오. 콜백을 애니메이션 이벤트로 줄이려면 AnimationTrack.KeyframeReached 또는 AnimationTrack.Ended 를 줄입니다.
시뮬레이션/게임Stepped/RunService.SteppedClass.RunService.Stepped 이벤트에 연결된 함수를 실행합니다.이 이벤트에 연결된 함수의 수나 작업량을 줄입니다. 비용이 많이 드는 복잡한 계산을 지연하거나 교체하는 것을 고려하십시오. 여러 프레임에 대해 계산을 확장하는 것을 고려하십시오.

오디오

레이블설명성능 팁
음향오디오 처리: 위치, 효과, 볼륨 등
개발자 태그_음향메모리 내 사운드: 일반적으로 메모리에 들어갈 정도로 짧은 사운드입니다. 일반적으로 짧은 하나의 샷 fx, 길이가 아닌 음악을 나타냅니다.짧은 소리를 사용합니다.
개발자 태그_스트리밍 사운드stream/StreamingSounds: 이는 디스크에서 스트리밍되는 큰 음악 파일입니다. 일반적으로 더 긴 형식의 음악 파일입니다.긴 소리를 사용하지 마십시오.

네트워킹

레이블설명성능 팁
네트워크 패킷 수신네트워크 패킷을 수신합니다. 많은 개체나 이벤트가 복제되는 경우 이 단계가 더 오래 걸립니다.개체나 이벤트를 더 적게 복제합니다.
리플리케이터/프로세스 패킷네트워크 패킷의 콘텐츠, 예를 들어 이동, 이벤트 호출 및 속성 변경을 처리합니다.복제되는 개체의 수나 크기를 줄이거나 증분 단위로 수행합니다. 맵 크기가 증가함에 따라 맵 내의 개체 수가 증가하고 활동이 증가하므로 증가할 수 있습니다.
대역 할당 및 실행 발신자/전송 물리 발신자 및 터치 발신자경험에서 활동에 대한 데이터를 보냅니다.이동 개체 및/또는 터치의 수를 줄이십시오. 다음 섹션을 참조하십시오.
대역폭 할당 및 실행 송신기/디스패치 스트림 작업“스트리밍” 기능에서 해당 지역을 특정 클라이언트에 보냅니다.최소 및 대상 스트림 레이를 줄이십시오.
대역 폭 할당 및 실행 발신자/데이터 전송자속성 변경, 원격 이벤트, 인간형 상태 변경, 애니메이션 시작/중지를 보냅니다.데이터 모델에 복제된 변경 사항 수를 줄이십시오.
복제 클러스터 보내기클라이언트에 지형 데이터를 보냅니다.지형 변경의 양이나 크기를 줄이십시오.
ModelCompleteness Mega 작업서버 전용: 완전성은 내부 개념입니다. 모델이 완전히 전송되면 모델 완전성 이벤트가 문인스턴스를 더 추가하거나 제거합니다.
데시리제패킷저수준 네트워크 패킷 처리. Replicator 프로세스 패킷에 대비합니다.업데이트를 보내십시오.

렌더링

레이블설명성능 노트
준비주 스레드에서 정보를 수집하고 렌더링에 사용되는 다양한 데이터 구조를 업데이트합니다. 이렇게 하면 시뮬레이션 스레드가 줄어들므로 가능한 한 작게 유지해야 합니다.아래에서 준비 레이블을 참조하십시오.
준비/Pass3dAdorn다양한 개체 장식, 예를 들어 개체 위의 텍스트 레이블. 이 단계에는 레이캐스팅을 포함할 수 있으므로 이러한 개체가 표시되는지 여부를 결정할 수 있습니다.Class.BillboardGui|BillboardGuis, Humanoid 이름 및 체력 레이블 등의 표시 장식된 개체 수를 줄이십시오.
준비/패스2d2D 인터페이스 렌더링(플레이어 및 Roblox 인터페이스).UI 요소의 개수 또는 복잡성을 줄이십시오.
Prepare/UpdatePrepare/updateInvalidParts특성이 변경된 또는 추가된 부품을 업데이트합니다.세계에서 속성 변경의 양을 줄이십시오. 스크립트가 대규모 개체 속성을 업데이트하면 프레임 간에 작은 집합으로 나눕니다.
Prepare/UpdatePrepare/updateInvalidatedFastClusters대개 렌더링하기 위해 사용되는 Humanoids를 준비합니다. 하위 마커는 부품, 윤곽 및 윤곽의 크기를 지정합니다.개체가 Humanoids 하지 않은 경우에는 'Humanoids'를 사용하지 마십시오. 이렇게 하면 개체가 더 많은 메모리를 사용하므로 빠른 클러스터에서 드로우 콜을 최소화할 수 없습니다.
Prepare/UpdatePrepare/DynamicParts 준비/업데이트Class.Humanoid|Humanoids, 차량 및 기타 이동 인스턴스를 위한 위치 업데이트.이동 중인 Humanoids 또는 차량의 복잡성을 줄이십시오. 동일한 재료 및 색상의 부품을 조합하여 유니온 또는 MeshPart를 만들면 도움이 될 수 있습니다.
Prepare/UpdatePrepare/updateInstancedClusters인스턴스 렌더링(부품 및 메쉬 부품)을 사용하는 정적 기하를 준비합니다. "클러스터" 및 "인스턴스" 레이블은 업데이트된 번호를 나타냅니다.전체 메쉬 및 재료 변경을 최소화하십시오. 또한 유사한 모양의 개체를 사용하여 클러스터를 생성할 수 있습니다.
수행실제 렌더링 명령이 생성되고 발행될 때.아래에 레이블을 참조하십시오.
Perform/FillGuiVerticesUI 렌더링. 버퍼에 액세서리용 UI 벡터를 채웁니다. "Gui count" 레이블은 렌더러 목록의 요소 수를 나타냅니다.비용이 많이 드는 경우 사용자가 숨겨 있는 동안 해당 인터페이스를 업데이트하는 것을 확인하여 사용자에게 알려주도록 합니다.
Perform/Scene/queryFrustumOrdered보이지 않는 개체를 렌더링하지 않도록 frustum 제거를 적용합니다.높은 비용이 많은 요소가 있음을 의미하는 경우 더 큰 메쉬를 사용하여 단일 메쉬에 더 많은 세부 정보가 있습니다. 여러 작은 개별 조각이 있는 대신 메쉬 하나로 더 많은 세부 정보를 표시할 수 있습니다.
스케치/스케치/스케치 조명 수행카메라 근처에서 조명을 계산합니다.조명 재계산 시간을 줄이려면 조명 수를 조작하거나 카메라를 이동합니다.
스케이프/스케이프/컴퓨트라이트/컴퓨트라이트 CPUUpdates the voxel lighting, which is used in Voxel and ShadowMap modes and at quality levels below 4 in Future mode.덩어리 점유량을 업데이트하는 데 너무 오래 걸리면 해상도를 낮추거나 부품 수를 줄이거나 고정 부품을 사용하십시오. 다른 하위 표시기가 너무 오래 걸리면 조명을 줄이고 그림자 캐스팅 기하구조를 사용하여 점유량이 잘못 되는 개체를 위해 개체를 고정하십시오.
계산/스케치/조명 계산/그림자 맵 시스템Shadow 맵을 업데이트합니다. 품질 수준이 4 미만인 경우 또는 Lighting.TechnologyVoxel 로 설정하면 수행되지 않습니다.조명이 Future로 설정되면 하위로 ShadowMap 또는 조명 수를 줄입니다. 또한 Light.Shadows 및 1> Class.BasePart.CastShadows1>를 사용하여 더 적은 인스턴스에 대해 그
Perform/Scene/Glow, ColorCorrection, MSAA, SSAO, 및 SSAOApply 수행포스트 처리 렌더링.포스트 처리 효과의 개수를 줄이십시오. 일반적으로 이것은 중요하지 않습니다.
액션/스케이프/UIUI 렌더링. 이드 스크린에는 사용된 배치, 재료 및 삼각형의 수를 표시하는 레이블이 있습니다.표시 가능한 UI 요소의 수를 줄이십시오. CanvasGroups를 사용하면 메모리 사용량을 증가시킬 수 있습니다.
Perform/Scene/UpdateView/updateParticles, updateParticleBindings입자 위치 및 한도 업데이트.Class.ParticleEmitter|ParticleEmitterters 수, 방출 비율, 수명 등을 줄이십시오. 방출자의 이동을 제한합니다.
이드_오펙0의 투명도 값이 있는 장면의 부품.
투명_ID0 이외의 투명도 값이 있는 장면의 부품.부분 투명도 사용(0 및 1을 제외한 값)을 줄이십시오.
이미지 ID장면에 데칼.
수행/제공이전 프레임을 렌더링할 GPS를 완료하기를 기다리고 있습니다; 실제로 렌더링 명령을 GPS에 발생시키고 저레벨 그래픽 리소스를 처리합니다.일반적으로 시네마 복잡성을 줄이십시오.이 단계가 오래 걸리면 경우 딥 러닝 그래프에 제한 될 수 있습니다.
수행/제공/완료될 때까지 기다리기GPU가 이전 프레임을 렌더링하기를 마칠 때까지 대기합니다.이 일이 자주 발생하면 렌더링되는 것의 수가 너무 많아집니다. FRM은 이것을 균형 잡는 데 도움이 되지만, 높게 유지되면 자세한 부분을 사용하지 마십시오.

스크립트

레이블설명성능 팁
렌더/미리렌더/fireBindToRenderSteppedCallbacksClass.RunService:BindToRenderStep()를 통해 단계를 렌더링하는 함수를 실행합니다.스크립트에서 함수를 사용하여 작업을 최소화하십시오. RunService:BindToRenderStep()
Render/PreRender/RunService.RenderSteppedClass.RunService.RenderStepped 이벤트에 연결된 함수를 실행합니다.BindToRenderStep 와 유사하지만, 이 이벤트를 사용하는 함수는 최소한의 작업을 수행해야 합니다.
잠시 대기 하이브리드 스크립트 작업대기 프레임을 사용하여 기다리는 스크립트를 재시작합니다.이 단계에는 실행 스크립트 예산이 있으므로 많은 대기 스크립트 또는 런타임이 길게 걸리는 스크립트가 있으면 이 단계는 여러 개의 단계를 수행할 수 있습니다.
LuaGCLua 가비지 수집 사이클. 레이블은 총 할당량과 할당된 메모리의 양을 예상합니다.풀 루아 테이블 및 다른 수집 가능한 개체 또는 임시 테이블 또는 문자열을 만드는 것을 시도하십시오.
하트 비트/RunService.Heartbeat심ulators 및 스크립트 연락처에 연결된 함수를 실행하기 위해 Class.RunService.Heartbeat``event.Talk 에 연결됩니다. 현재 설명은 충분히 일반적인 수준에서 잘못될 수 없습니다.RunService.Heartbeat에 연결된 함수의 수나 작업량을 줄입니다.

시뮬레이션

레이블설명성능 팁
물리 학습 소프트웨어 배포서버나 클라이언트가 부품과 같은 특정 인스턴스에 대한 권한이 있는지 여부를 결정합니다.물리 학 소유권을 배포합니다.
시뮬레이션/조립물리 엔진에 사용되는 연결된 개체(조합)의 트리를 업데이트합니다.생성 또는 파괴되는 관절의 수를 줄이십시오.
시뮬레이션/물리학SteppedTotal/물리학Stepped물리 시뮬레이션을 실행합니다.물리적으로 시뮬레이션된 바디의 수와 복잡성을 줄이십시오.
시뮬레이션/물리학SteppedTotal/물리학Stepped/SpacialFilter/filterStep네트워크 소유권에 따라 부품을 배치하고, 로컬 시뮬레이션에서 부품을 배치하는 방식으로 업데이트합니다. 섬은 독립적으로 시뮬레이션할 수 있는 부품의 그룹입니다.네트워크 소유권을 자주 설정하지 마십시오. 서로 멀리 떨어져 있는 부품 그룹을 유지하여 개별적으로 시뮬레이션할 수 있습니다.
시뮬레이션/물리학SteppedTotal/물리학Stepped/worldStep/stepContacts개체 간의 연락처를 업데이트합니다.한 번에 충돌하는 바디의 수를 줄이거나 간단한 충돌 상자를 사용하십시오. 큐브는 복잡한 메쉬보다 좋습니다.
시뮬레이션/물리학SteppedTotal/물리학Stepped/worldStep/stepWorld 또는 stepWorldThrottled커넥터, 부력 및 Humanoids 에 대한 물리 식을 해결합니다. 엔진이 과부하되어 모든 것을 실시간으로 시뮬레이션할 수 없으면 일부 단계가 제한되고 실시간 조합인 Humanoids 만 시뮬레이됩니다.다음 세 가지 단계에 따라 시간이 어디로 이동할지 결정합니다. stepContacts: 좁은 단계 충돌 검색 기하 테스트 solver step: 시간을 통합하고 충돌 및 다른 제약 사항을 업데이트 broadphaSE: 충돌 검색 시스템에서 조합 찾기 및 충돌 찾기 위치 업데이트: 충돌 찾기 및 좁은 단계 충돌 검색 기능
이동 중인 조립품 알림원시 모델이 잠을 잤는지 추적하는 데 도움이 됩니다.
시뮬레이션/물리학SteppedTotal/물리학Stepped/interpolateNetworkedAssemblies이 네트워크 쌍이 제어하지 않는 조립은 인터폴 됩니다.Interpolates assemblies not controlled by this network peer.이 피어에 부품 소유자를 설정하여 네트워크 대역을 줄이도록 하십시오. 이는 일반적으로 다른 곳에서 물리 작업을 더 많이 수행하도록 하는 경우가 많습니다.
시뮬레이션/핸들FallenParts작업 공간/FallenPartsDestroyHeight 아래에 떨어진 부품을 제거합니다.낮추거나 파괴 높이를 줄이거나 파괴하는 부품의 수를 줄입니다.
하트 비트/하트 비트 내/작업 공간/하트 비트 업데이트/시각적 잠자기NotifyMovingAssemblies의 두 번째 부분입니다.
하트 비트/RunService.Heartbeat심ulators 및 스크립트 연락처에 연결된 함수를 실행하기 위해 Class.RunService.Heartbeat``event.Talk 에 연결됩니다. 현재 설명은 충분히 일반적인 수준에서 잘못될 수 없습니다.Class.RunService.Heartbeat 에 연결된 함수의 수나 작업 부하를 줄이십시오.
월드 스텝/스텝 콘텍트물리 시뮬레이션 단계에서 많은 접촉을 한 번에 시작합니다.충돌하는 개체의 수를 줄이십시오.
솔브 배치물리 시뮬레이션이 개체의 이동 배치를 해결하는 데 도움이 됩니다.
메커니즘 인터플레이션InterpolateNetworkAssemblies에 도움이 됩니다.

UI

레이블설명성능 팁
렌더/미리렌더/업데이트입력사용자가 마지막 프레임 이후에 입력한 경우 모든 사용자 입력 관련 이벤트를 업데이트하고 발사합니다.사용자 입력과 관련된 이벤트가 발생할 때입니다. 입력을 받기 때문에 직접 작업을 하지 마십시오. 입력에 대한 최소 처리량을 고려하고 나중에 다른 스레드로 작업을 밀어 주십시오.
렌더링/미리 렌더링/트윈 서비스Class.TweenService를 사용하여 트위니드되는 개체를 업데이트하고 완료된 트위니드 콜백, 예를 들어 TweenSize 또는 TweenPosition 를 호출합니다.TweenService를 사용하여 트위니 되도록 개체 수를 줄이고 콜백이 가능한 한 적은 작업을 수행하도록 하세요.
렌더/미리렌더/UI 레이아웃 업데이트UI 요소의 위치 및 크기를 업데이트합니다.Class.UILayout처럼 동적으로 크기를 조정하거나 위치를 변경하는 UI 요소의 수를 줄이십시오.
하트 비트/트윈 서비스서버에서 TweenService로 개체를 업데이트합니다. 클라이언트에서는 이 작업이 미리 렌더링 단계에서 수행됩니다.Class.TweenService 에 의해 트위닝되는 개체의 수를 줄이십시오.