Fixed some signatures and added all methods to the INativeEffectParameter interface.

- Implemented some of the Get methods in the EffectParameterGL3
This commit is contained in:
SND\AstrorEnales_cp 2012-01-16 15:03:28 +00:00
parent b6bd56bab6
commit 1441ae2704
26 changed files with 903 additions and 207 deletions

View File

@ -4,6 +4,7 @@ using System.Collections.Generic;
using System.Linq; using System.Linq;
using System.Text; using System.Text;
using ANX.Framework.NonXNA; using ANX.Framework.NonXNA;
using System.Runtime.InteropServices;
#endregion // Using Statements #endregion // Using Statements
@ -360,7 +361,7 @@ namespace ANX.Framework.Graphics
} }
} }
protected override void Dispose(Boolean disposeManaged) protected override void Dispose([MarshalAs(UnmanagedType.U1)] bool disposeManaged)
{ {
base.Dispose(disposeManaged); base.Dispose(disposeManaged);
} }

View File

@ -1,6 +1,7 @@
#region Using Statements #region Using Statements
using System; using System;
using ANX.Framework.NonXNA; using ANX.Framework.NonXNA;
using System.Runtime.InteropServices;
#endregion // Using Statements #endregion // Using Statements
@ -447,7 +448,7 @@ namespace ANX.Framework.Graphics
} }
} }
protected override void Dispose(Boolean disposeManaged) protected override void Dispose([MarshalAs(UnmanagedType.U1)] bool disposeManaged)
{ {
base.Dispose(disposeManaged); base.Dispose(disposeManaged);
} }

View File

@ -5,6 +5,7 @@ using System.Linq;
using System.Text; using System.Text;
using ANX.Framework.NonXNA; using ANX.Framework.NonXNA;
using System.IO; using System.IO;
using System.Runtime.InteropServices;
#endregion // Using Statements #endregion // Using Statements
@ -169,7 +170,7 @@ namespace ANX.Framework.Graphics
} }
} }
protected override void Dispose(Boolean disposeManaged) protected override void Dispose([MarshalAs(UnmanagedType.U1)] bool disposeManaged)
{ {
throw new NotImplementedException(); throw new NotImplementedException();
} }

View File

