* Removed System.Numerics.Vectors dependency. Implemented basic
Vector2<T> type to replace it.
* ScalingQuality can now be changed for each canvas independently,
as well as for the rendering target texture.
* Point type is now based on the new Vector2<T> generic.
* GetCanvasPointer() is now a Canvas function pointer. This is a
breaking change, but it should allow any Canvas-derived object
to be fed an arbitrary ARGB surface if the implementer chooses
to take that approach.
* Canvas and Sprite textures are created in a more consistent way.
* The background Canvas now uses the same functions that Sprites
use for texture creation and updates.
* Added a public UpdateTexture() function so that implementers can
manually update sprites if necessary. This should not be used
too often as it can lead to performance issues.
* The SpriteList now initializes Sprites using the stanard Canvas
initialization routines.
* Implemented two moveable "players" in Sample.Sprites.
* Sprites can actually be drawn! Alpha and blending modes are not
supported at the moment.
* Background canvas is now decoupled from the window. It can now be
sized independently of the window.
* Canvases/Sprites now have their own textures that must be
initialized with the renderer prior to them being used. This is
all handled by DotSDL.
* A SpriteList class has been created to maintain collections of
Sprites, replacing the old List<Sprite> system. This was required
to ensure that the Sprite textures are properly allocated and
freed during creation/destruction.
* Background clipping now functions as expected. The background
Canvas can now be cropped and scrolled at will.
* Background rendering has changed from directly blitting the canvas
onto a texture to using an intermediate target texture.
* Updated the Sample.Sprites project to test/demonstrate the new
Canvas features. Project is still incomplete.
* The SdlWindow canvas is now exposed as the Background property.
* OnDraw is no longer tied to GetCanvasPointer() and is now called
directly by BaseDraw before drawing starts.
* OnDraw no longer passes a ref to the background, since that's
always available now. Applications that use DotSDL will have to
be modified to accommodate this.
* The background of the window can now be resized and its clipping
rectangle can be changed (though it's not currently used in the
draw routine.
* Sample projects have been updated to accomodate the changes.
* Sprite drawing has been implemented but is still untested.
* The SdlPoint/SdlRect objects in the Point/Rectangle classes
are now exposed to DotSDL for plotting purposes.
* Added some rotation center support (not fully realized).
* Sprites can now be initialized with the clipping rectangle.
* Removed RenderFlip in favor of DotSDL's FlipDirection. The
enums were were effective identical.
* Started working on Sample.Sprites.
* Added a public Rectangle struct.
* Added a constructor for the Point struct to slightly reduce typing fatigue. :)
* Modified the way that Canvas classes are initialized so that
sprite sheets and scrolling backgrounds will be possible to
implement.
* Moved DotSDL.Sdl to DotSDL.Interop.Core to allow for external
library (SDL_mixer, SDL_image, etc) support down the road and
to make their purpose more clear.
* Changed DllName constant to CoreLib to fit the namespace
change.