History: Mogre Basic Tutorial 1 Source
Source of version: 2 (current)
Copy to clipboard
{CODE(wrap="1", colors="c#")} using System;
using System.Collections.Generic;
using System.Windows.Forms;
using MogreFramework;
using Mogre;
namespace Tutorial01
{
static class Program
{
[STAThread]
static void Main()
{
try
{
OgreWindow win = new OgreWindow();
new SceneCreator(win);
win.Go();
}
catch (System.Runtime.InteropServices.SEHException)
{
if (OgreException.IsThrown)
MessageBox.Show(OgreException.LastException.FullDescription, "An Ogre exception has occurred!");
else
throw;
}
}
}
class SceneCreator
{
public SceneCreator(OgreWindow win)
{
win.SceneCreating += new OgreWindow.SceneEventHandler(SceneCreating);
}
void SceneCreating(OgreWindow win)
{
// Setting the ambient light
SceneManager mgr = win.SceneManager;
mgr.AmbientLight = new ColourValue(1, 1, 1);
// Adding Objects
Entity ent = mgr.CreateEntity("Robot", "robot.mesh");
SceneNode node = mgr.RootSceneNode.CreateChildSceneNode("RobotNode");
node.AttachObject(ent);
Entity ent2 = mgr.CreateEntity("Robot2", "robot.mesh");
SceneNode node2 = mgr.RootSceneNode.CreateChildSceneNode("RobotNode2", new Vector3(50, 0, 0));
node2.AttachObject(ent2);
// Translating Objects
node2.Position += new Vector3(10, 0, 10);
node.Position += new Vector3(25, 0, 0);
// Scaling Objects
node.Scale(.5f, 1, 2);
node2.Scale(1, 2, 1);
// Rotating Objects
Entity ent3 = mgr.CreateEntity("Robot3", "robot.mesh");
SceneNode node3 = mgr.RootSceneNode.CreateChildSceneNode("RobotNode3", new Vector3(100, 0, 0));
node3.AttachObject(ent3);
node.Pitch(new Degree(90));
node2.Yaw(new Degree(90));
node3.Roll(new Degree(90));
}
}
}
{CODE}