@ -4,6 +4,7 @@ using System.Collections.Generic;
using System.Linq; using System.Linq;
using System.Text; using System.Text;
using ANX.Framework.NonXNA; using ANX.Framework.NonXNA;
using System.Runtime.InteropServices;
#endregion // Using Statements #endregion // Using Statements
@ -57,8 +58,9 @@ using ANX.Framework.NonXNA;
namespace ANX.Framework.Graphics namespace ANX.Framework.Graphics
{ {
public sealed class EffectParameter public sealed class EffectParameter
{ {
private INativeEffectParameter nativeParameter; #region Public
private INativeEffectParameter nativeParameter;
public INativeEffectParameter NativeParameter public INativeEffectParameter NativeParameter
{ {
@ -70,119 +72,194 @@ namespace ANX.Framework.Graphics
{ {
this.nativeParameter = value; this.nativeParameter = value;
} }
} }
public EffectAnnotationCollection Annotations
{
get
{
throw new NotImplementedException();
}
}
public bool GetValueBoolean() public int ColumnCount
{ {
throw new NotImplementedException(); get
{
throw new NotImplementedException();
}
}
public EffectParameterCollection Elements
{
get
{
throw new NotImplementedException();
}
}
public string Name
{
get
{
return this.NativeParameter.Name;
}
}
public EffectParameterClass ParameterClass
{
get
{
throw new NotImplementedException();
}
}
public EffectParameterType ParameterType
{
get
{
throw new NotImplementedException();
}
}
public int RowCount
{
get
{
throw new NotImplementedException();
}
}
public string Semantic
{
get
{
throw new NotImplementedException();
}
}
public EffectParameterCollection StructureMembers
{
get
{
throw new NotImplementedException();
}
}
#endregion
#region GetValue
public bool GetValueBoolean()
{
return nativeParameter.GetValueBoolean();
} }
public bool[] GetValueBooleanArray(int count) public bool[] GetValueBooleanArray(int count)
{ {
throw new NotImplementedException(); return nativeParameter.GetValueBooleanArray(count);
} }
public int GetValueInt32() public int GetValueInt32()
{ {
throw new NotImplementedException(); return nativeParameter.GetValueInt32();
} }
public Int32[] GetValueInt32Array(int count) public Int32[] GetValueInt32Array(int count)
{ {
throw new NotImplementedException(); return nativeParameter.GetValueInt32Array(count);
} }
public Matrix GetValueMatrix() public Matrix GetValueMatrix()
{ {
throw new NotImplementedException(); return nativeParameter.GetValueMatrix();
} }
public Matrix[] GetValueMatrixArray(int count) public Matrix[] GetValueMatrixArray(int count)
{ {
throw new NotImplementedException(); return nativeParameter.GetValueMatrixArray(count);
} }
public Matrix GetValueMatrixTranspose() public Matrix GetValueMatrixTranspose()
{ {
throw new NotImplementedException(); return nativeParameter.GetValueMatrixTranspose();
} }
public Matrix[] GetValueMatrixTransposeArray(int count) public Matrix[] GetValueMatrixTransposeArray(int count)
{ {
throw new NotImplementedException(); return nativeParameter.GetValueMatrixTransposeArray(count);
} }
public Quaternion GetValueQuaternion() public Quaternion GetValueQuaternion()
{ {
throw new NotImplementedException(); return nativeParameter.GetValueQuaternion();
} }
public Quaternion[] GetValueQuaternionArray(int count) public Quaternion[] GetValueQuaternionArray(int count)
{ {
throw new NotImplementedException(); return nativeParameter.GetValueQuaternionArray(count);
} }
public float GetValueSingle() public float GetValueSingle()
{ {
throw new NotImplementedException(); return nativeParameter.GetValueSingle();
} }
public float[] GetValueSingleArray(int count) public float[] GetValueSingleArray(int count)
{ {
throw new NotImplementedException(); return nativeParameter.GetValueSingleArray(count);
} }
public string GetValueString() public string GetValueString()
{ {
throw new NotImplementedException(); return nativeParameter.GetValueString();
} }
public Texture2D GetValueTexture2D() public Texture2D GetValueTexture2D()
{ {
throw new NotImplementedException(); return nativeParameter.GetValueTexture2D();
} }
public Texture3D GetValueTexture3D() public Texture3D GetValueTexture3D()
{ {
throw new NotImplementedException(); return nativeParameter.GetValueTexture3D();
} }
public TextureCube GetValueTextureCube() public TextureCube GetValueTextureCube()
{ {
throw new NotImplementedException(); return nativeParameter.GetValueTextureCube();
} }
public Vector2 GetValueVector2() public Vector2 GetValueVector2()
{ {
throw new NotImplementedException(); return nativeParameter.GetValueVector2();
} }
public Vector2[] GetValueVector2Array(int count) public Vector2[] GetValueVector2Array(int count)
{ {
throw new NotImplementedException(); return nativeParameter.GetValueVector2Array(count);
} }
public Vector3 GetValueVector3() public Vector3 GetValueVector3()
{ {
throw new NotImplementedException(); return nativeParameter.GetValueVector3();
} }
public Vector3[] GetValueVector3Array(int count) public Vector3[] GetValueVector3Array(int count)
{ {
throw new NotImplementedException(); return nativeParameter.GetValueVector3Array(count);
} }
public Vector4 GetValueVector4() public Vector4 GetValueVector4()
{ {
throw new NotImplementedException(); return nativeParameter.GetValueVector4();
} }
public Vector4[] GetValueVector4Array(int count) public Vector4[] GetValueVector4Array(int count)
{ {
throw new NotImplementedException(); return nativeParameter.GetValueVector4Array(count);
} }
#endregion
public void SetValue(bool value) #region SetValue
public void SetValue([MarshalAs(UnmanagedType.U1)] bool value)
{ {
nativeParameter.SetValue(value); nativeParameter.SetValue(value);
} }
@ -203,13 +280,13 @@ namespace ANX.Framework.Graphics
} }
public void SetValue(Matrix value) public void SetValue(Matrix value)
{ {
nativeParameter.SetValue(value); nativeParameter.SetValue(value, false);
} }
public void SetValue(Matrix[] value) public void SetValue(Matrix[] value)
{ {
nativeParameter.SetValue(value); nativeParameter.SetValue(value, false);
} }
public void SetValue(Quaternion value) public void SetValue(Quaternion value)
@ -233,8 +310,8 @@ namespace ANX.Framework.Graphics
} }
public void SetValue(string value) public void SetValue(string value)
{ {
throw new NotImplementedException(); nativeParameter.SetValue(value);
} }
public void SetValue(Texture value) public void SetValue(Texture value)
@ -273,85 +350,14 @@ namespace ANX.Framework.Graphics
} }
public void SetValueTranspose(Matrix value) public void SetValueTranspose(Matrix value)
{ {
throw new NotImplementedException(); nativeParameter.SetValue(value, true);
} }
public void SetValueTranspose(Matrix[] value) public void SetValueTranspose(Matrix[] value)
{ {
throw new NotImplementedException(); nativeParameter.SetValue(value, true);
} }
#endregion
public EffectAnnotationCollection Annotations
{
get
{
throw new NotImplementedException();
}
}
public int ColumnCount
{
get
{
throw new NotImplementedException();
}
}
public EffectParameterCollection Elements
{
get
{
throw new NotImplementedException();
}
}
public string Name
{
get
{
return this.NativeParameter.Name;
}
}
public EffectParameterClass ParameterClass
{
get
{
throw new NotImplementedException();
}
}
public EffectParameterType ParameterType
{
get
{
throw new NotImplementedException();
}
}
public int RowCount
{
get
{
throw new NotImplementedException();
}
}
public string Semantic
{
get
{
throw new NotImplementedException();
}
}
public EffectParameterCollection StructureMembers
{
get
{
throw new NotImplementedException();
}
}
} }
} }

View File

@ -367,7 +367,7 @@ namespace ANX.Framework.Graphics
//TODO: more to dispose? //TODO: more to dispose?
} }
protected virtual void Dispose(Boolean disposeManaged) protected virtual void Dispose([MarshalAs(UnmanagedType.U1)] bool disposeManaged)
{ {
//TODO: implement //TODO: implement
} }

View File

