
using System;
using Irrlicht;
using Irrlicht.Video;
using Irrlicht.Core;
using Irrlicht.Scene;
namespace HelloWorld
{
// static IrrlichtDevice device = null;
class MyEventReceiver : IEventReceiver
{
public MyEventReceiver()
{
}
public bool OnEvent(Irrlicht.Event e)
{
bool Handled = true;
if( e.Type == EventType.KeyInput && !e.KeyPressedDown )
{
switch(e.Key)
{
case KeyCode.KEY_RETURN:
break;
case KeyCode.KEY_SPACE:
// do something else
break;
default:
Handled = false;
break;
}
}
else
Handled = false;
return Handled;
}
}
class rrr
{
[STAThread]
static void Main()
{
IrrlichtDevice device = new IrrlichtDevice(DriverType.DIRECT3D9, new Dimension2D(800, 600), 16, false, true, true);
MyEventReceiver Receiver = new MyEventReceiver();
device.EventReceiver = Receiver;
ITexture tex =device.VideoDriver.GetTexture(@"1.jpg");
Irrlicht.Scene.IAnimatedMesh mesh = device.SceneManager.GetMesh(@"1.x");
ICameraSceneNode cam = device.SceneManager.AddCameraSceneNodeFPS(null, 100, 100, -1);
cam.Position = new Vector3D(20,0,-50);
ISceneNode node = device.SceneManager.AddAnimatedMeshSceneNode(mesh, null, -1);
node.SetMaterialTexture(0, tex);
node.SetMaterialFlag(MaterialFlag.LIGHTING, false);
device.CursorControl.Visible = false;
while(device.Run())
{
if (device.WindowActive)
{
device.VideoDriver.BeginScene(true, true, new Color(0,100,100,100));
device.SceneManager.DrawAll();
device.VideoDriver.EndScene();
device.WindowCaption=EventType.LogText.ToString();
}
} // end drawing-loop
} // end main()
} // end class
} // end namespace