static void WriteHighlightConstants(ref MyHighlightDesc desc) { HighlightConstantsLayout constants = new HighlightConstantsLayout(); constants.Color = desc.Color.ToVector4(); if (desc.PulseTimeInSeconds > 0) { constants.Color.W *= (float)Math.Pow(Math.Cos(2.0 * Math.PI * MyCommon.TimerMs / desc.PulseTimeInSeconds / 1000), 2.0); } var mapping = MyMapping.MapDiscard(MyCommon.HighlightConstants); mapping.WriteAndPosition(ref constants); mapping.Unmap(); }
static void WriteHighlightConstants(ref MyHighlightDesc desc) { HighlightConstantsLayout constants = new HighlightConstantsLayout(); constants.Color = desc.Color.ToVector4(); if (desc.PulseTimeInFrames > 0) { constants.Color.W *= (float)Math.Pow((float)Math.Cos(2.0 * Math.PI * (float)MyRender11.GameplayFrameCounter / (float)desc.PulseTimeInFrames), 2.0); } var mapping = MyMapping.MapDiscard(MyCommon.HighlightConstants); mapping.WriteAndPosition(ref constants); mapping.Unmap(); }
private static void WriteHighlightConstants(ref MyHighlightDesc desc, ref float maxThickness) { maxThickness = Math.Max(desc.Thickness, maxThickness); HighlightConstantsLayout constants = new HighlightConstantsLayout(); constants.Color = desc.Color.ToVector4(); if (desc.PulseTimeInFrames > 0) constants.Color.W *= (float)Math.Pow((float)Math.Cos(2.0 * Math.PI * (float)MyRender11.GameplayFrameCounter / (float)desc.PulseTimeInFrames), 2.0); var mapping = MyMapping.MapDiscard(MyCommon.HighlightConstants); mapping.WriteAndPosition(ref constants); mapping.Unmap(); }