Initial commit
Initial commit.
Removed redundant dlls.
Added AngelFont.dll to provide font parsing and added a new class
FontBatch to provide font rendering.
Added attributes file for git.
Update the AngelFont library and included the corresponding xml
documentation file. Also added BmFontReader which implements a content
reader for reading BmFont files using the AngelFont reader underneath.
Added a new scene, NullScene, for development use. Completed preliminary
implementation of the font renderer in FontBatch.
Implemented separate outline and body rendering in the FontBatch class
which will allow the outline and body colors to be chosen instead of
using hardcoded content values. Also added the font 04b03 in four
flavors. Added a content reader for reading text files; this is
currently used for loading shader source files.
Implemented various extra draw methods in the FontBatch class. Also
implemented justified text rendering. Added a new enum
FontStringSplitOptions which is used in FontBatch for specifying
splitting options when generating strings for multiline rendering. Also
cleaned up the implementation details for the FontBatch class.
Added some implementation details for the SplitToDrawnLength method in
FontBatch.
Changed implementation details of the SplitToDrawnLength method in
FontBatch. This still requires much work. Also fixed some commenting in
the FontStringSplitOptions enum.
Changed the implementation of the SplitToDrawnLength method in the
FontBatch class drastically. There are still some issues with it to fix.
Also fixed the justified text rendering so that float was being used
instead of int causing the rendering to be more accurate.
Slight fix to the SplitToDrawnLength method so that extra characters are
not added to the end of some lines.
Fixed an issue where a hyphen was being added to the end of a line
when the previous character was a splitter character.
Normalized line endings.
Changed the resolution scaling and added in ReSharper settings for the
project.
Fixed line endings. Overhauled the interface system to be more modular
and removed some redundant code.
Added the InterfaceWorldBatch class for drawing an interface world.
Added some implementation details to InterfaceWorldBatch.
Removed the InterfaceWorldBatch class because ui rendering is being
redesigned. Added a new IDrawable component interface which is used by
other classes to implement a drawing routine which can then be used in
an interface entity. Moved the Panel class into the EnergyShell project
because as an entity it should merely be acting as glue for various
components meaning that it may require many dependencies.
Changed the implementation of IDrawable so that a position can be passed
into the Draw method. Added PanelDrawable which implements a component
for rendering a panel. Added the InterfaceThemeResource class which
stores theming resources for rendering ui elements (such as the
PanelDrawable class). Changed various event handlers in ShellUi to use a
Point2 struct instead of two ints.