diff --git a/tools/doc/index_template.md.html b/tools/doc/index_template.md.html
index f6fe96e..fb6b8d4 100644
--- a/tools/doc/index_template.md.html
+++ b/tools/doc/index_template.md.html
@@ -16,9 +16,31 @@ License
CORE
====================================================================================
+Use SFWCore::setup();
to initialize the library.
+This is necessary as some components (Like PoolVector, and StringNames.) need additional setup.
+
+Use SFWCore::cleanup();
to de-initialize the library.
+
+Note that if you use the Application class, it's constructor will do this for you automatically.
+
+Also note that if you don't use classes that doens't rely on this you can get away by not calling it.
+
+
+Initialization
+------------------------------------------------------------------
+
+
+SFWCore
+
+ |||CLASS_SFWCore|||
+
+
+
Enums
------------------------------------------------------------------
+Errors
+
Error
@@ -26,6 +48,8 @@ Enums
+Keys
+
KeyList
@@ -33,6 +57,71 @@ Enums
+
+KeyModifierMask
+
+|||ENUM_KeyModifierMask|||
+
+
+
+
+ButtonList
+
+|||ENUM_ButtonList|||
+
+
+
+Other
+
+
+ClockDirection
+
+|||ENUM_ClockDirection|||
+
+
+
+
+Orientation
+
+|||ENUM_Orientation|||
+
+
+
+
+HAlign
+
+|||ENUM_HAlign|||
+
+
+
+
+VAlign
+
+|||ENUM_VAlign|||
+
+
+
+
+Margin
+
+|||ENUM_Margin|||
+
+
+
+
+Side
+
+|||ENUM_Side|||
+
+
+
+
+Corner
+
+|||ENUM_Corner|||
+
+
+
Errors and Logging
------------------------------------------------------------------
@@ -554,11 +643,22 @@ Special
-
-
Files
------------------------------------------------------------------
+
+FileAccess
+
+ |||CLASS_FileAccess|||
+
+
+
+
+DirAccess
+
+ |||CLASS_DirAccess|||
+
+
Time
------------------------------------------------------------------
@@ -655,22 +755,344 @@ SpinLock
OBJECT
====================================================================================
+Object
+
+
+Object
+
+ |||CLASS_Object|||
+
+
+
+
+ObjectDB
+
+ |||CLASS_ObjectDB|||
+
+
+
+Reference
+
+
+Reference
+
+ |||CLASS_Reference|||
+
+
+
+
+Ref
+
+ |||CLASS_Ref|||
+
+
+
+Resource
+
+
+Resource
+
+ |||CLASS_Resource|||
+
+
+
+Variant
+
+
+Variant
+
+ |||CLASS_Variant|||
+
+
+Variant Containers
+
+Array
+
+ |||CLASS_Array|||
+
+
+
+
+Dictionary
+
+ |||CLASS_Dictionary|||
+
+
+
+Utilities
+
+
+Signal
+
+ |||CLASS_Signal|||
+
+
+
+
+CoreStringNames
+
+ |||CLASS_CoreStringNames|||
+
+
RENDER CORE
====================================================================================
-Coordinate Systems
+Application
------------------------------------------------------------------
+
+Application
+
+ |||CLASS_Application|||
+
+
+
+
+Scene
+
+ |||CLASS_Scene|||
+
+
+
+
+AppWindow
+
+ |||CLASS_AppWindow|||
+
+
+
+Input
+------------------------------------------------------------------
+
+Singletons
+
+
+Input
+
+ |||CLASS_Input|||
+
+
+
+
+InputMap
+
+ |||CLASS_InputMap|||
+
+
+
+Events
+
+
+InputEvent
+
+ |||CLASS_InputEvent|||
+
+
+
+
+
+InputEventWithModifiers
+
+ |||CLASS_InputEventWithModifiers|||
+
+
+
+
+InputEventKey
+
+ |||CLASS_InputEventKey|||
+
+
+
+
+InputEventMouse
+
+ |||CLASS_InputEventMouse|||
+
+
+
+
+InputEventMouseButton
+
+ |||CLASS_InputEventMouseButton|||
+
+
+
+
+InputEventMouseMotion
+
+ |||CLASS_InputEventMouseMotion|||
+
+
+
+
+InputEventAction
+
+ |||CLASS_InputEventAction|||
+
+
+
+
+InputEventShortCut
+
+ |||CLASS_InputEventShortCut|||
+
+
+
+Utility
+
+
+ShortCut
+
+ |||CLASS_ShortCut|||
+
+
+
+Rendering
+------------------------------------------------------------------
+
+Images
+
+
+Image
+
+ |||CLASS_Image|||
+
+
+
+
+Texture
+
+ |||CLASS_Texture|||
+
+
+
+Meshes
+
+
+Mesh
+
+ |||CLASS_Mesh|||
+
+
+
+
+MeshUtils
+
+ |||CLASS_MeshUtils|||
+
+
+
+Shaders
+
+
+Shader
+
+ |||CLASS_Shader|||
+
+
+
+
+ShaderCache
+
+ |||CLASS_ShaderCache|||
+
+
+
+Fonts
+
+
+Font
+
+ |||CLASS_Font|||
+
+
+
+Materials
+
+
+Material
+
+ |||CLASS_Material|||
+
+
+
+Text Materials
+
+
+FontMaterial
+
+ |||CLASS_FontMaterial|||
+
+
+
+2D Materials
+
+
+ColorMaterial2D
+
+ |||CLASS_ColorMaterial2D|||
+
+
+
+
+TextureMaterial2D
+
+ |||CLASS_TextureMaterial2D|||
+
+
+
+3D Materials
+
+
+ColorMaterial
+
+ |||CLASS_ColorMaterial|||
+
+
+
+
+TextureMaterial
+
+ |||CLASS_TextureMaterial|||
+
+
+
+
+ColoredMaterial
+
+ |||CLASS_ColoredMaterial|||
+
+
+
+
+TransparentTextureMaterial
+
+ |||CLASS_TransparentTextureMaterial|||
+
+
+
+State
+
+
+RenderState
+
+ |||CLASS_RenderState|||
+
+
+
+Coordinate System
+
3D TODO doube check z
******************************************************************
*
* +x
-* *--->--------. .--->--------.
+* *--->--------. .------------.
* | | | |
* v +y | | |
* | | +y ^ ^ +z |
@@ -682,35 +1104,140 @@ Coordinate Systems
******************************************************************
-Application
-------------------------------------------------------------------
-
-
-Input
-------------------------------------------------------------------
-
-
-Rendering
-------------------------------------------------------------------
-
-
-
-Materials
-------------------------------------------------------------------
-
-
-
-
RENDER IMMEDIATE
====================================================================================
+
+Renderer
+
+ |||CLASS_Renderer|||
+
+
RENDER OBJECTS
====================================================================================
+Text
+------------------------------------------------------------------
+Base
+
+
+Text2D
+
+ |||CLASS_Text2D|||
+
+
+
+2D
+------------------------------------------------------------------
+
+Base
+
+
+Object2D
+
+ |||CLASS_Object2D|||
+
+
+
+Camera
+
+
+Camera2D
+
+ |||CLASS_Camera2D|||
+
+
+
+Objects
+
+
+Sprite
+
+ |||CLASS_Sprite|||
+
+
+
+
+TileMap
+
+ |||CLASS_TileMap|||
+
+
+
+
+MeshInstance2D
+
+ |||CLASS_MeshInstance2D|||
+
+
+
+
+3D
+------------------------------------------------------------------
+
+Base
+
+
+Object3D
+
+ |||CLASS_Object3D|||
+
+
+
+Camera
+
+
+Camera3D
+
+ |||CLASS_Camera3D|||
+
+
+
+
+OrthographicCamera
+
+ |||CLASS_OrthographicCamera|||
+
+
+
+
+PerspectiveCamera
+
+ |||CLASS_PerspectiveCamera|||
+
+
+
+
+FrustumCamera
+
+ |||CLASS_FrustumCamera|||
+
+
+
+Objects
+
+
+MeshInstance3D
+
+ |||CLASS_MeshInstance3D|||
+
+
+
+
+ADVANCED
+====================================================================================
+
+There are a few remaining classes that were omitted from this document (Like allocators, hashers etc.),
+as you will normally won't need them. (If you do, you will likely just need to rread the source anyway.)
+
+WHERE TO GO NEXT
+====================================================================================
+
+TODO link a bunch of cool projects.