implemented DrawInstancedPrimitives for RenderSystem DX10 and DX11 (currently untested)
Primitives sample is now rendering (issue #531) but BasicEffect is not complete
This commit is contained in:
parent
b3602239d9
commit
8ff04fef2e
@ -318,7 +318,7 @@ namespace ANX.Framework.Windows.DX10
|
|||||||
#region DrawInstancedPrimitives
|
#region DrawInstancedPrimitives
|
||||||
public void DrawInstancedPrimitives(PrimitiveType primitiveType, int baseVertex, int minVertexIndex, int numVertices, int startIndex, int primitiveCount, int instanceCount)
|
public void DrawInstancedPrimitives(PrimitiveType primitiveType, int baseVertex, int minVertexIndex, int numVertices, int startIndex, int primitiveCount, int instanceCount)
|
||||||
{
|
{
|
||||||
throw new NotImplementedException();
|
device.DrawIndexedInstanced(numVertices, instanceCount, startIndex, baseVertex, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
#endregion // DrawInstancedPrimitives
|
#endregion // DrawInstancedPrimitives
|
||||||
@ -336,7 +336,14 @@ namespace ANX.Framework.Windows.DX10
|
|||||||
device.InputAssembler.SetVertexBuffers(0, nativeVertexBufferBindings);
|
device.InputAssembler.SetVertexBuffers(0, nativeVertexBufferBindings);
|
||||||
|
|
||||||
IndexBuffer_DX10 idx10 = new IndexBuffer_DX10(this.device, indexFormat, indexCount, BufferUsage.None);
|
IndexBuffer_DX10 idx10 = new IndexBuffer_DX10(this.device, indexFormat, indexCount, BufferUsage.None);
|
||||||
idx10.SetData<int>(null, (int[])indexData);
|
if (indexData.GetType() == typeof(Int16[]))
|
||||||
|
{
|
||||||
|
idx10.SetData<short>(null, (short[])indexData);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
idx10.SetData<int>(null, (int[])indexData);
|
||||||
|
}
|
||||||
|
|
||||||
DrawIndexedPrimitives(primitiveType, 0, vertexOffset, numVertices, indexOffset, primitiveCount);
|
DrawIndexedPrimitives(primitiveType, 0, vertexOffset, numVertices, indexOffset, primitiveCount);
|
||||||
}
|
}
|
||||||
|
@ -32,7 +32,7 @@ using System.Runtime.InteropServices;
|
|||||||
// Sie können alle Werte angeben oder die standardmäßigen Build- und Revisionsnummern
|
// Sie können alle Werte angeben oder die standardmäßigen Build- und Revisionsnummern
|
||||||
// übernehmen, indem Sie "*" eingeben:
|
// übernehmen, indem Sie "*" eingeben:
|
||||||
// [assembly: AssemblyVersion("1.0.*")]
|
// [assembly: AssemblyVersion("1.0.*")]
|
||||||
[assembly: AssemblyVersion("0.7.13.0")]
|
[assembly: AssemblyVersion("0.7.14.0")]
|
||||||
[assembly: AssemblyFileVersion("0.7.13.0")]
|
[assembly: AssemblyFileVersion("0.7.14.0")]
|
||||||
|
|
||||||
[assembly: InternalsVisibleTo("ANX.Framework.ContentPipeline")]
|
[assembly: InternalsVisibleTo("ANX.Framework.ContentPipeline")]
|
||||||
|
@ -322,7 +322,7 @@ namespace ANX.RenderSystem.Windows.DX11
|
|||||||
#region DrawInstancedPrimitives
|
#region DrawInstancedPrimitives
|
||||||
public void DrawInstancedPrimitives(PrimitiveType primitiveType, int baseVertex, int minVertexIndex, int numVertices, int startIndex, int primitiveCount, int instanceCount)
|
public void DrawInstancedPrimitives(PrimitiveType primitiveType, int baseVertex, int minVertexIndex, int numVertices, int startIndex, int primitiveCount, int instanceCount)
|
||||||
{
|
{
|
||||||
throw new NotImplementedException();
|
deviceContext.DrawIndexedInstanced(numVertices, instanceCount, startIndex, baseVertex, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
#endregion // DrawInstancedPrimitives
|
#endregion // DrawInstancedPrimitives
|
||||||
@ -340,7 +340,14 @@ namespace ANX.RenderSystem.Windows.DX11
|
|||||||
deviceContext.InputAssembler.SetVertexBuffers(0, nativeVertexBufferBindings);
|
deviceContext.InputAssembler.SetVertexBuffers(0, nativeVertexBufferBindings);
|
||||||
|
|
||||||
IndexBuffer_DX11 idx10 = new IndexBuffer_DX11(this.deviceContext.Device, indexFormat, indexCount, BufferUsage.None);
|
IndexBuffer_DX11 idx10 = new IndexBuffer_DX11(this.deviceContext.Device, indexFormat, indexCount, BufferUsage.None);
|
||||||
idx10.SetData<int>(null, (int[])indexData);
|
if (indexData.GetType() == typeof(Int16[]))
|
||||||
|
{
|
||||||
|
idx10.SetData<short>(null, (short[])indexData);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
idx10.SetData<int>(null, (int[])indexData);
|
||||||
|
}
|
||||||
|
|
||||||
DrawIndexedPrimitives(primitiveType, 0, vertexOffset, numVertices, indexOffset, primitiveCount);
|
DrawIndexedPrimitives(primitiveType, 0, vertexOffset, numVertices, indexOffset, primitiveCount);
|
||||||
}
|
}
|
||||||
|
@ -29,5 +29,5 @@ using System.Runtime.InteropServices;
|
|||||||
// Buildnummer
|
// Buildnummer
|
||||||
// Revision
|
// Revision
|
||||||
//
|
//
|
||||||
[assembly: AssemblyVersion("0.7.5.0")]
|
[assembly: AssemblyVersion("0.7.6.0")]
|
||||||
[assembly: AssemblyFileVersion("0.7.5.0")]
|
[assembly: AssemblyFileVersion("0.7.6.0")]
|
||||||
|
Loading…
x
Reference in New Issue
Block a user