@ -1,6 +1,7 @@
#region Using Statements #region Using Statements
using System; using System;
using ANX.Framework.NonXNA; using ANX.Framework.NonXNA;
using System.Runtime.InteropServices;
#endregion // Using Statements #endregion // Using Statements
@ -107,7 +108,7 @@ namespace ANX.Framework.Graphics
} }
} }
protected virtual void Dispose(Boolean disposeManaged) protected virtual void Dispose([MarshalAs(UnmanagedType.U1)] bool disposeManaged)
{ {
throw new NotImplementedException(); throw new NotImplementedException();
} }

View File

@ -4,6 +4,7 @@ using System.Collections.Generic;
using System.Linq; using System.Linq;
using System.Text; using System.Text;
using ANX.Framework.NonXNA; using ANX.Framework.NonXNA;
using System.Runtime.InteropServices;
#endregion // Using Statements #endregion // Using Statements
@ -218,7 +219,7 @@ namespace ANX.Framework.Graphics
} }
} }
protected override void Dispose(Boolean disposeManaged) protected override void Dispose([MarshalAs(UnmanagedType.U1)] bool disposeManaged)
{ {
throw new NotImplementedException(); throw new NotImplementedException();
} }

View File

@ -1,5 +1,6 @@
#region Using Statements #region Using Statements
using System; using System;
using System.Runtime.InteropServices;
#endregion // Using Statements #endregion // Using Statements
@ -96,7 +97,7 @@ namespace ANX.Framework.Graphics
throw new NotImplementedException(); throw new NotImplementedException();
} }
protected override void Dispose(Boolean disposeManaged) protected override void Dispose([MarshalAs(UnmanagedType.U1)] bool disposeManaged)
{ {
throw new NotImplementedException(); throw new NotImplementedException();
} }

View File

@ -1,6 +1,7 @@
#region Using Statements #region Using Statements
using System; using System;
using ANX.Framework.NonXNA; using ANX.Framework.NonXNA;
using System.Runtime.InteropServices;
#endregion // Using Statements #endregion // Using Statements
@ -229,7 +230,7 @@ namespace ANX.Framework.Graphics
} }
} }
protected override void Dispose(Boolean disposeManaged) protected override void Dispose([MarshalAs(UnmanagedType.U1)] bool disposeManaged)
{ {
base.Dispose(disposeManaged); base.Dispose(disposeManaged);
} }

View File

@ -6,6 +6,7 @@ using System.Text;
using ANX.Framework.NonXNA; using ANX.Framework.NonXNA;
using ANX.Framework.Graphics; using ANX.Framework.Graphics;
using ANX.Framework.NonXNA.RenderSystem; using ANX.Framework.NonXNA.RenderSystem;
using System.Runtime.InteropServices;
#endregion // Using Statements #endregion // Using Statements
@ -113,7 +114,7 @@ namespace ANX.Framework.Graphics
#endregion // Constructors #endregion // Constructors
protected virtual void Dispose(Boolean disposeManaged) protected virtual void Dispose([MarshalAs(UnmanagedType.U1)] bool disposeManaged)
{ {
throw new NotImplementedException(); throw new NotImplementedException();
} }

View File

@ -5,6 +5,7 @@ using System.Linq;
using System.Text; using System.Text;
using ANX.Framework.NonXNA; using ANX.Framework.NonXNA;
using ANX.Framework.Graphics; using ANX.Framework.Graphics;
using System.Runtime.InteropServices;
#endregion // Using Statements #endregion // Using Statements
@ -73,7 +74,7 @@ namespace ANX.Framework.Graphics
throw new NotImplementedException(); throw new NotImplementedException();
} }
protected virtual void Dispose(Boolean disposeManaged) protected virtual void Dispose([MarshalAs(UnmanagedType.U1)] bool disposeManaged)
{ {
throw new NotImplementedException(); throw new NotImplementedException();
} }

View File

@ -1,6 +1,7 @@
#region Using Statements #region Using Statements
using System; using System;
using ANX.Framework.NonXNA; using ANX.Framework.NonXNA;
using System.Runtime.InteropServices;
#endregion // Using Statements #endregion // Using Statements
@ -256,7 +257,7 @@ namespace ANX.Framework.Graphics
} }
} }
protected override void Dispose(Boolean disposeManaged) protected override void Dispose([MarshalAs(UnmanagedType.U1)] bool disposeManaged)
{ {
base.Dispose(disposeManaged); base.Dispose(disposeManaged);
} }

View File

@ -3,6 +3,7 @@ using System;
using System.IO; using System.IO;
using ANX.Framework.NonXNA.RenderSystem; using ANX.Framework.NonXNA.RenderSystem;
using ANX.Framework.NonXNA; using ANX.Framework.NonXNA;
using System.Runtime.InteropServices;
#endregion // Using Statements #endregion // Using Statements
@ -148,7 +149,7 @@ namespace ANX.Framework.Graphics
base.Dispose(true); base.Dispose(true);
} }
protected override void Dispose(Boolean disposeManaged) protected override void Dispose([MarshalAs(UnmanagedType.U1)] bool disposeManaged)
{ {
base.Dispose(disposeManaged); base.Dispose(disposeManaged);
} }

View File

