예제 #1
0
 void InitSkyAndOceanNodes()
 {
     m_skyNode = (SkyNode)Scatterer.Instance.scaledSpaceCamera.gameObject.AddComponent(typeof(SkyNode));
     m_skyNode.setManager(this);
     m_skyNode.setCelestialBodyName(parentCelestialBody.name);
     m_skyNode.setParentScaledTransform(parentScaledTransform);
     m_skyNode.setParentLocalTransform(parentLocalTransform);
     m_skyNode.usesCloudIntegration = usesCloudIntegration;
     if (m_skyNode.loadFromConfigNode())
     {
         m_skyNode.Init();
         if (hasOcean && Scatterer.Instance.mainSettings.useOceanShaders && (HighLogic.LoadedScene != GameScenes.MAINMENU))
         {
             m_oceanNode = (OceanWhiteCaps)Scatterer.Instance.ReturnProperCamera(true, false).gameObject.AddComponent(typeof(OceanWhiteCaps));
             m_oceanNode.Init(this);
         }
     }
 }
예제 #2
0
파일: Manager.cs 프로젝트: zxzxn3/Scatterer
        public void Awake()
        {
            if (HighLogic.LoadedScene == GameScenes.MAINMENU)
            {
                GameObject _go = Core.GetMainMenuObject(parentCelestialBody.name);
                if (_go)
                {
                    MeshRenderer _mr = _go.GetComponent <MeshRenderer> ();
                    if (_mr)
                    {
                        var sctBodyTransform = ScaledSpace.Instance.transform.FindChild(parentCelestialBody.name);
                        m_radius = (_go.transform.localScale.x / sctBodyTransform.localScale.x) * parentCelestialBody.Radius;
                    }
                }
            }
            else
            {
                m_radius = parentCelestialBody.Radius;
            }

            m_skyNode = (SkyNode)Core.Instance.scaledSpaceCamera.gameObject.AddComponent(typeof(SkyNode));
            m_skyNode.setManager(this);
            m_skyNode.setCelestialBodyName(parentCelestialBody.name);
            m_skyNode.setParentScaledTransform(parentScaledTransform);
            m_skyNode.setParentLocalTransform(parentLocalTransform);

            m_skyNode.usesCloudIntegration = usesCloudIntegration;

            if (m_skyNode.loadFromConfigNode())
            {
                m_skyNode.Init();

                if (hasOcean && Core.Instance.useOceanShaders && (HighLogic.LoadedScene != GameScenes.MAINMENU))
                {
                    m_oceanNode = (OceanWhiteCaps)Core.Instance.farCamera.gameObject.AddComponent(typeof(OceanWhiteCaps));
                    m_oceanNode.setManager(this);

                    m_oceanNode.loadFromConfigNode();
                    m_oceanNode.Init();
                }
            }
        }