//---------------------------------------------------------------------------------------------------------------------------------------------------
//
// Copyright (C)2007 DarkWynter Studios. All rights reserved.
//
//---------------------------------------------------------------------------------------------------------------------------------------------------
// {Contact : darkwynter.com for licensing information
//---------------------------------------------------------------------------------------------------------------------------------------------------
namespace DarkWynter.Game.GameObjects
{
#region Using Statements
using System;
using System.Collections.Generic;
using Microsoft.Xna.Framework;
using Microsoft.Xna.Framework.Audio;
using Microsoft.Xna.Framework.Content;
using Microsoft.Xna.Framework.Graphics;
using Microsoft.Xna.Framework.Input;
using Microsoft.Xna.Framework.Storage;
using System.Xml;
using System.Diagnostics;
#endregion
using DarkWynter.Engine.ObjectLib;
using DarkWynter.Stream;
///
/// Represents a single object with physics being computed on the Gpu.
///
public class GpuObject
{
public Draw draw { get { return _draw; } set { _draw = value; } }
public Draw _draw;
///
/// GpuObject constructor.
///
public GpuObject(XmlNode objectNode, Vector3 startingLocation)
{
draw = new Draw(DarkWynter.Stream.Draw.DrawMethod.BasicGameObject_Draw, "BasicLightingShaderMain");
}
///
/// Override Load function.
///
/// Xml node containing this objects xml data.
/// ObjectLibrary this object belongs to.
/// True if loaded correctly.
public bool Load()
{
return true;
}
///
/// Override Update function
///
/// ObjectLibrary this object belongs to.
public void Update()
{
}
///
/// Override Draw function
///
public Draw Draw()
{
//// Lighting
//ShaderParameters.DrawFX.shininess.SetValue(7000.0f);
//// Calculate ObjectSpace(Rotation) and WorldSpace(Translation) Transformation Matrix
//draw.matrix = draw.initialTransform * Matrix.CreateScale(mass.scale) *
// Matrix.CreateFromQuaternion(mass.currentRotation) *
// Matrix.CreateTranslation(mass.currentPosition);
return draw;
}
}
}