@ -1,5 +1,6 @@
#region Using Statements #region Using Statements
using System; using System;
using System.Runtime.InteropServices;
#endregion // Using Statements #endregion // Using Statements
@ -95,7 +96,7 @@ namespace ANX.Framework.Graphics
throw new NotImplementedException(); throw new NotImplementedException();
} }
protected override void Dispose(Boolean disposeManaged) protected override void Dispose([MarshalAs(UnmanagedType.U1)] bool disposeManaged)
{ {
throw new NotImplementedException(); throw new NotImplementedException();
} }

View File

@ -1,5 +1,6 @@
#region Using Statements #region Using Statements
using System; using System;
using System.Runtime.InteropServices;
#endregion // Using Statements #endregion // Using Statements
@ -95,7 +96,7 @@ namespace ANX.Framework.Graphics
throw new NotImplementedException(); throw new NotImplementedException();
} }
protected override void Dispose(Boolean disposeManaged) protected override void Dispose([MarshalAs(UnmanagedType.U1)] bool disposeManaged)
{ {
throw new NotImplementedException(); throw new NotImplementedException();
} }

View File

@ -4,6 +4,7 @@ using System.Collections.Generic;
using System.Linq; using System.Linq;
using System.Text; using System.Text;
using ANX.Framework.NonXNA; using ANX.Framework.NonXNA;
using System.Runtime.InteropServices;
#endregion // Using Statements #endregion // Using Statements
@ -219,7 +220,7 @@ namespace ANX.Framework.Graphics
} }
} }
protected override void Dispose(Boolean disposeManaged) protected override void Dispose([MarshalAs(UnmanagedType.U1)] bool disposeManaged)
{ {
throw new NotImplementedException(); throw new NotImplementedException();
} }

View File

@ -1,5 +1,6 @@
#region Using Statements #region Using Statements
using System; using System;
using System.Runtime.InteropServices;
#endregion // Using Statements #endregion // Using Statements
@ -99,7 +100,7 @@ namespace ANX.Framework.Graphics
} }
} }
protected override void Dispose(Boolean disposeManaged) protected override void Dispose([MarshalAs(UnmanagedType.U1)] bool disposeManaged)
{ {
throw new NotImplementedException(); throw new NotImplementedException();
} }

View File

@ -82,6 +82,16 @@ namespace ANX.Framework.Net
{ {
} }
public float ReadSingle()
{
return ReadSingle();
}
public double ReadDouble()
{
return ReadDouble();
}
public Vector2 ReadVector2() public Vector2 ReadVector2()
{ {
return new Vector2 return new Vector2

View File

@ -82,6 +82,16 @@ namespace ANX.Framework.Net
{ {
} }
public void Write(float value)
{
Write(value);
}
public void Write(double value)
{
Write(value);
}
public void Write(Vector2 value) public void Write(Vector2 value)
{ {
Write(value.X); Write(value.X);

View File

@ -57,7 +57,54 @@ namespace ANX.Framework.NonXNA
{ {
string Name { get; } string Name { get; }
void SetValue(bool value); #region GetValue
bool GetValueBoolean();
bool[] GetValueBooleanArray(int count);
int GetValueInt32();
int[] GetValueInt32Array(int count);
Matrix GetValueMatrix();
Matrix[] GetValueMatrixArray(int count);
Matrix GetValueMatrixTranspose();
Matrix[] GetValueMatrixTransposeArray(int count);
Quaternion GetValueQuaternion();
Quaternion[] GetValueQuaternionArray(int count);
float GetValueSingle();
float[] GetValueSingleArray(int count);
string GetValueString();
Texture2D GetValueTexture2D();
Texture3D GetValueTexture3D();
TextureCube GetValueTextureCube();
Vector2 GetValueVector2();
Vector2[] GetValueVector2Array(int count);
Vector3 GetValueVector3();
Vector3[] GetValueVector3Array(int count);
Vector4 GetValueVector4();
Vector4[] GetValueVector4Array(int count);
#endregion
#region SetValue
void SetValue(bool value);
void SetValue(bool[] value); void SetValue(bool[] value);
@ -65,9 +112,9 @@ namespace ANX.Framework.NonXNA
void SetValue(int[] value); void SetValue(int[] value);
void SetValue(Matrix value); void SetValue(Matrix value, bool transpose);
void SetValue(Matrix[] value); void SetValue(Matrix[] value, bool transpose);
void SetValue(Quaternion value); void SetValue(Quaternion value);
@ -87,8 +134,11 @@ namespace ANX.Framework.NonXNA
void SetValue(Vector4 value); void SetValue(Vector4 value);
void SetValue(Vector4[] value); void SetValue(Vector4[] value);
void SetValue(string value);
void SetValue(Texture value); void SetValue(Texture value);
} #endregion
}
} }

View File

@ -69,6 +69,11 @@ namespace ANX.Framework.Storage
baseDirectory.Create(); //fails silently if directory exists baseDirectory.Create(); //fails silently if directory exists
} }
~StorageContainer()
{
Dispose();
}
/// <summary> /// <summary>
/// Returns the full path for the given relative path, and makes /// Returns the full path for the given relative path, and makes
/// some sanity checks. /// some sanity checks.
@ -116,6 +121,11 @@ namespace ANX.Framework.Storage
return File.Exists(GetTestFullPath(file)); return File.Exists(GetTestFullPath(file));
} }
public string[] GetDirectoryNames()
{
return GetDirectoryNames("*");
}
public string[] GetDirectoryNames(string searchPattern = "*") public string[] GetDirectoryNames(string searchPattern = "*")
{ {
List<string> dirs = new List<string>(); List<string> dirs = new List<string>();
@ -127,6 +137,11 @@ namespace ANX.Framework.Storage
return dirs.ToArray(); return dirs.ToArray();
} }
public string[] GetFileNames()
{
return GetFileNames("*");
}
public string[] GetFileNames(string searchPattern = "*") public string[] GetFileNames(string searchPattern = "*")
{ {
List<string> files = new List<string>(); List<string> files = new List<string>();
@ -138,7 +153,18 @@ namespace ANX.Framework.Storage
return files.ToArray(); return files.ToArray();
} }
public Stream OpenFile(string file, FileMode fileMode, FileAccess fileAccess = FileAccess.ReadWrite, FileShare fileShare = FileShare.None) public Stream OpenFile(string file, FileMode fileMode)
{
return OpenFile(file, fileMode, FileAccess.ReadWrite, FileShare.None);
}
public Stream OpenFile(string file, FileMode fileMode, FileAccess fileAccess)
{
return OpenFile(file, fileMode, fileAccess, FileShare.None);
}
public Stream OpenFile(string file, FileMode fileMode,
FileAccess fileAccess = FileAccess.ReadWrite, FileShare fileShare = FileShare.None)
{ {
return File.Open(GetTestFullPath(file), fileMode, fileAccess, fileShare); return File.Open(GetTestFullPath(file), fileMode, fileAccess, fileShare);
} }

