public override void InitState() { Console.WriteLine("Loading logo tex."); LogoTex = new StarEngine.Texture.VTex2D("Data\\2D\\Logo\\DarkArtLogo.png", LoadMethod.Single); PresTex = new VTex2D("Data\\2D\\Logo\\Presents.png", LoadMethod.Single); GameTex = new VTex2D("Data\\2D\\Logo\\ArenaLogo.png", LoadMethod.Single); Console.WriteLine("Loaded."); ms = StarSoundSys.Play2DFile("Data\\Music\\Logo\\LogoTheme1.wav"); VPen.SetProj(0, 0, StarApp.W, StarApp.H); bool AlphaUp() { LogoAlpha = LogoAlpha + 0.015f; if (LogoAlpha > 1.0f) { return(true); } return(false); } int waitStart = 0; void WaitInit() { waitStart = Environment.TickCount; } bool WaitABit() { if (Environment.TickCount > waitStart + 2000) { return(true); } return(false); } bool logoDone = false; bool AlphaDown() { LogoAlpha -= 0.01f; if (LogoAlpha < 0.0f) { logoDone = true; LogoAlpha = 0.0f; return(true); } return(false); } void TestDo() { } void DoPresent() { LogoAlpha = 0.0f; PresentLogo = true; } void DoGame() { LogoAlpha = 0.0f; GameLogo = true; } void Done() { ms.Stop(); ToMenu = true; } Logics.Flow(null, AlphaUp); Logics.Flow(WaitInit, WaitABit); Logics.Flow(null, AlphaDown, DoPresent); Logics.Flow(null, AlphaUp); Logics.Flow(WaitInit, WaitABit); Logics.Flow(null, AlphaDown, DoGame); Logics.Flow(null, AlphaUp); Logics.Flow(WaitInit, WaitABit); Logics.Flow(null, AlphaDown, Done); bool StateDone() { return(logoDone); } void NextState() { ms.Stop(); PresentLogo = true; } bool UnlessMusic() { return(ms.Playing); } Logics.When(StateDone, NextState, UnlessMusic); }
public VSound Play2D(bool loop = false) { return(StarSoundSys.Play2D(Src, loop)); }
public override void InitState() { MenuBG = new VTex2D("Data\\2D\\Backgrounds\\MainMenu\\menubg.jpg", LoadMethod.Single, false); Music = StarSoundSys.Play2DFile("Data\\Music\\Menu\\MainMenu\\MenuTheme1.mp3"); UI = new UI(); UI.Root = new ImageForm().Set(0, 0, StarEngine.App.StarApp.W, StarEngine.App.StarApp.H, "ImageForm").SetImage(MenuBG); UI.Root = new ButtonForm().Set(50, 100, 200, 40, "Test"); var test = UI.Root; test.Click = (b) => { Console.WriteLine("Yep!"); }; ppRen = new StarEngine.PostProcess.PostProcessRender(512, 512); Console.WriteLine("Creating 3D Scene graph."); scene3d = new SceneGraph3D(); ppRen.Scene = scene3d; Console.WriteLine("Importing mesh."); ent1 = Import.ImportNode("Data\\3D\\Logo\\Menu\\Rebound1.3ds"); Console.WriteLine("Set up."); var mat1 = new Material3D(); //Console.WriteLine("Loading texture."); mat1.TCol = new Tex2D("Data\\3D\\brick_2.png"); mat1.TNorm = new Tex2D("Data\\3D\\brick_2_NRM.png"); Console.WriteLine("Loaded."); var ge = ent1 as GraphEntity3D; ge.SetMat(mat1); cam1 = new GraphCam3D(); cam1.LocalPos = new OpenTK.Vector3(0, 80, 450); cam1.LookAt(ent1); light1 = new StarEngine.Lighting.GraphLight3D(); var l2 = new StarEngine.Lighting.GraphLight3D(); var l3 = new StarEngine.Lighting.GraphLight3D(); l3.LocalPos = new OpenTK.Vector3(300, 80, 450); l3.Diff = new OpenTK.Vector3(0, 1, 2); l2.LocalPos = new OpenTK.Vector3(5, 200, 500); l2.Diff = new OpenTK.Vector3(2, 2, 1); light1.LocalPos = new OpenTK.Vector3(0, 80, 350); // ent1.Rot(new OpenTK.Vector3(0, 45, 0), Space.Local); scene3d.Add(ent1); scene3d.Add(l2); scene3d.Add(l3); scene3d.Add(light1); scene3d.Add(cam1); light1.Diff = new OpenTK.Vector3(3, 3, 3); }
public VSoundSource(string p) { Src = StarSoundSys.LoadSound(p); StarSoundSys.SSL.Add(this); }