69 array[num++] = (ushort)(num2 + 1);
70 array[num++] = (ushort)(num2 + 2);
71 array[num++] = (ushort)(num2 + 3);
72 array[num++] = (ushort)(num2 + 2);
73 array[num++] = (ushort)(num2 + 1);
133 Draw(texture, position, sourceRectangle, color, rotation, origin,
new Vector2(scale, scale), effects);
140 if (sourceRectangle.HasValue)
142 z = (float)sourceRectangle.Value.
Width * scale.
X;
143 w = (float)sourceRectangle.Value.
Height * scale.
Y;
147 z = (float)texture.
Width * scale.
X;
148 w = (float)texture.
Height * scale.
Y;
150 Draw(texture,
new Vector4(position.
X, position.
Y, z, w), sourceRectangle, colors, rotation, origin, effects, 0f);
155 Draw(texture,
new Vector4(
destination.X,
destination.Y,
destination.Width,
destination.Height), sourceRectangle, colors, rotation, origin, effects, 0f);
161 if (sourceRectangle.HasValue)
163 sourceRectangle2.X = sourceRectangle.Value.
X;
164 sourceRectangle2.Y = sourceRectangle.Value.
Y;
165 sourceRectangle2.Z = sourceRectangle.Value.
Width;
166 sourceRectangle2.W = sourceRectangle.Value.
Height;
170 sourceRectangle2.X = 0f;
171 sourceRectangle2.Y = 0f;
172 sourceRectangle2.Z = texture.
Width;
173 sourceRectangle2.W = texture.
Height;
176 texCoordTL.X = sourceRectangle2.X / (float)texture.
Width;
177 texCoordTL.Y = sourceRectangle2.Y / (float)texture.
Height;
179 texCoordBR.X = (sourceRectangle2.X + sourceRectangle2.
Z) / (
float)texture.
Width;
180 texCoordBR.Y = (sourceRectangle2.Y + sourceRectangle2.
W) / (
float)texture.
Height;
183 float y = texCoordBR.
Y;
184 texCoordBR.Y = texCoordTL.
Y;
189 float x = texCoordBR.
X;
190 texCoordBR.X = texCoordTL.
X;
193 QueueSprite(destinationRectangle, -origin, colors, sourceRectangle2, texCoordTL, texCoordBR, texture, depth, rotation);
198 float num = origin.X / sourceRectangle.
Z;
199 float num2 = origin.Y / sourceRectangle.
W;
200 float x = destinationRect.
X;
201 float y = destinationRect.
Y;
202 float z = destinationRect.
Z;
203 float w = destinationRect.
W;
204 float num3 = num * z;
205 float num4 = num2 * w;
210 num5 = (float)
Math.
Cos(rotation);
211 num6 = (float)
Math.
Sin(rotation);
237 vertex.Position = pos;
238 vertex.Color = color;
239 vertex.TextureCoordinate = texCoord;
unsafe IndexBuffer Indices
unsafe void SetVertexBuffers(VertexBufferBinding *pBindings, int vertexBufferCount)
VertexBufferBinding[] GetVertexBuffers()
unsafe void SetVertexBuffer(VertexBuffer vertexBuffer, int vertexOffset)
TextureCollection Textures
unsafe void DrawIndexedPrimitives(PrimitiveType primitiveType, int baseVertex, int minVertexIndex, int numVertices, int startIndex, int primitiveCount)
override void Dispose([MarshalAs(UnmanagedType.U1)] bool P_0)
override void Dispose([MarshalAs(UnmanagedType.U1)] bool P_0)
static double Cos(double d)
static double Sin(double a)
SpriteDrawBuffer(GraphicsDevice graphicsDevice, int defaultSize)
void CheckGraphicsDevice(GraphicsDevice graphicsDevice)
DynamicVertexBuffer vertexBuffer
void Draw(Texture2D texture, Vector2 position, Rectangle? sourceRectangle, VertexColors color, float rotation, Vector2 origin, float scale, SpriteEffects effects)
void Draw(Texture2D texture, Vector2 position, Rectangle? sourceRectangle, VertexColors colors, float rotation, Vector2 origin, Vector2 scale, SpriteEffects effects)
VertexBufferBinding[] preBindVertexBuffers
void Draw(Texture2D texture, Vector2 position, VertexColors colors)
void QueueSprite(Vector4 destinationRect, Vector2 origin, VertexColors colors, Vector4 sourceRectangle, Vector2 texCoordTL, Vector2 texCoordBR, Texture2D texture, float depth, float rotation)
void Draw(Texture2D texture, Rectangle destination, Rectangle? sourceRectangle, VertexColors colors)
IndexBuffer preBindIndexBuffer
void PushVertex(Vector3 pos, Color color, Vector2 texCoord)
void Draw(Texture2D texture, Rectangle destination, Rectangle? sourceRectangle, VertexColors colors, float rotation, Vector2 origin, SpriteEffects effects)
static void SetVertex(ref VertexPositionColorTexture vertex, Vector3 pos, Color color, Vector2 texCoord)
void DrawRange(int index, int count)
void Draw(Texture2D texture, Rectangle destination, VertexColors colors)
void Draw(Texture2D texture, Vector4 destinationRectangle, Rectangle? sourceRectangle, VertexColors colors, float rotation, Vector2 origin, SpriteEffects effect, float depth)
void DrawSingle(int index)
GraphicsDevice graphicsDevice
static ushort[] GenIndexBuffer(int maxSprites)
VertexPositionColorTexture[] vertices