View File

@ -95,14 +95,16 @@ namespace ANX.Framework.Windows.DX10
nativeEffectVariable.AsScalar().Set(value); nativeEffectVariable.AsScalar().Set(value);
} }
public void SetValue(Matrix value) public void SetValue(Matrix value, bool transpose)
{ {
// TODO: handle transpose!
SharpDX.Matrix m = new SharpDX.Matrix(value.M11, value.M12, value.M13, value.M14, value.M21, value.M22, value.M23, value.M24, value.M31, value.M32, value.M33, value.M34, value.M41, value.M42, value.M43, value.M44); SharpDX.Matrix m = new SharpDX.Matrix(value.M11, value.M12, value.M13, value.M14, value.M21, value.M22, value.M23, value.M24, value.M31, value.M32, value.M33, value.M34, value.M41, value.M42, value.M43, value.M44);
nativeEffectVariable.AsMatrix().SetMatrix(m); nativeEffectVariable.AsMatrix().SetMatrix(m);
} }
public void SetValue(Matrix[] value) public void SetValue(Matrix[] value, bool transpose)
{ {
// TODO: handle transpose!
int count = value.Length; int count = value.Length;
SharpDX.Matrix[] m = new SharpDX.Matrix[count]; SharpDX.Matrix[] m = new SharpDX.Matrix[count];
Matrix anxMatrix; Matrix anxMatrix;
@ -202,5 +204,130 @@ namespace ANX.Framework.Windows.DX10
return nativeEffectVariable.Description.Name; return nativeEffectVariable.Description.Name;
} }
} }
}
#region INativeEffectParameter Member
public bool GetValueBoolean()
{
throw new NotImplementedException();
}
public bool[] GetValueBooleanArray(int count)
{
throw new NotImplementedException();
}
public int GetValueInt32()
{
throw new NotImplementedException();
}
public int[] GetValueInt32Array(int count)
{
throw new NotImplementedException();
}
public Matrix GetValueMatrix()
{
throw new NotImplementedException();
}
public Matrix[] GetValueMatrixArray(int count)
{
throw new NotImplementedException();
}
public Matrix GetValueMatrixTranspose()
{
throw new NotImplementedException();
}
public Matrix[] GetValueMatrixTransposeArray(int count)
{
throw new NotImplementedException();
}
public Quaternion GetValueQuaternion()
{
throw new NotImplementedException();
}
public Quaternion[] GetValueQuaternionArray(int count)
{
throw new NotImplementedException();
}
public float GetValueSingle()
{
throw new NotImplementedException();
}
public float[] GetValueSingleArray(int count)
{
throw new NotImplementedException();
}
public string GetValueString()
{
throw new NotImplementedException();
}
public Graphics.Texture2D GetValueTexture2D()
{
throw new NotImplementedException();
}
public Graphics.Texture3D GetValueTexture3D()
{
throw new NotImplementedException();
}
public TextureCube GetValueTextureCube()
{
throw new NotImplementedException();
}
public Vector2 GetValueVector2()
{
throw new NotImplementedException();
}
public Vector2[] GetValueVector2Array(int count)
{
throw new NotImplementedException();
}
public Vector3 GetValueVector3()
{
throw new NotImplementedException();
}
public Vector3[] GetValueVector3Array(int count)
{
throw new NotImplementedException();
}
public Vector4 GetValueVector4()
{
throw new NotImplementedException();
}
public Vector4[] GetValueVector4Array(int count)
{
throw new NotImplementedException();
}
#endregion
#region INativeEffectParameter Member
public void SetValue(string value)
{
throw new NotImplementedException();
}
#endregion
}
} }

View File

