mirror of
https://github.com/DarthAffe/CUE.NET.git
synced 2026-11-10 20:46:24 +00:00
Added own color-type to have more control over and easier manipulation of collors
This commit is contained in:
1 parent
5c6dba769b
commit
381ec55349
29 files changed
+271
-93
No files matched your search
@@ -0,0 +1,37 @@
|
||||
using CUE.NET.Brushes;
|
||||
using CUE.NET.Effects;
|
||||
using CUE.NET.Gradients;
|
||||
|
||||
namespace SimpleDevTest
|
||||
{
|
||||
public class MoveRainbowEffect : AbstractBrushEffect<IGradientBrush>
|
||||
{
|
||||
#region Properties & Fields
|
||||
|
||||
public float DegreePerSecond { get; set; } = 30f;
|
||||
|
||||
#endregion
|
||||
|
||||
#region Constructors
|
||||
|
||||
#endregion
|
||||
|
||||
#region Methods
|
||||
|
||||
public override void Update(float deltaTime)
|
||||
{
|
||||
float value = DegreePerSecond * deltaTime;
|
||||
|
||||
//DarthAffe 11.09.2016: Only to test! This will overflow if run for a longer time!!!
|
||||
((RainbowGradient)Brush.Gradient).StartHue += value;
|
||||
((RainbowGradient)Brush.Gradient).EndHue += value;
|
||||
}
|
||||
|
||||
public override bool CanBeAppliedTo(IBrush target)
|
||||
{
|
||||
return (target as IGradientBrush)?.Gradient is RainbowGradient;
|
||||
}
|
||||
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
@@ -39,17 +39,15 @@ namespace SimpleDevTest
|
||||
CueSDK.UpdateMode = UpdateMode.Continuous;
|
||||
|
||||
IBrush rainbowBrush = new LinearGradientBrush(new RainbowGradient());
|
||||
rainbowBrush.AddEffect(new FlashEffect());
|
||||
rainbowBrush.AddEffect(new FlashEffect { Attack = 5f, Sustain = 1f, Decay = 0, Release = 5f, Interval = 1f });
|
||||
rainbowBrush.AddEffect(new MoveRainbowEffect());
|
||||
rainbowBrush.AddEffect(new RemoveRedEffect());
|
||||
|
||||
AddTestBrush(CueSDK.KeyboardSDK, rainbowBrush);
|
||||
AddTestBrush(CueSDK.KeyboardSDK, rainbowBrush);
|
||||
AddTestBrush(CueSDK.KeyboardSDK, rainbowBrush);
|
||||
AddTestBrush(CueSDK.MouseSDK, rainbowBrush);
|
||||
AddTestBrush(CueSDK.HeadsetSDK, rainbowBrush);
|
||||
AddTestBrush(CueSDK.MousematSDK, rainbowBrush);
|
||||
|
||||
Wait(10);
|
||||
|
||||
|
||||
//// Get connected keyboard or throw exception if there is no light controllable keyboard connected
|
||||
//CorsairKeyboard keyboard = CueSDK.KeyboardSDK;
|
||||
//if (keyboard == null)
|
||||
|
||||
@@ -0,0 +1,14 @@
|
||||
using CUE.NET.Devices.Generic;
|
||||
using CUE.NET.Effects;
|
||||
|
||||
namespace SimpleDevTest
|
||||
{
|
||||
public class RemoveRedEffect : AbstractBrushEffect
|
||||
{
|
||||
public override void Update(float deltaTime)
|
||||
{
|
||||
foreach (CorsairColor colors in Brush.RenderedTargets.Values)
|
||||
colors.R = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -47,8 +47,10 @@
|
||||
<Reference Include="System.Xml" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="MoveRainbowEffect.cs" />
|
||||
<Compile Include="Program.cs" />
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
<Compile Include="RemoveRedEffect.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="App.config">
|
||||
|
||||
Reference in new issue
Block a user