public void UpdateLod(List <int> activePassIds, MyLodStrategyPreprocessor preprocessor) { MyLodStrategyInfo lodStrategyInfo = StandardModel.GetLodStrategyInfo(); Vector3D cameraPos = MyRender11.Environment.Matrices.CameraPosition; Vector3D instancePos = m_transformStrategy.GetCoreTranslation(); m_lodStrategy.SmoothResolve(lodStrategyInfo, MyCommon.FrameCounter, MyCommon.LastFrameDelta(), cameraPos, instancePos, activePassIds, preprocessor); }
// dithered = 0 <- disables dithering public void SetDithered(bool isHologram, float dithered) { MyInstanceLodState state; float stateData; if (dithered == 0) { state = MyInstanceLodState.Solid; stateData = 0; } else if (isHologram) { state = MyInstanceLodState.Hologram; stateData = -dithered; } else { state = MyInstanceLodState.Dithered; stateData = dithered; } m_lodStrategy.SetExplicitLodState(StandardModel.GetLodStrategyInfo(), state, stateData); }
public void UpdateLodExplicit(List <int> activePassIds, int explicitLodNum) { MyLodStrategyInfo lodStrategyInfo = StandardModel.GetLodStrategyInfo(); m_lodStrategy.ResolveExplicit(lodStrategyInfo, MyCommon.FrameCounter, explicitLodNum, activePassIds); }