@ -23,6 +23,7 @@
<WarningLevel>4</WarningLevel> <WarningLevel>4</WarningLevel>
<PlatformTarget>x86</PlatformTarget> <PlatformTarget>x86</PlatformTarget>
<GenerateSerializationAssemblies>Auto</GenerateSerializationAssemblies> <GenerateSerializationAssemblies>Auto</GenerateSerializationAssemblies>
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType> <DebugType>pdbonly</DebugType>
@ -32,6 +33,7 @@
<ErrorReport>prompt</ErrorReport> <ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel> <WarningLevel>4</WarningLevel>
<PlatformTarget>x86</PlatformTarget> <PlatformTarget>x86</PlatformTarget>
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
</PropertyGroup> </PropertyGroup>
<ItemGroup> <ItemGroup>
<Reference Include="NLog, Version=2.0.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL"> <Reference Include="NLog, Version=2.0.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL">

View File

@ -94,12 +94,13 @@ namespace ANX.Framework.Windows.GL3
} }
#endregion #endregion
#region SetValue
#region SetValue (Matrix) #region SetValue (Matrix)
/// <summary> /// <summary>
/// Set a matrix value to the effect parameter. /// Set a matrix value to the effect parameter.
/// </summary> /// </summary>
/// <param name="value">Value for the parameter</param> /// <param name="value">Value for the parameter</param>
public void SetValue(Matrix value) public void SetValue(Matrix value, bool transpose)
{ {
GL.UseProgram(parentTechnique.programHandle); GL.UseProgram(parentTechnique.programHandle);
ErrorHelper.Check("UseProgram"); ErrorHelper.Check("UseProgram");
@ -110,7 +111,7 @@ namespace ANX.Framework.Windows.GL3
value.M31, value.M32, value.M33, value.M34, value.M31, value.M32, value.M33, value.M34,
value.M41, value.M42, value.M43, value.M44); value.M41, value.M42, value.M43, value.M44);
GL.UniformMatrix4(UniformIndex, false, ref matrix); GL.UniformMatrix4(UniformIndex, transpose, ref matrix);
ErrorHelper.Check("UniformMatrix4"); ErrorHelper.Check("UniformMatrix4");
} }
#endregion #endregion
@ -120,7 +121,7 @@ namespace ANX.Framework.Windows.GL3
/// Set a Matrix array value to the effect parameter. /// Set a Matrix array value to the effect parameter.
/// </summary> /// </summary>
/// <param name="value">Value for the parameter</param> /// <param name="value">Value for the parameter</param>
public void SetValue(Matrix[] value) public void SetValue(Matrix[] value, bool transpose)
{ {
GL.UseProgram(parentTechnique.programHandle); GL.UseProgram(parentTechnique.programHandle);
ErrorHelper.Check("UseProgram"); ErrorHelper.Check("UseProgram");
@ -144,33 +145,11 @@ namespace ANX.Framework.Windows.GL3
array[(index * 16) + 14] = value[index].M43; array[(index * 16) + 14] = value[index].M43;
array[(index * 16) + 15] = value[index].M44; array[(index * 16) + 15] = value[index].M44;
} }
GL.UniformMatrix4(UniformIndex, array.Length, false, array); GL.UniformMatrix4(UniformIndex, array.Length, transpose, array);
ErrorHelper.Check("UniformMatrix4v"); ErrorHelper.Check("UniformMatrix4v");
} }
#endregion #endregion
#region SetValue (Quaternion) (TODO)
/// <summary>
/// Set a Quaternion value to the effect parameter.
/// </summary>
/// <param name="value">Value for the parameter</param>
public void SetValue(Quaternion value)
{
throw new NotImplementedException();
}
#endregion
#region SetValue (Quaternion[]) (TODO)
/// <summary>
/// Set a Quaternion array value to the effect parameter.
/// </summary>
/// <param name="value">Value for the parameter</param>
public void SetValue(Quaternion[] value)
{
throw new NotImplementedException();
}
#endregion
#region SetValue (Texture) #region SetValue (Texture)
private Texture textureCache = null; private Texture textureCache = null;
/// <summary> /// <summary>
@ -198,28 +177,6 @@ namespace ANX.Framework.Windows.GL3
} }
#endregion #endregion
#region SetValue (bool) (TODO)
/// <summary>
/// Set a bool value to the effect parameter.
/// </summary>
/// <param name="value">Value for the parameter</param>
public void SetValue(bool value)
{
throw new NotImplementedException();
}
#endregion
#region SetValue (bool[]) (TODO)
/// <summary>
/// Set a bool array value to the effect parameter.
/// </summary>
/// <param name="value">Value for the parameter</param>
public void SetValue(bool[] value)
{
throw new NotImplementedException();
}
#endregion
#region SetValue (int) #region SetValue (int)
/// <summary> /// <summary>
/// Set an int value to the effect parameter. /// Set an int value to the effect parameter.
@ -380,5 +337,249 @@ namespace ANX.Framework.Windows.GL3
ErrorHelper.Check("Uniform4fv"); ErrorHelper.Check("Uniform4fv");
} }
#endregion #endregion
#region SetValue (bool) (TODO)
/// <summary>
/// Set a bool value to the effect parameter.
/// </summary>
/// <param name="value">Value for the parameter</param>
public void SetValue(bool value)
{
throw new NotImplementedException();
}
#endregion
#region SetValue (bool[]) (TODO)
/// <summary>
/// Set a bool array value to the effect parameter.
/// </summary>
/// <param name="value">Value for the parameter</param>
public void SetValue(bool[] value)
{
throw new NotImplementedException();
}
#endregion
#region SetValue (Quaternion) (TODO)
/// <summary>
/// Set a Quaternion value to the effect parameter.
/// </summary>
/// <param name="value">Value for the parameter</param>
public void SetValue(Quaternion value)
{
throw new NotImplementedException();
}
#endregion
#region SetValue (Quaternion[]) (TODO)
/// <summary>
/// Set a Quaternion array value to the effect parameter.
/// </summary>
/// <param name="value">Value for the parameter</param>
public void SetValue(Quaternion[] value)
{
throw new NotImplementedException();
}
#endregion
#region SetValue (string, TODO)
public void SetValue(string value)
{
throw new NotImplementedException();
}
#endregion
#endregion
#region GetValue
#region GetValueBoolean
public bool GetValueBoolean()
{
int result;
GL.GetUniform(parentTechnique.programHandle, UniformIndex, out result);
ErrorHelper.Check("GetUniform");
return result == 1;
}
#endregion
#region GetValueBooleanArray (TODO)
public bool[] GetValueBooleanArray(int count)
{
throw new NotImplementedException();
}
#endregion
#region GetValueInt32
public int GetValueInt32()
{
int result;
GL.GetUniform(parentTechnique.programHandle, UniformIndex, out result);
ErrorHelper.Check("GetUniform");
return result;
}
#endregion
#region GetValueInt32Array (TODO)
public int[] GetValueInt32Array(int count)
{
throw new NotImplementedException();
}
#endregion
#region GetValueMatrix (TODO)
public Matrix GetValueMatrix()
{
throw new NotImplementedException();
}
#endregion
#region GetValueMatrixArray (TODO)
public Matrix[] GetValueMatrixArray(int count)
{
throw new NotImplementedException();
}
#endregion
#region GetValueMatrixTranspose (TODO)
public Matrix GetValueMatrixTranspose()
{
throw new NotImplementedException();
}
#endregion
#region GetValueMatrixTransposeArray (TODO)
public Matrix[] GetValueMatrixTransposeArray(int count)
{
throw new NotImplementedException();
}
#endregion
#region GetValueQuaternion (TODO)
public Quaternion GetValueQuaternion()
{
throw new NotImplementedException();
}
#endregion
#region GetValueQuaternionArray (TODO)
public Quaternion[] GetValueQuaternionArray(int count)
{
throw new NotImplementedException();
}
#endregion
#region GetValueSingle
public float GetValueSingle()
{
float result;
GL.GetUniform(parentTechnique.programHandle, UniformIndex, out result);
ErrorHelper.Check("GetUniform");
return result;
}
#endregion
#region GetValueSingleArray (TODO)
public float[] GetValueSingleArray(int count)
{
throw new NotImplementedException();
}
#endregion
#region GetValueString (TODO)
public string GetValueString()
{
throw new NotImplementedException();
}
#endregion
#region GetValueTexture2D (TODO)
public Texture2D GetValueTexture2D()
{
throw new NotImplementedException();
}
#endregion
#region GetValueTexture3D (TODO)
public Texture3D GetValueTexture3D()
{
throw new NotImplementedException();
}
#endregion
#region GetValueTextureCube (TODO)
public TextureCube GetValueTextureCube()
{
throw new NotImplementedException();
}
#endregion
#region GetValueVector2
public Vector2 GetValueVector2()
{
float[] result = new float[2];
unsafe
{
fixed (float* ptr = &result[0])
{
GL.GetUniform(parentTechnique.programHandle, UniformIndex, ptr);
}
}
ErrorHelper.Check("GetUniform");
return new Vector2(result[0], result[1]);
}
#endregion
#region GetValueVector2Array (TODO)
public Vector2[] GetValueVector2Array(int count)
{
throw new NotImplementedException();
}
#endregion
#region GetValueVector3
public Vector3 GetValueVector3()
{
float[] result = new float[3];
unsafe
{
fixed (float* ptr = &result[0])
{
GL.GetUniform(parentTechnique.programHandle, UniformIndex, ptr);
}
}
ErrorHelper.Check("GetUniform");
return new Vector3(result[0], result[1], result[2]);
}
#endregion
#region GetValueVector3Array (TODO)
public Vector3[] GetValueVector3Array(int count)
{
throw new NotImplementedException();
}
#endregion
#region GetValueVector4
public Vector4 GetValueVector4()
{
float[] result = new float[4];
unsafe
{
fixed (float* ptr = &result[0])
{
GL.GetUniform(parentTechnique.programHandle, UniformIndex, ptr);
}
}
ErrorHelper.Check("GetUniform");
return new Vector4(result[0], result[1], result[2], result[3]);
}
#endregion
#region GetValueVector4Array (TODO)
public Vector4[] GetValueVector4Array(int count)
{
throw new NotImplementedException();
}
#endregion
#endregion
} }
} }

