/// <summary> /// Allows the game to run logic such as updating the world, /// checking for collisions, gathering input, and playing audio. /// </summary> /// <param name="gameTime">Provides a snapshot of timing values.</param> protected override void Update(GameTime gameTime) { if (sProgrammStatus == eProgrammStatus.Anleitung_anzeigen) { tastatur.syncTastaturEingabeZeile(); if (tastatur.fertig()) { sProgrammStatus = eProgrammStatus.Dateinamen_einlesen; tastatur.resetEingabe(); } } if (sProgrammStatus == eProgrammStatus.Dateinamen_einlesen || sProgrammStatus == eProgrammStatus.Dateinamen_einlesen_falsch) { tastatur.syncTastaturEingabeZeile(); } if (sProgrammStatus == eProgrammStatus.Dauerschleife) { // Mausklick + Bewegung: Rotiert. mState = Mouse.GetState(); yRot -= altMState.X - mState.X; // Mausrad-Zoom int dif = altMState.ScrollWheelValue - mState.ScrollWheelValue; if (dif != 0) { zoomfaktor *= (float)Math.Pow(0.5, 120f / dif); } //Window.Title = Convert.ToString(szeneSphereGLOB.Center)+" // "+Convert.ToString(szeneSphereGLOB.Radius) ; //"zoomf = " + Convert.ToString(((float)zoomfaktor)); altMState = mState; } base.Update(gameTime); }
/// <summary> /// This is called when the game should draw itself. /// </summary> /// <param name="gameTime">Provides a snapshot of timing values.</param> protected override void Draw(GameTime gameTime) { if (sProgrammStatus == eProgrammStatus.Anleitung_anzeigen) { // SaveState ist wichtig, damit es nicht das 3D-Rendern zerfickt. spriteBatch.Begin(SpriteBlendMode.None, SpriteSortMode.Immediate, SaveStateMode.SaveState); spriteBatch.Draw(Hinweisbildschirm, new Rectangle(0, 0, 800, 600), Color.White); spriteBatch.End(); } if (sProgrammStatus == eProgrammStatus.Dateinamen_einlesen || sProgrammStatus == eProgrammStatus.Dateinamen_einlesen_falsch) { if (tastatur.fertig()) { // Dateinamen prüfen if (File.Exists(".\\..\\Data\\" + tastatur.getEingabe() + ".xnb")) { LadeModell(tastatur.getEingabe()); SetupRenderer(); //Window.Title = Convert.ToString(modOffset); sProgrammStatus = eProgrammStatus.Dauerschleife; } else { sProgrammStatus = eProgrammStatus.Dateinamen_einlesen_falsch; tastatur.resetEingabe(); } } else { if (sProgrammStatus == eProgrammStatus.Dateinamen_einlesen) { GraphicsDevice.Clear(Color.LightBlue); } else { GraphicsDevice.Clear(Color.Red); } spriteBatch.Begin(SpriteBlendMode.AlphaBlend, SpriteSortMode.Immediate, SaveStateMode.SaveState); spriteBatch.DrawString(eingabeFont, "Dateinamen (ohne '.xnb') eingeben:", new Vector2(0, 0), Color.Black); spriteBatch.DrawString(eingabeFont, ">" + tastatur.getEingabe(), new Vector2(0, 26), Color.Black); spriteBatch.End(); //Window.Title = Convert.ToString(resetCount); } } if (sProgrammStatus == eProgrammStatus.Dauerschleife) { GraphicsDevice.Clear(Color.White); SetupRenderer(); DrawModel(geladenesMod.isKw); } base.Draw(gameTime); }
/// <summary> /// This is called when the game should draw itself. /// </summary> /// <param name="gameTime">Provides a snapshot of timing values.</param> protected override void Draw(GameTime gameTime) { if (sProgrammStatus == eProgrammStatus.Anleitung_anzeigen) { // SaveState ist wichtig, damit es nicht das 3D-Rendern zerfickt. spriteBatch.Begin(SpriteBlendMode.None, SpriteSortMode.Immediate, SaveStateMode.SaveState); spriteBatch.Draw(Hinweisbildschirm, new Rectangle(0, 0, 800, 600), Color.White); spriteBatch.End(); } if (sProgrammStatus == eProgrammStatus.Dateinamen_einlesen || sProgrammStatus == eProgrammStatus.Dateinamen_einlesen_falsch) { if (tastatur.fertig()) { // Dateinamen prüfen if (File.Exists(".\\..\\Data\\" + tastatur.getEingabe() + ".xnb")) { LadeModell(tastatur.getEingabe()); SetupRenderer(); //Window.Title = Convert.ToString(modOffset); sProgrammStatus = eProgrammStatus.Dauerschleife;} else { sProgrammStatus = eProgrammStatus.Dateinamen_einlesen_falsch; tastatur.resetEingabe(); } } else { if (sProgrammStatus == eProgrammStatus.Dateinamen_einlesen) GraphicsDevice.Clear(Color.LightBlue); else GraphicsDevice.Clear(Color.Red); spriteBatch.Begin(SpriteBlendMode.AlphaBlend, SpriteSortMode.Immediate, SaveStateMode.SaveState); spriteBatch.DrawString(eingabeFont, "Dateinamen (ohne '.xnb') eingeben:", new Vector2(0, 0), Color.Black); spriteBatch.DrawString(eingabeFont, ">" + tastatur.getEingabe(), new Vector2(0, 26), Color.Black); spriteBatch.End(); //Window.Title = Convert.ToString(resetCount); } } if (sProgrammStatus == eProgrammStatus.Dauerschleife) { GraphicsDevice.Clear(Color.White); SetupRenderer(); DrawModel(geladenesMod.isKw); } base.Draw(gameTime); }
/// <summary> /// Allows the game to run logic such as updating the world, /// checking for collisions, gathering input, and playing audio. /// </summary> /// <param name="gameTime">Provides a snapshot of timing values.</param> protected override void Update(GameTime gameTime) { if (sProgrammStatus == eProgrammStatus.Anleitung_anzeigen) { tastatur.syncTastaturEingabeZeile(); if (tastatur.fertig()) { sProgrammStatus = eProgrammStatus.Dateinamen_einlesen; tastatur.resetEingabe(); } } if (sProgrammStatus==eProgrammStatus.Dateinamen_einlesen || sProgrammStatus==eProgrammStatus.Dateinamen_einlesen_falsch) tastatur.syncTastaturEingabeZeile(); if (sProgrammStatus == eProgrammStatus.Dauerschleife) { // Mausklick + Bewegung: Rotiert. mState = Mouse.GetState(); yRot -= altMState.X - mState.X; // Mausrad-Zoom int dif = altMState.ScrollWheelValue - mState.ScrollWheelValue; if (dif != 0) zoomfaktor *= (float) Math.Pow(0.5, 120f / dif); //Window.Title = Convert.ToString(szeneSphereGLOB.Center)+" // "+Convert.ToString(szeneSphereGLOB.Radius) ; //"zoomf = " + Convert.ToString(((float)zoomfaktor)); altMState = mState; } base.Update(gameTime); }