Example #1
0
        public void BeforeRender(MyRenderSettings writeTo, MyTimeSpan? currentDrawTime)
        {
            using (m_lock.Acquire())
            {
                if (currentDrawTime.HasValue)
                    MyRenderProxy.CurrentDrawTime = currentDrawTime.Value;

                writeTo.Synchronize(m_inputRenderSettings);
            }
        }
Example #2
0
        public void AfterUpdate(MyRenderSettings inputSettings, MyTimeSpan? updateTimestamp)
        {
            using (m_lock.Acquire())
            {
                if (updateTimestamp.HasValue)
                    m_inputRenderMessages.CurrentUpdateFrame.UpdateTimestamp = updateTimestamp.Value;

                m_inputRenderMessages.CommitUpdateFrame();
                m_inputRenderSettings.Synchronize(inputSettings); // TODO: OP! Better settings synchronization
                m_inputBillboards.CommitWrite();
                m_inputBillboards.Write.Clear();
                m_inputTriangleBillboards.CommitWrite();
                m_inputTriangleBillboards.Write.Clear();
            }
        }
 static void Init()
 {
     MyRenderSettings renderSettings = (MyRenderSettings)EditorWindow.GetWindow(typeof(MyRenderSettings));
 }
Example #4
0
 public static void SwitchRenderSettings(MyRenderSettings settings)
 {
     var message = MessagePool.Get<MyRenderMessageSwitchRenderSettings>(MyRenderMessageEnum.SwitchRenderSettings);
     message.SettingsOld = settings;
     m_settingsDirty = false;
     EnqueueMessage(message);
 }