View File

@ -96,13 +96,13 @@ namespace ANX.RenderSystem.Windows.DX11
nativeEffectVariable.AsScalar().Set(value); nativeEffectVariable.AsScalar().Set(value);
} }
public void SetValue(Matrix value) public void SetValue(Matrix value, bool transpose)
{ {
SharpDX.Matrix m = new SharpDX.Matrix(value.M11, value.M12, value.M13, value.M14, value.M21, value.M22, value.M23, value.M24, value.M31, value.M32, value.M33, value.M34, value.M41, value.M42, value.M43, value.M44); SharpDX.Matrix m = new SharpDX.Matrix(value.M11, value.M12, value.M13, value.M14, value.M21, value.M22, value.M23, value.M24, value.M31, value.M32, value.M33, value.M34, value.M41, value.M42, value.M43, value.M44);
nativeEffectVariable.AsMatrix().SetMatrix(m); nativeEffectVariable.AsMatrix().SetMatrix(m);
} }
public void SetValue(Matrix[] value) public void SetValue(Matrix[] value, bool transpose)
{ {
int count = value.Length; int count = value.Length;
SharpDX.Matrix[] m = new SharpDX.Matrix[count]; SharpDX.Matrix[] m = new SharpDX.Matrix[count];
@ -198,5 +198,130 @@ namespace ANX.RenderSystem.Windows.DX11
return nativeEffectVariable.Description.Name; return nativeEffectVariable.Description.Name;
} }
} }
}
#region INativeEffectParameter Member
public bool GetValueBoolean()
{
throw new NotImplementedException();
}
public bool[] GetValueBooleanArray(int count)
{
throw new NotImplementedException();
}
public int GetValueInt32()
{
throw new NotImplementedException();
}
public int[] GetValueInt32Array(int count)
{
throw new NotImplementedException();
}
public Matrix GetValueMatrix()
{
throw new NotImplementedException();
}
public Matrix[] GetValueMatrixArray(int count)
{
throw new NotImplementedException();
}
public Matrix GetValueMatrixTranspose()
{
throw new NotImplementedException();
}
public Matrix[] GetValueMatrixTransposeArray(int count)
{
throw new NotImplementedException();
}
public Quaternion GetValueQuaternion()
{
throw new NotImplementedException();
}
public Quaternion[] GetValueQuaternionArray(int count)
{
throw new NotImplementedException();
}
public float GetValueSingle()
{
throw new NotImplementedException();
}
public float[] GetValueSingleArray(int count)
{
throw new NotImplementedException();
}
public string GetValueString()
{
throw new NotImplementedException();
}
public Framework.Graphics.Texture2D GetValueTexture2D()
{
throw new NotImplementedException();
}
public Framework.Graphics.Texture3D GetValueTexture3D()
{
throw new NotImplementedException();
}
public TextureCube GetValueTextureCube()
{
throw new NotImplementedException();
}
public Vector2 GetValueVector2()
{
throw new NotImplementedException();
}
public Vector2[] GetValueVector2Array(int count)
{
throw new NotImplementedException();
}
public Vector3 GetValueVector3()
{
throw new NotImplementedException();
}
public Vector3[] GetValueVector3Array(int count)
{
throw new NotImplementedException();
}
public Vector4 GetValueVector4()
{
throw new NotImplementedException();
}
public Vector4[] GetValueVector4Array(int count)
{
throw new NotImplementedException();
}
#endregion
#region INativeEffectParameter Member
public void SetValue(string value)
{
throw new NotImplementedException();
}
#endregion
}
} }

View File

@ -201,6 +201,130 @@ namespace ANX.Framework.Windows.DX10
{ {
return nativeEffectVariable.Description.Name; return nativeEffectVariable.Description.Name;
} }
} }
#region INativeEffectParameter Member
public bool GetValueBoolean()
{
throw new NotImplementedException();
}
public bool[] GetValueBooleanArray(int count)
{
throw new NotImplementedException();
}
public int GetValueInt32()
{
throw new NotImplementedException();
}
public int[] GetValueInt32Array(int count)
{
throw new NotImplementedException();
}
public Matrix GetValueMatrix()
{
throw new NotImplementedException();
}
public Matrix[] GetValueMatrixArray(int count)
{
throw new NotImplementedException();
}
public Matrix GetValueMatrixTranspose()
{
throw new NotImplementedException();
}
public Matrix[] GetValueMatrixTransposeArray(int count)
{
throw new NotImplementedException();
}
public Quaternion GetValueQuaternion()
{
throw new NotImplementedException();
}
public Quaternion[] GetValueQuaternionArray(int count)
{
throw new NotImplementedException();
}
public float GetValueSingle()
{
throw new NotImplementedException();
}
public float[] GetValueSingleArray(int count)
{
throw new NotImplementedException();
}
public string GetValueString()
{
throw new NotImplementedException();
}
public Graphics.Texture2D GetValueTexture2D()
{
throw new NotImplementedException();
}
public Graphics.Texture3D GetValueTexture3D()
{
throw new NotImplementedException();
}
public TextureCube GetValueTextureCube()
{
throw new NotImplementedException();
}
public Vector2 GetValueVector2()
{
throw new NotImplementedException();
}
public Vector2[] GetValueVector2Array(int count)
{
throw new NotImplementedException();
}
public Vector3 GetValueVector3()
{
throw new NotImplementedException();
}
public Vector3[] GetValueVector3Array(int count)
{
throw new NotImplementedException();
}
public Vector4 GetValueVector4()
{
throw new NotImplementedException();
}
public Vector4[] GetValueVector4Array(int count)
{
throw new NotImplementedException();
}
#endregion
#region INativeEffectParameter Member
public void SetValue(string value)
{
throw new NotImplementedException();
}
#endregion
} }
} }