* split TglBitmap into TglBitmap and TglBitmapData to be able to handle load, save...
[glBitmap.git] / doc / glBitmap.TglBitmap.html
index 7f53bf5..cf098b3 100644 (file)
@@ -21,7 +21,7 @@
 <code>type TglBitmap = class(TObject)</code></p>
 <h2 class="description">Description</h2>
 <p>
-base class for all glBitmap classes. used to manage OpenGL texture objects and to load, save and manipulate texture data</p>
+base class for all glBitmap classes. used to manage OpenGL texture objects all operations on a bitmap object must be done from the render thread</p>
 <a name="PasDoc-Hierarchy"></a><h2 class="hierarchy">Hierarchy</h2>
 <ul class="hierarchy"><li class="ancestor">TObject</li>
 <li class="thisitem">TglBitmap</li></ul><h2 class="overview">Overview</h2>
@@ -37,75 +37,51 @@ base class for all glBitmap classes. used to manage OpenGL texture objects and t
 </tr>
 <tr class="list">
 <td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><code><b><a  href="glBitmap.TglBitmap.html#fAnisotropic">fAnisotropic</a></b>: Integer;</code></td>
-</tr>
-<tr class="list2">
-<td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
 <td class="itemcode"><code><b><a  href="glBitmap.TglBitmap.html#fDeleteTextureOnFree">fDeleteTextureOnFree</a></b>: Boolean;</code></td>
 </tr>
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><code><b><a  href="glBitmap.TglBitmap.html#fFreeDataOnDestroy">fFreeDataOnDestroy</a></b>: Boolean;</code></td>
-</tr>
-<tr class="list2">
-<td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><code><b><a  href="glBitmap.TglBitmap.html#fFreeDataAfterGenTexture">fFreeDataAfterGenTexture</a></b>: Boolean;</code></td>
-</tr>
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><code><b><a  href="glBitmap.TglBitmap.html#fData">fData</a></b>: PByte;</code></td>
-</tr>
-<tr class="list2">
-<td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><code><b><a  href="glBitmap.TglBitmap.html#fBorderColor">fBorderColor</a></b>: array[0..3] of Single;</code></td>
-</tr>
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><code><b><a  href="glBitmap.TglBitmap.html#fDimension">fDimension</a></b>: <a  href="glBitmap.TglBitmapSize.html">TglBitmapSize</a>;</code></td>
-</tr>
 <tr class="list2">
 <td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><code><b><a  href="glBitmap.TglBitmap.html#fMipMap">fMipMap</a></b>: <a  href="glBitmap.html#TglBitmapMipMap">TglBitmapMipMap</a>;</code></td>
+<td class="itemcode"><code><b><a  href="glBitmap.TglBitmap.html#fFilterMin">fFilterMin</a></b>: GLenum;</code></td>
 </tr>
 <tr class="list">
 <td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><code><b><a  href="glBitmap.TglBitmap.html#fFormat">fFormat</a></b>: <a  href="glBitmap.html#TglBitmapFormat">TglBitmapFormat</a>;</code></td>
+<td class="itemcode"><code><b><a  href="glBitmap.TglBitmap.html#fFilterMag">fFilterMag</a></b>: GLenum;</code></td>
 </tr>
 <tr class="list2">
 <td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><code><b><a  href="glBitmap.TglBitmap.html#fPixelSize">fPixelSize</a></b>: Integer;</code></td>
+<td class="itemcode"><code><b><a  href="glBitmap.TglBitmap.html#fWrapS">fWrapS</a></b>: GLenum;</code></td>
 </tr>
 <tr class="list">
 <td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><code><b><a  href="glBitmap.TglBitmap.html#fRowSize">fRowSize</a></b>: Integer;</code></td>
+<td class="itemcode"><code><b><a  href="glBitmap.TglBitmap.html#fWrapT">fWrapT</a></b>: GLenum;</code></td>
 </tr>
 <tr class="list2">
 <td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><code><b><a  href="glBitmap.TglBitmap.html#fFilterMin">fFilterMin</a></b>: GLenum;</code></td>
+<td class="itemcode"><code><b><a  href="glBitmap.TglBitmap.html#fWrapR">fWrapR</a></b>: GLenum;</code></td>
 </tr>
 <tr class="list">
 <td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><code><b><a  href="glBitmap.TglBitmap.html#fFilterMag">fFilterMag</a></b>: GLenum;</code></td>
+<td class="itemcode"><code><b><a  href="glBitmap.TglBitmap.html#fAnisotropic">fAnisotropic</a></b>: Integer;</code></td>
 </tr>
 <tr class="list2">
 <td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><code><b><a  href="glBitmap.TglBitmap.html#fWrapS">fWrapS</a></b>: GLenum;</code></td>
+<td class="itemcode"><code><b><a  href="glBitmap.TglBitmap.html#fBorderColor">fBorderColor</a></b>: array[0..3] of Single;</code></td>
 </tr>
 <tr class="list">
 <td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><code><b><a  href="glBitmap.TglBitmap.html#fWrapT">fWrapT</a></b>: GLenum;</code></td>
+<td class="itemcode"><code><b><a  href="glBitmap.TglBitmap.html#fSwizzle">fSwizzle</a></b>: array[0..3] of GLenum;</code></td>
 </tr>
 <tr class="list2">
 <td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><code><b><a  href="glBitmap.TglBitmap.html#fWrapR">fWrapR</a></b>: GLenum;</code></td>
+<td class="itemcode"><code><b><a  href="glBitmap.TglBitmap.html#fDimension">fDimension</a></b>: <a  href="glBitmap.TglBitmapSize.html">TglBitmapSize</a>;</code></td>
 </tr>
 <tr class="list">
 <td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><code><b><a  href="glBitmap.TglBitmap.html#fSwizzle">fSwizzle</a></b>: array[0..3] of GLenum;</code></td>
+<td class="itemcode"><code><b><a  href="glBitmap.TglBitmap.html#fMipMap">fMipMap</a></b>: <a  href="glBitmap.html#TglBitmapMipMap">TglBitmapMipMap</a>;</code></td>
 </tr>
 <tr class="list2">
 <td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><code><b><a  href="glBitmap.TglBitmap.html#fFilename">fFilename</a></b>: String;</code></td>
+<td class="itemcode"><code><b><a  href="glBitmap.TglBitmap.html#fCustomData">fCustomData</a></b>: Pointer;</code></td>
 </tr>
 <tr class="list">
 <td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
@@ -115,48 +91,28 @@ base class for all glBitmap classes. used to manage OpenGL texture objects and t
 <td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
 <td class="itemcode"><code><b><a  href="glBitmap.TglBitmap.html#fCustomNameW">fCustomNameW</a></b>: WideString;</code></td>
 </tr>
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><code><b><a  href="glBitmap.TglBitmap.html#fCustomData">fCustomData</a></b>: Pointer;</code></td>
-</tr>
 </table>
 <a name="PasDoc-Methods"></a><h3 class="summary">Methods</h3>
 <table class="summary wide_list">
 <tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="private.gif" alt="Private" title="Private"></a></td>
-<td class="itemcode"><code>function <b><a  href="glBitmap.TglBitmap.html#GetFormatDesc">GetFormatDesc</a></b>: <a  href="glBitmap.TglBitmapFormatDescriptor.html">TglBitmapFormatDescriptor</a>;</code></td>
-</tr>
-<tr class="list2">
 <td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
 <td class="itemcode"><code>function <b><a  href="glBitmap.TglBitmap.html#GetWidth">GetWidth</a></b>: Integer; virtual;</code></td>
 </tr>
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><code>function <b><a  href="glBitmap.TglBitmap.html#GetHeight">GetHeight</a></b>: Integer; virtual;</code></td>
-</tr>
 <tr class="list2">
 <td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><code>function <b><a  href="glBitmap.TglBitmap.html#GetFileWidth">GetFileWidth</a></b>: Integer; virtual;</code></td>
+<td class="itemcode"><code>function <b><a  href="glBitmap.TglBitmap.html#GetHeight">GetHeight</a></b>: Integer; virtual;</code></td>
 </tr>
 <tr class="list">
 <td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><code>function <b><a  href="glBitmap.TglBitmap.html#GetFileHeight">GetFileHeight</a></b>: Integer; virtual;</code></td>
-</tr>
-<tr class="list2">
-<td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
 <td class="itemcode"><code>procedure <b><a  href="glBitmap.TglBitmap.html#SetCustomData">SetCustomData</a></b>(const aValue: Pointer);</code></td>
 </tr>
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><code>procedure <b><a  href="glBitmap.TglBitmap.html#SetCustomName">SetCustomName</a></b>(const aValue: String);</code></td>
-</tr>
 <tr class="list2">
 <td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><code>procedure <b><a  href="glBitmap.TglBitmap.html#SetCustomNameW">SetCustomNameW</a></b>(const aValue: WideString);</code></td>
+<td class="itemcode"><code>procedure <b><a  href="glBitmap.TglBitmap.html#SetCustomName">SetCustomName</a></b>(const aValue: String);</code></td>
 </tr>
 <tr class="list">
 <td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><code>procedure <b><a  href="glBitmap.TglBitmap.html#SetFreeDataOnDestroy">SetFreeDataOnDestroy</a></b>(const aValue: Boolean);</code></td>
+<td class="itemcode"><code>procedure <b><a  href="glBitmap.TglBitmap.html#SetCustomNameW">SetCustomNameW</a></b>(const aValue: WideString);</code></td>
 </tr>
 <tr class="list2">
 <td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
@@ -164,14 +120,6 @@ base class for all glBitmap classes. used to manage OpenGL texture objects and t
 </tr>
 <tr class="list">
 <td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><code>procedure <b><a  href="glBitmap.TglBitmap.html#SetFormat">SetFormat</a></b>(const aValue: <a  href="glBitmap.html#TglBitmapFormat">TglBitmapFormat</a>);</code></td>
-</tr>
-<tr class="list2">
-<td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><code>procedure <b><a  href="glBitmap.TglBitmap.html#SetFreeDataAfterGenTexture">SetFreeDataAfterGenTexture</a></b>(const aValue: Boolean);</code></td>
-</tr>
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
 <td class="itemcode"><code>procedure <b><a  href="glBitmap.TglBitmap.html#SetID">SetID</a></b>(const aValue: Cardinal);</code></td>
 </tr>
 <tr class="list2">
@@ -195,22 +143,6 @@ base class for all glBitmap classes. used to manage OpenGL texture objects and t
 <td class="itemcode"><code>procedure <b><a  href="glBitmap.TglBitmap.html#SetupParameters">SetupParameters</a></b>();</code></td>
 </tr>
 <tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><code>procedure <b><a  href="glBitmap.TglBitmap.html#SetDataPointer">SetDataPointer</a></b>(var aData: PByte; const aFormat: <a  href="glBitmap.html#TglBitmapFormat">TglBitmapFormat</a>; const aWidth: Integer = -1; const aHeight: Integer = -1); virtual;</code></td>
-</tr>
-<tr class="list2">
-<td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><code>procedure <b><a  href="glBitmap.TglBitmap.html#GenTexture">GenTexture</a></b>(const aTestTextureSize: Boolean = true); virtual; abstract;</code></td>
-</tr>
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><code>function <b><a  href="glBitmap.TglBitmap.html#FlipHorz">FlipHorz</a></b>: Boolean; virtual;</code></td>
-</tr>
-<tr class="list2">
-<td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><code>function <b><a  href="glBitmap.TglBitmap.html#FlipVert">FlipVert</a></b>: Boolean; virtual;</code></td>
-</tr>
-<tr class="list">
 <td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
 <td class="itemcode"><code>procedure <b><a  href="glBitmap.TglBitmap.html#AfterConstruction">AfterConstruction</a></b>; override;</code></td>
 </tr>
@@ -220,126 +152,6 @@ base class for all glBitmap classes. used to manage OpenGL texture objects and t
 </tr>
 <tr class="list">
 <td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><code>procedure <b><a  href="glBitmap.TglBitmap.html#PrepareResType">PrepareResType</a></b>(var aResource: String; var aResType: PChar);</code></td>
-</tr>
-<tr class="list2">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><code>procedure <b><a  href="glBitmap.TglBitmap.html#LoadFromFile">LoadFromFile</a></b>(const aFilename: String);</code></td>
-</tr>
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><code>procedure <b><a  href="glBitmap.TglBitmap.html#LoadFromStream">LoadFromStream</a></b>(const aStream: TStream); virtual;</code></td>
-</tr>
-<tr class="list2">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><code>procedure <b><a  href="glBitmap.TglBitmap.html#LoadFromFunc">LoadFromFunc</a></b>(const aSize: <a  href="glBitmap.TglBitmapSize.html">TglBitmapSize</a>; const aFunc: <a  href="glBitmap.html#TglBitmapFunction">TglBitmapFunction</a>; const aFormat: <a  href="glBitmap.html#TglBitmapFormat">TglBitmapFormat</a>; const aArgs: Pointer = nil);</code></td>
-</tr>
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><code>procedure <b><a  href="glBitmap.TglBitmap.html#LoadFromResource">LoadFromResource</a></b>(const aInstance: Cardinal; aResource: String; aResType: PChar = nil);</code></td>
-</tr>
-<tr class="list2">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><code>procedure <b><a  href="glBitmap.TglBitmap.html#LoadFromResourceID">LoadFromResourceID</a></b>(const aInstance: Cardinal; const aResourceID: Integer; const aResType: PChar);</code></td>
-</tr>
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><code>procedure <b><a  href="glBitmap.TglBitmap.html#SaveToFile">SaveToFile</a></b>(const aFilename: String; const aFileType: <a  href="glBitmap.html#TglBitmapFileType">TglBitmapFileType</a>);</code></td>
-</tr>
-<tr class="list2">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><code>procedure <b><a  href="glBitmap.TglBitmap.html#SaveToStream">SaveToStream</a></b>(const aStream: TStream; const aFileType: <a  href="glBitmap.html#TglBitmapFileType">TglBitmapFileType</a>); virtual;</code></td>
-</tr>
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><code>function <b><a  href="glBitmap.TglBitmap.html#Convert">Convert</a></b>(const aFunc: <a  href="glBitmap.html#TglBitmapFunction">TglBitmapFunction</a>; const aCreateTemp: Boolean; const aArgs: Pointer = nil): Boolean; overload;</code></td>
-</tr>
-<tr class="list2">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><code>function <b><a  href="glBitmap.TglBitmap.html#Convert">Convert</a></b>(const aSource: <a  href="glBitmap.TglBitmap.html">TglBitmap</a>; const aFunc: <a  href="glBitmap.html#TglBitmapFunction">TglBitmapFunction</a>; aCreateTemp: Boolean; const aFormat: <a  href="glBitmap.html#TglBitmapFormat">TglBitmapFormat</a>; const aArgs: Pointer = nil): Boolean; overload;</code></td>
-</tr>
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><code>function <b><a  href="glBitmap.TglBitmap.html#ConvertTo">ConvertTo</a></b>(const aFormat: <a  href="glBitmap.html#TglBitmapFormat">TglBitmapFormat</a>): Boolean; virtual;</code></td>
-</tr>
-<tr class="list2">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><code>function <b><a  href="glBitmap.TglBitmap.html#AddAlphaFromResource">AddAlphaFromResource</a></b>(const aInstance: Cardinal; aResource: String; aResType: PChar = nil; const aFunc: <a  href="glBitmap.html#TglBitmapFunction">TglBitmapFunction</a> = nil; const aArgs: Pointer = nil): Boolean;</code></td>
-</tr>
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><code>function <b><a  href="glBitmap.TglBitmap.html#AddAlphaFromResourceID">AddAlphaFromResourceID</a></b>(const aInstance: Cardinal; const aResourceID: Integer; const aResType: PChar; const aFunc: <a  href="glBitmap.html#TglBitmapFunction">TglBitmapFunction</a> = nil; const aArgs: Pointer = nil): Boolean;</code></td>
-</tr>
-<tr class="list2">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><code>function <b><a  href="glBitmap.TglBitmap.html#AddAlphaFromFunc">AddAlphaFromFunc</a></b>(const aFunc: <a  href="glBitmap.html#TglBitmapFunction">TglBitmapFunction</a>; const aArgs: Pointer = nil): Boolean; virtual;</code></td>
-</tr>
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><code>function <b><a  href="glBitmap.TglBitmap.html#AddAlphaFromFile">AddAlphaFromFile</a></b>(const aFileName: String; const aFunc: <a  href="glBitmap.html#TglBitmapFunction">TglBitmapFunction</a> = nil; const aArgs: Pointer = nil): Boolean;</code></td>
-</tr>
-<tr class="list2">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><code>function <b><a  href="glBitmap.TglBitmap.html#AddAlphaFromStream">AddAlphaFromStream</a></b>(const aStream: TStream; const aFunc: <a  href="glBitmap.html#TglBitmapFunction">TglBitmapFunction</a> = nil; const aArgs: Pointer = nil): Boolean;</code></td>
-</tr>
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><code>function <b><a  href="glBitmap.TglBitmap.html#AddAlphaFromGlBitmap">AddAlphaFromGlBitmap</a></b>(const aBitmap: <a  href="glBitmap.TglBitmap.html">TglBitmap</a>; aFunc: <a  href="glBitmap.html#TglBitmapFunction">TglBitmapFunction</a> = nil; const aArgs: Pointer = nil): Boolean;</code></td>
-</tr>
-<tr class="list2">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><code>function <b><a  href="glBitmap.TglBitmap.html#AddAlphaFromColorKey">AddAlphaFromColorKey</a></b>(const aRed, aGreen, aBlue: Byte; const aDeviation: Byte = 0): Boolean;</code></td>
-</tr>
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><code>function <b><a  href="glBitmap.TglBitmap.html#AddAlphaFromColorKeyRange">AddAlphaFromColorKeyRange</a></b>(const aRed, aGreen, aBlue: Cardinal; const aDeviation: Cardinal = 0): Boolean;</code></td>
-</tr>
-<tr class="list2">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><code>function <b><a  href="glBitmap.TglBitmap.html#AddAlphaFromColorKeyFloat">AddAlphaFromColorKeyFloat</a></b>(const aRed, aGreen, aBlue: Single; const aDeviation: Single = 0): Boolean;</code></td>
-</tr>
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><code>function <b><a  href="glBitmap.TglBitmap.html#AddAlphaFromValue">AddAlphaFromValue</a></b>(const aAlpha: Byte): Boolean;</code></td>
-</tr>
-<tr class="list2">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><code>function <b><a  href="glBitmap.TglBitmap.html#AddAlphaFromValueRange">AddAlphaFromValueRange</a></b>(const aAlpha: Cardinal): Boolean;</code></td>
-</tr>
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><code>function <b><a  href="glBitmap.TglBitmap.html#AddAlphaFromValueFloat">AddAlphaFromValueFloat</a></b>(const aAlpha: Single): Boolean;</code></td>
-</tr>
-<tr class="list2">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><code>function <b><a  href="glBitmap.TglBitmap.html#RemoveAlpha">RemoveAlpha</a></b>: Boolean; virtual;</code></td>
-</tr>
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><code>function <b><a  href="glBitmap.TglBitmap.html#Clone">Clone</a></b>: <a  href="glBitmap.TglBitmap.html">TglBitmap</a>;</code></td>
-</tr>
-<tr class="list2">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><code>procedure <b><a  href="glBitmap.TglBitmap.html#Invert">Invert</a></b>(const aUseRGB: Boolean = true; const aUseAlpha: Boolean = false);</code></td>
-</tr>
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><code>procedure <b><a  href="glBitmap.TglBitmap.html#FreeData">FreeData</a></b>;</code></td>
-</tr>
-<tr class="list2">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><code>procedure <b><a  href="glBitmap.TglBitmap.html#FillWithColor">FillWithColor</a></b>(const aRed, aGreen, aBlue: Byte; const aAlpha: Byte = 255);</code></td>
-</tr>
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><code>procedure <b><a  href="glBitmap.TglBitmap.html#FillWithColorRange">FillWithColorRange</a></b>(const aRed, aGreen, aBlue: Cardinal; const aAlpha: Cardinal = $FFFFFFFF);</code></td>
-</tr>
-<tr class="list2">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><code>procedure <b><a  href="glBitmap.TglBitmap.html#FillWithColorFloat">FillWithColorFloat</a></b>(const aRed, aGreen, aBlue: Single; const aAlpha: Single = 1.0);</code></td>
-</tr>
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
 <td class="itemcode"><code>procedure <b><a  href="glBitmap.TglBitmap.html#SetFilter">SetFilter</a></b>(const aMin, aMag: GLenum);</code></td>
 </tr>
 <tr class="list2">
@@ -360,63 +172,15 @@ base class for all glBitmap classes. used to manage OpenGL texture objects and t
 </tr>
 <tr class="list2">
 <td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><code>constructor <b><a  href="glBitmap.TglBitmap.html#Create">Create</a></b>; overload;</code></td>
-</tr>
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><code>constructor <b><a  href="glBitmap.TglBitmap.html#Create">Create</a></b>(const aFileName: String); overload;</code></td>
-</tr>
-<tr class="list2">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><code>constructor <b><a  href="glBitmap.TglBitmap.html#Create">Create</a></b>(const aStream: TStream); overload;</code></td>
-</tr>
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><code>constructor <b><a  href="glBitmap.TglBitmap.html#Create">Create</a></b>(const aSize: <a  href="glBitmap.TglBitmapSize.html">TglBitmapSize</a>; const aFormat: <a  href="glBitmap.html#TglBitmapFormat">TglBitmapFormat</a>; aData: PByte = nil); overload;</code></td>
-</tr>
-<tr class="list2">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><code>constructor <b><a  href="glBitmap.TglBitmap.html#Create">Create</a></b>(const aSize: <a  href="glBitmap.TglBitmapSize.html">TglBitmapSize</a>; const aFormat: <a  href="glBitmap.html#TglBitmapFormat">TglBitmapFormat</a>; const aFunc: <a  href="glBitmap.html#TglBitmapFunction">TglBitmapFunction</a>; const aArgs: Pointer = nil); overload;</code></td>
+<td class="itemcode"><code>procedure <b><a  href="glBitmap.TglBitmap.html#UploadData">UploadData</a></b>(const aDataObj: <a  href="glBitmap.TglBitmapData.html">TglBitmapData</a>; const aCheckSize: Boolean = true); virtual;</code></td>
 </tr>
 <tr class="list">
 <td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><code>constructor <b><a  href="glBitmap.TglBitmap.html#Create">Create</a></b>(const aInstance: Cardinal; const aResource: String; const aResType: PChar = nil); overload;</code></td>
+<td class="itemcode"><code>constructor <b><a  href="glBitmap.TglBitmap.html#Create">Create</a></b>; overload;</code></td>
 </tr>
 <tr class="list2">
 <td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><code>constructor <b><a  href="glBitmap.TglBitmap.html#Create">Create</a></b>(const aInstance: Cardinal; const aResourceID: Integer; const aResType: PChar); overload;</code></td>
-</tr>
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="private.gif" alt="Private" title="Private"></a></td>
-<td class="itemcode"><code>function <b><a  href="glBitmap.TglBitmap.html#LoadRAW">LoadRAW</a></b>(const aStream: TStream): Boolean;</code></td>
-</tr>
-<tr class="list2">
-<td class="visibility"><a  href="legend.html"><img  src="private.gif" alt="Private" title="Private"></a></td>
-<td class="itemcode"><code>procedure <b><a  href="glBitmap.TglBitmap.html#SaveRAW">SaveRAW</a></b>(const aStream: TStream);</code></td>
-</tr>
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="private.gif" alt="Private" title="Private"></a></td>
-<td class="itemcode"><code>function <b><a  href="glBitmap.TglBitmap.html#LoadBMP">LoadBMP</a></b>(const aStream: TStream): Boolean;</code></td>
-</tr>
-<tr class="list2">
-<td class="visibility"><a  href="legend.html"><img  src="private.gif" alt="Private" title="Private"></a></td>
-<td class="itemcode"><code>procedure <b><a  href="glBitmap.TglBitmap.html#SaveBMP">SaveBMP</a></b>(const aStream: TStream);</code></td>
-</tr>
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="private.gif" alt="Private" title="Private"></a></td>
-<td class="itemcode"><code>function <b><a  href="glBitmap.TglBitmap.html#LoadTGA">LoadTGA</a></b>(const aStream: TStream): Boolean;</code></td>
-</tr>
-<tr class="list2">
-<td class="visibility"><a  href="legend.html"><img  src="private.gif" alt="Private" title="Private"></a></td>
-<td class="itemcode"><code>procedure <b><a  href="glBitmap.TglBitmap.html#SaveTGA">SaveTGA</a></b>(const aStream: TStream);</code></td>
-</tr>
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="private.gif" alt="Private" title="Private"></a></td>
-<td class="itemcode"><code>function <b><a  href="glBitmap.TglBitmap.html#LoadDDS">LoadDDS</a></b>(const aStream: TStream): Boolean;</code></td>
-</tr>
-<tr class="list2">
-<td class="visibility"><a  href="legend.html"><img  src="private.gif" alt="Private" title="Private"></a></td>
-<td class="itemcode"><code>procedure <b><a  href="glBitmap.TglBitmap.html#SaveDDS">SaveDDS</a></b>(const aStream: TStream);</code></td>
+<td class="itemcode"><code>constructor <b><a  href="glBitmap.TglBitmap.html#Create">Create</a></b>(const aData: <a  href="glBitmap.TglBitmapData.html">TglBitmapData</a>); overload;</code></td>
 </tr>
 </table>
 <a name="PasDoc-Properties"></a><h3 class="summary">Properties</h3>
@@ -430,24 +194,16 @@ base class for all glBitmap classes. used to manage OpenGL texture objects and t
 <td class="itemcode"><code>property <b><a  href="glBitmap.TglBitmap.html#Height">Height</a></b>: Integer read <a  href="glBitmap.TglBitmap.html#GetHeight">GetHeight</a>;</code></td>
 </tr>
 <tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><code>property <b><a  href="glBitmap.TglBitmap.html#FileWidth">FileWidth</a></b>: Integer read <a  href="glBitmap.TglBitmap.html#GetFileWidth">GetFileWidth</a>;</code></td>
-</tr>
-<tr class="list2">
-<td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><code>property <b><a  href="glBitmap.TglBitmap.html#FileHeight">FileHeight</a></b>: Integer read <a  href="glBitmap.TglBitmap.html#GetFileHeight">GetFileHeight</a>;</code></td>
-</tr>
-<tr class="list">
 <td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><code>property <b><a  href="glBitmap.TglBitmap.html#ID">ID</a></b>: Cardinal        read <a  href="glBitmap.TglBitmap.html#fID">fID</a>          write <a  href="glBitmap.TglBitmap.html#SetID">SetID</a>;</code></td>
+<td class="itemcode"><code>property <b><a  href="glBitmap.TglBitmap.html#ID">ID</a></b>: Cardinal  read <a  href="glBitmap.TglBitmap.html#fID">fID</a>                  write <a  href="glBitmap.TglBitmap.html#SetID">SetID</a>;</code></td>
 </tr>
 <tr class="list2">
 <td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><code>property <b><a  href="glBitmap.TglBitmap.html#Target">Target</a></b>: Cardinal        read <a  href="glBitmap.TglBitmap.html#fTarget">fTarget</a>      write <a  href="glBitmap.TglBitmap.html#SetTarget">SetTarget</a>;</code></td>
+<td class="itemcode"><code>property <b><a  href="glBitmap.TglBitmap.html#Target">Target</a></b>: Cardinal  read <a  href="glBitmap.TglBitmap.html#fTarget">fTarget</a>              write <a  href="glBitmap.TglBitmap.html#SetTarget">SetTarget</a>;</code></td>
 </tr>
 <tr class="list">
 <td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><code>property <b><a  href="glBitmap.TglBitmap.html#Format">Format</a></b>: <a  href="glBitmap.html#TglBitmapFormat">TglBitmapFormat</a> read <a  href="glBitmap.TglBitmap.html#fFormat">fFormat</a>      write <a  href="glBitmap.TglBitmap.html#SetFormat">SetFormat</a>;</code></td>
+<td class="itemcode"><code>property <b><a  href="glBitmap.TglBitmap.html#DeleteTextureOnFree">DeleteTextureOnFree</a></b>: Boolean   read <a  href="glBitmap.TglBitmap.html#fDeleteTextureOnFree">fDeleteTextureOnFree</a> write <a  href="glBitmap.TglBitmap.html#SetDeleteTextureOnFree">SetDeleteTextureOnFree</a>;</code></td>
 </tr>
 <tr class="list2">
 <td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
@@ -459,44 +215,20 @@ base class for all glBitmap classes. used to manage OpenGL texture objects and t
 </tr>
 <tr class="list2">
 <td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><code>property <b><a  href="glBitmap.TglBitmap.html#FormatDesc">FormatDesc</a></b>: <a  href="glBitmap.TglBitmapFormatDescriptor.html">TglBitmapFormatDescriptor</a> read <a  href="glBitmap.TglBitmap.html#GetFormatDesc">GetFormatDesc</a>;</code></td>
-</tr>
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><code>property <b><a  href="glBitmap.TglBitmap.html#Filename">Filename</a></b>: String     read <a  href="glBitmap.TglBitmap.html#fFilename">fFilename</a>;</code></td>
-</tr>
-<tr class="list2">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><code>property <b><a  href="glBitmap.TglBitmap.html#CustomName">CustomName</a></b>: String     read <a  href="glBitmap.TglBitmap.html#fCustomName">fCustomName</a>  write <a  href="glBitmap.TglBitmap.html#SetCustomName">SetCustomName</a>;</code></td>
-</tr>
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><code>property <b><a  href="glBitmap.TglBitmap.html#CustomNameW">CustomNameW</a></b>: WideString read <a  href="glBitmap.TglBitmap.html#fCustomNameW">fCustomNameW</a> write <a  href="glBitmap.TglBitmap.html#SetCustomNameW">SetCustomNameW</a>;</code></td>
-</tr>
-<tr class="list2">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
 <td class="itemcode"><code>property <b><a  href="glBitmap.TglBitmap.html#CustomData">CustomData</a></b>: Pointer    read <a  href="glBitmap.TglBitmap.html#fCustomData">fCustomData</a>  write <a  href="glBitmap.TglBitmap.html#SetCustomData">SetCustomData</a>;</code></td>
 </tr>
 <tr class="list">
 <td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><code>property <b><a  href="glBitmap.TglBitmap.html#DeleteTextureOnFree">DeleteTextureOnFree</a></b>: Boolean read <a  href="glBitmap.TglBitmap.html#fDeleteTextureOnFree">fDeleteTextureOnFree</a>     write <a  href="glBitmap.TglBitmap.html#SetDeleteTextureOnFree">SetDeleteTextureOnFree</a>;</code></td>
+<td class="itemcode"><code>property <b><a  href="glBitmap.TglBitmap.html#CustomName">CustomName</a></b>: String     read <a  href="glBitmap.TglBitmap.html#fCustomName">fCustomName</a>  write <a  href="glBitmap.TglBitmap.html#SetCustomName">SetCustomName</a>;</code></td>
 </tr>
 <tr class="list2">
 <td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><code>property <b><a  href="glBitmap.TglBitmap.html#FreeDataOnDestroy">FreeDataOnDestroy</a></b>: Boolean read <a  href="glBitmap.TglBitmap.html#fFreeDataOnDestroy">fFreeDataOnDestroy</a>       write <a  href="glBitmap.TglBitmap.html#SetFreeDataOnDestroy">SetFreeDataOnDestroy</a>;</code></td>
+<td class="itemcode"><code>property <b><a  href="glBitmap.TglBitmap.html#CustomNameW">CustomNameW</a></b>: WideString read <a  href="glBitmap.TglBitmap.html#fCustomNameW">fCustomNameW</a> write <a  href="glBitmap.TglBitmap.html#SetCustomNameW">SetCustomNameW</a>;</code></td>
 </tr>
 <tr class="list">
 <td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><code>property <b><a  href="glBitmap.TglBitmap.html#FreeDataAfterGenTexture">FreeDataAfterGenTexture</a></b>: Boolean read <a  href="glBitmap.TglBitmap.html#fFreeDataAfterGenTexture">fFreeDataAfterGenTexture</a> write <a  href="glBitmap.TglBitmap.html#SetFreeDataAfterGenTexture">SetFreeDataAfterGenTexture</a>;</code></td>
-</tr>
-<tr class="list2">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
 <td class="itemcode"><code>property <b><a  href="glBitmap.TglBitmap.html#Dimension">Dimension</a></b>: <a  href="glBitmap.TglBitmapSize.html">TglBitmapSize</a> read <a  href="glBitmap.TglBitmap.html#fDimension">fDimension</a>;</code></td>
 </tr>
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><code>property <b><a  href="glBitmap.TglBitmap.html#Data">Data</a></b>: PByte         read <a  href="glBitmap.TglBitmap.html#fData">fData</a>;</code></td>
-</tr>
 </table>
 <h2 class="description">Description</h2>
 <h3 class="detail">Fields</h3>
@@ -523,181 +255,121 @@ texture target (e.g. GL_TEXTURE_2D)</p>
 <table class="detail wide_list">
 <tr class="list">
 <td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><a name="fAnisotropic"></a><code><b>fAnisotropic</b>: Integer;</code></td>
+<td class="itemcode"><a name="fDeleteTextureOnFree"></a><code><b>fDeleteTextureOnFree</b>: Boolean;</code></td>
 </tr>
 <tr><td colspan="2">
 <p>
-anisotropic level</p>
+delete OpenGL texture object when this object is destroyed</p>
 </td></tr>
 </table>
 <table class="detail wide_list">
 <tr class="list">
 <td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><a name="fDeleteTextureOnFree"></a><code><b>fDeleteTextureOnFree</b>: Boolean;</code></td>
+<td class="itemcode"><a name="fFilterMin"></a><code><b>fFilterMin</b>: GLenum;</code></td>
 </tr>
 <tr><td colspan="2">
 <p>
-delete OpenGL texture object when this object is destroyed</p>
+min filter to apply to the texture</p>
 </td></tr>
 </table>
 <table class="detail wide_list">
 <tr class="list">
 <td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><a name="fFreeDataOnDestroy"></a><code><b>fFreeDataOnDestroy</b>: Boolean;</code></td>
+<td class="itemcode"><a name="fFilterMag"></a><code><b>fFilterMag</b>: GLenum;</code></td>
 </tr>
 <tr><td colspan="2">
 <p>
-free stored data when this object is destroyed</p>
+mag filter to apply to the texture</p>
 </td></tr>
 </table>
 <table class="detail wide_list">
 <tr class="list">
 <td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><a name="fFreeDataAfterGenTexture"></a><code><b>fFreeDataAfterGenTexture</b>: Boolean;</code></td>
+<td class="itemcode"><a name="fWrapS"></a><code><b>fWrapS</b>: GLenum;</code></td>
 </tr>
 <tr><td colspan="2">
 <p>
-free stored data after data was uploaded to video card</p>
+texture wrapping for x axis</p>
 </td></tr>
 </table>
 <table class="detail wide_list">
 <tr class="list">
 <td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><a name="fData"></a><code><b>fData</b>: PByte;</code></td>
+<td class="itemcode"><a name="fWrapT"></a><code><b>fWrapT</b>: GLenum;</code></td>
 </tr>
 <tr><td colspan="2">
 <p>
-data of this texture</p>
+texture wrapping for y axis</p>
 </td></tr>
 </table>
 <table class="detail wide_list">
 <tr class="list">
 <td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><a name="fBorderColor"></a><code><b>fBorderColor</b>: array[0..3] of Single;</code></td>
+<td class="itemcode"><a name="fWrapR"></a><code><b>fWrapR</b>: GLenum;</code></td>
 </tr>
 <tr><td colspan="2">
 <p>
-color of the texture border</p>
+texture wrapping for z axis</p>
 </td></tr>
 </table>
 <table class="detail wide_list">
 <tr class="list">
 <td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><a name="fDimension"></a><code><b>fDimension</b>: <a  href="glBitmap.TglBitmapSize.html">TglBitmapSize</a>;</code></td>
+<td class="itemcode"><a name="fAnisotropic"></a><code><b>fAnisotropic</b>: Integer;</code></td>
 </tr>
 <tr><td colspan="2">
 <p>
-size of this texture</p>
+anisotropic level</p>
 </td></tr>
 </table>
 <table class="detail wide_list">
 <tr class="list">
 <td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><a name="fMipMap"></a><code><b>fMipMap</b>: <a  href="glBitmap.html#TglBitmapMipMap">TglBitmapMipMap</a>;</code></td>
+<td class="itemcode"><a name="fBorderColor"></a><code><b>fBorderColor</b>: array[0..3] of Single;</code></td>
 </tr>
 <tr><td colspan="2">
 <p>
-mipmap type</p>
+color of the texture border</p>
 </td></tr>
 </table>
 <table class="detail wide_list">
 <tr class="list">
 <td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><a name="fFormat"></a><code><b>fFormat</b>: <a  href="glBitmap.html#TglBitmapFormat">TglBitmapFormat</a>;</code></td>
+<td class="itemcode"><a name="fSwizzle"></a><code><b>fSwizzle</b>: array[0..3] of GLenum;</code></td>
 </tr>
 <tr><td colspan="2">
 <p>
-format the texture data is stored in</p>
+color channel swizzle</p>
 </td></tr>
 </table>
 <table class="detail wide_list">
 <tr class="list">
 <td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><a name="fPixelSize"></a><code><b>fPixelSize</b>: Integer;</code></td>
+<td class="itemcode"><a name="fDimension"></a><code><b>fDimension</b>: <a  href="glBitmap.TglBitmapSize.html">TglBitmapSize</a>;</code></td>
 </tr>
 <tr><td colspan="2">
 <p>
-size of one pixel (in byte)</p>
+size of this texture</p>
 </td></tr>
 </table>
 <table class="detail wide_list">
 <tr class="list">
 <td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><a name="fRowSize"></a><code><b>fRowSize</b>: Integer;</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-size of one pixel row (in byte)</p>
-</td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><a name="fFilterMin"></a><code><b>fFilterMin</b>: GLenum;</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-min filter to apply to the texture</p>
-</td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><a name="fFilterMag"></a><code><b>fFilterMag</b>: GLenum;</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-mag filter to apply to the texture</p>
-</td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><a name="fWrapS"></a><code><b>fWrapS</b>: GLenum;</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-texture wrapping for x axis</p>
-</td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><a name="fWrapT"></a><code><b>fWrapT</b>: GLenum;</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-texture wrapping for y axis</p>
-</td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><a name="fWrapR"></a><code><b>fWrapR</b>: GLenum;</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-texture wrapping for z axis</p>
-</td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><a name="fSwizzle"></a><code><b>fSwizzle</b>: array[0..3] of GLenum;</code></td>
+<td class="itemcode"><a name="fMipMap"></a><code><b>fMipMap</b>: <a  href="glBitmap.html#TglBitmapMipMap">TglBitmapMipMap</a>;</code></td>
 </tr>
 <tr><td colspan="2">
 <p>
-color channel swizzle</p>
+mipmap type</p>
 </td></tr>
 </table>
 <table class="detail wide_list">
 <tr class="list">
 <td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><a name="fFilename"></a><code><b>fFilename</b>: String;</code></td>
+<td class="itemcode"><a name="fCustomData"></a><code><b>fCustomData</b>: Pointer;</code></td>
 </tr>
 <tr><td colspan="2">
 <p>
-filename the texture was load from</p>
+user defined data</p>
 </td></tr>
 </table>
 <table class="detail wide_list">
@@ -720,28 +392,9 @@ user defined name</p>
 user defined name</p>
 </td></tr>
 </table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><a name="fCustomData"></a><code><b>fCustomData</b>: Pointer;</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-user defined data</p>
-</td></tr>
-</table>
 <h3 class="detail">Methods</h3>
 <table class="detail wide_list">
 <tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="private.gif" alt="Private" title="Private"></a></td>
-<td class="itemcode"><a name="GetFormatDesc"></a><code>function <b>GetFormatDesc</b>: <a  href="glBitmap.TglBitmapFormatDescriptor.html">TglBitmapFormatDescriptor</a>;</code></td>
-</tr>
-<tr><td colspan="2">
-&nbsp;<h6 class="description_section">Returns</h6>
-<p class="return">format descriptor that describes the format of the stored data</p></td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
 <td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
 <td class="itemcode"><a name="GetWidth"></a><code>function <b>GetWidth</b>: Integer; virtual;</code></td>
 </tr>
@@ -761,24 +414,6 @@ user defined data</p>
 <table class="detail wide_list">
 <tr class="list">
 <td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><a name="GetFileWidth"></a><code>function <b>GetFileWidth</b>: Integer; virtual;</code></td>
-</tr>
-<tr><td colspan="2">
-&nbsp;<h6 class="description_section">Returns</h6>
-<p class="return">the width of the texture or 1 if the width is zero</p></td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><a name="GetFileHeight"></a><code>function <b>GetFileHeight</b>: Integer; virtual;</code></td>
-</tr>
-<tr><td colspan="2">
-&nbsp;<h6 class="description_section">Returns</h6>
-<p class="return">the height of the texture or 1 if the height is zero</p></td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
 <td class="itemcode"><a name="SetCustomData"></a><code>procedure <b>SetCustomData</b>(const aValue: Pointer);</code></td>
 </tr>
 <tr><td colspan="2">
@@ -798,742 +433,102 @@ set a new value for fCustomName</p>
 </table>
 <table class="detail wide_list">
 <tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><a name="SetCustomNameW"></a><code>procedure <b>SetCustomNameW</b>(const aValue: WideString);</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-set a new value for fCustomNameW</p>
-</td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><a name="SetFreeDataOnDestroy"></a><code>procedure <b>SetFreeDataOnDestroy</b>(const aValue: Boolean);</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-set new value for fFreeDataOnDestroy</p>
-</td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><a name="SetDeleteTextureOnFree"></a><code>procedure <b>SetDeleteTextureOnFree</b>(const aValue: Boolean);</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-set new value for fDeleteTextureOnFree</p>
-</td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><a name="SetFormat"></a><code>procedure <b>SetFormat</b>(const aValue: <a  href="glBitmap.html#TglBitmapFormat">TglBitmapFormat</a>);</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-set new value for the data format. only possible if new format has the same pixel size. if you want to convert the texture data, see ConvertTo function</p>
-</td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><a name="SetFreeDataAfterGenTexture"></a><code>procedure <b>SetFreeDataAfterGenTexture</b>(const aValue: Boolean);</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-set new value for fFreeDataAfterGenTexture</p>
-</td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><a name="SetID"></a><code>procedure <b>SetID</b>(const aValue: Cardinal);</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-set name of OpenGL texture object</p>
-</td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><a name="SetMipMap"></a><code>procedure <b>SetMipMap</b>(const aValue: <a  href="glBitmap.html#TglBitmapMipMap">TglBitmapMipMap</a>);</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-set new value for fMipMap</p>
-</td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><a name="SetTarget"></a><code>procedure <b>SetTarget</b>(const aValue: Cardinal);</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-set new value for target</p>
-</td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><a name="SetAnisotropic"></a><code>procedure <b>SetAnisotropic</b>(const aValue: Integer);</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-set new value for fAnisotrophic</p>
-</td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><a name="CreateID"></a><code>procedure <b>CreateID</b>;</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-create OpenGL texture object (delete exisiting object if exists)</p>
-</td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><a name="SetupParameters"></a><code>procedure <b>SetupParameters</b>();</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-setup texture parameters</p>
-</td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><a name="SetDataPointer"></a><code>procedure <b>SetDataPointer</b>(var aData: PByte; const aFormat: <a  href="glBitmap.html#TglBitmapFormat">TglBitmapFormat</a>; const aWidth: Integer = -1; const aHeight: Integer = -1); virtual;</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-set data pointer of texture data    </p>
-<h6 class="description_section">Parameters</h6>
-<dl class="parameters">
-<dt>aData</dt>
-<dd>pointer to new texture data (be carefull, aData could be freed by this function)</dd>
-<dt>aFormat</dt>
-<dd>format of the data stored at aData</dd>
-<dt>aWidth</dt>
-<dd>width of the texture data</dd>
-<dt>aHeight</dt>
-<dd>height of the texture data</dd>
-</dl>
-</td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><a name="GenTexture"></a><code>procedure <b>GenTexture</b>(const aTestTextureSize: Boolean = true); virtual; abstract;</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-generate texture (upload texture data to video card) </p>
-<h6 class="description_section">Parameters</h6>
-<dl class="parameters">
-<dt>aTestTextureSize</dt>
-<dd>test texture size before uploading and raise exception if something is wrong</dd>
-</dl>
-</td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><a name="FlipHorz"></a><code>function <b>FlipHorz</b>: Boolean; virtual;</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-flip texture horizontal </p>
-<h6 class="description_section">Returns</h6>
-<p class="return"><code>True</code> in success, <code>False</code> otherwise</p></td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><a name="FlipVert"></a><code>function <b>FlipVert</b>: Boolean; virtual;</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-flip texture vertical </p>
-<h6 class="description_section">Returns</h6>
-<p class="return"><code>True</code> in success, <code>False</code> otherwise</p></td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><a name="AfterConstruction"></a><code>procedure <b>AfterConstruction</b>; override;</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-this method is called after the constructor and sets the default values of this object</p>
-</td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><a name="BeforeDestruction"></a><code>procedure <b>BeforeDestruction</b>; override;</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-this method is called before the destructor and does some cleanup</p>
-</td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><a name="PrepareResType"></a><code>procedure <b>PrepareResType</b>(var aResource: String; var aResType: PChar);</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-splits a resource identifier into the resource and it's type  </p>
-<h6 class="description_section">Parameters</h6>
-<dl class="parameters">
-<dt>aResource</dt>
-<dd>resource identifier to split and store name in</dd>
-<dt>aResType</dt>
-<dd>type of the resource</dd>
-</dl>
-</td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><a name="LoadFromFile"></a><code>procedure <b>LoadFromFile</b>(const aFilename: String);</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-load a texture from a file </p>
-<h6 class="description_section">Parameters</h6>
-<dl class="parameters">
-<dt>aFilename</dt>
-<dd>file to load texuture from</dd>
-</dl>
-</td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><a name="LoadFromStream"></a><code>procedure <b>LoadFromStream</b>(const aStream: TStream); virtual;</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-load a texture from a stream </p>
-<h6 class="description_section">Parameters</h6>
-<dl class="parameters">
-<dt>aStream</dt>
-<dd>stream to load texture from</dd>
-</dl>
-</td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><a name="LoadFromFunc"></a><code>procedure <b>LoadFromFunc</b>(const aSize: <a  href="glBitmap.TglBitmapSize.html">TglBitmapSize</a>; const aFunc: <a  href="glBitmap.html#TglBitmapFunction">TglBitmapFunction</a>; const aFormat: <a  href="glBitmap.html#TglBitmapFormat">TglBitmapFormat</a>; const aArgs: Pointer = nil);</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-use a function to generate texture data    </p>
-<h6 class="description_section">Parameters</h6>
-<dl class="parameters">
-<dt>aSize</dt>
-<dd>size of the texture</dd>
-<dt>aFunc</dt>
-<dd>callback to use for generation</dd>
-<dt>aFormat</dt>
-<dd>format of the texture data</dd>
-<dt>aArgs</dt>
-<dd>user defined paramaters (use at will)</dd>
-</dl>
-</td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><a name="LoadFromResource"></a><code>procedure <b>LoadFromResource</b>(const aInstance: Cardinal; aResource: String; aResType: PChar = nil);</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-load a texture from a resource   </p>
-<h6 class="description_section">Parameters</h6>
-<dl class="parameters">
-<dt>aInstance</dt>
-<dd>resource handle</dd>
-<dt>aResource</dt>
-<dd>resource indentifier</dd>
-<dt>aResType</dt>
-<dd>resource type (if known)</dd>
-</dl>
-</td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><a name="LoadFromResourceID"></a><code>procedure <b>LoadFromResourceID</b>(const aInstance: Cardinal; const aResourceID: Integer; const aResType: PChar);</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-load a texture from a resource id   </p>
-<h6 class="description_section">Parameters</h6>
-<dl class="parameters">
-<dt>aInstance</dt>
-<dd>resource handle</dd>
-<dt>aResource</dt>
-<dd>resource ID</dd>
-<dt>aResType</dt>
-<dd>resource type</dd>
-</dl>
-</td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><a name="SaveToFile"></a><code>procedure <b>SaveToFile</b>(const aFilename: String; const aFileType: <a  href="glBitmap.html#TglBitmapFileType">TglBitmapFileType</a>);</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-save texture data to a file  </p>
-<h6 class="description_section">Parameters</h6>
-<dl class="parameters">
-<dt>aFilename</dt>
-<dd>filename to store texture in</dd>
-<dt>aFileType</dt>
-<dd>file type to store data into</dd>
-</dl>
-</td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><a name="SaveToStream"></a><code>procedure <b>SaveToStream</b>(const aStream: TStream; const aFileType: <a  href="glBitmap.html#TglBitmapFileType">TglBitmapFileType</a>); virtual;</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-save texture data to a stream  </p>
-<h6 class="description_section">Parameters</h6>
-<dl class="parameters">
-<dt>aFilename</dt>
-<dd>filename to store texture in</dd>
-<dt>aFileType</dt>
-<dd>file type to store data into</dd>
-</dl>
-</td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><a name="Convert"></a><code>function <b>Convert</b>(const aFunc: <a  href="glBitmap.html#TglBitmapFunction">TglBitmapFunction</a>; const aCreateTemp: Boolean; const aArgs: Pointer = nil): Boolean; overload;</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-convert texture data using a user defined callback    </p>
-<h6 class="description_section">Parameters</h6>
-<dl class="parameters">
-<dt>aFunc</dt>
-<dd>callback to use for converting</dd>
-<dt>aCreateTemp</dt>
-<dd>create a temporary buffer to use for converting</dd>
-<dt>aArgs</dt>
-<dd>user defined paramters (use at will)</dd>
-</dl>
-<h6 class="description_section">Returns</h6>
-<p class="return"><code>True</code> if converting was successful, <code>False</code> otherwise</p></td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><a name="Convert"></a><code>function <b>Convert</b>(const aSource: <a  href="glBitmap.TglBitmap.html">TglBitmap</a>; const aFunc: <a  href="glBitmap.html#TglBitmapFunction">TglBitmapFunction</a>; aCreateTemp: Boolean; const aFormat: <a  href="glBitmap.html#TglBitmapFormat">TglBitmapFormat</a>; const aArgs: Pointer = nil): Boolean; overload;</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-convert texture data using a user defined callback      </p>
-<h6 class="description_section">Parameters</h6>
-<dl class="parameters">
-<dt>aSource</dt>
-<dd>glBitmap to read data from</dd>
-<dt>aFunc</dt>
-<dd>callback to use for converting</dd>
-<dt>aCreateTemp</dt>
-<dd>create a temporary buffer to use for converting</dd>
-<dt>aFormat</dt>
-<dd>format of the new data</dd>
-<dt>aArgs</dt>
-<dd>user defined paramters (use at will)</dd>
-</dl>
-<h6 class="description_section">Returns</h6>
-<p class="return"><code>True</code> if converting was successful, <code>False</code> otherwise</p></td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><a name="ConvertTo"></a><code>function <b>ConvertTo</b>(const aFormat: <a  href="glBitmap.html#TglBitmapFormat">TglBitmapFormat</a>): Boolean; virtual;</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-convert texture data using a specific format  </p>
-<h6 class="description_section">Parameters</h6>
-<dl class="parameters">
-<dt>aFormat</dt>
-<dd>new format of texture data</dd>
-</dl>
-<h6 class="description_section">Returns</h6>
-<p class="return"><code>True</code> if converting was successful, <code>False</code> otherwise</p></td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><a name="AddAlphaFromResource"></a><code>function <b>AddAlphaFromResource</b>(const aInstance: Cardinal; aResource: String; aResType: PChar = nil; const aFunc: <a  href="glBitmap.html#TglBitmapFunction">TglBitmapFunction</a> = nil; const aArgs: Pointer = nil): Boolean;</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-load alpha channel data from resource      </p>
-<h6 class="description_section">Parameters</h6>
-<dl class="parameters">
-<dt>aInstance</dt>
-<dd>resource handle</dd>
-<dt>aResource</dt>
-<dd>resource ID</dd>
-<dt>aResType</dt>
-<dd>resource type</dd>
-<dt>aFunc</dt>
-<dd>callback to use for converting</dd>
-<dt>aArgs</dt>
-<dd>user defined parameters (use at will)</dd>
-</dl>
-<h6 class="description_section">Returns</h6>
-<p class="return"><code>True</code> on success, <code>False</code> otherwise</p></td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><a name="AddAlphaFromResourceID"></a><code>function <b>AddAlphaFromResourceID</b>(const aInstance: Cardinal; const aResourceID: Integer; const aResType: PChar; const aFunc: <a  href="glBitmap.html#TglBitmapFunction">TglBitmapFunction</a> = nil; const aArgs: Pointer = nil): Boolean;</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-load alpha channel data from resource ID      </p>
-<h6 class="description_section">Parameters</h6>
-<dl class="parameters">
-<dt>aInstance</dt>
-<dd>resource handle</dd>
-<dt>aResourceID</dt>
-<dd>resource ID</dd>
-<dt>aResType</dt>
-<dd>resource type</dd>
-<dt>aFunc</dt>
-<dd>callback to use for converting</dd>
-<dt>aArgs</dt>
-<dd>user defined parameters (use at will)</dd>
-</dl>
-<h6 class="description_section">Returns</h6>
-<p class="return"><code>True</code> on success, <code>False</code> otherwise</p></td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><a name="AddAlphaFromFunc"></a><code>function <b>AddAlphaFromFunc</b>(const aFunc: <a  href="glBitmap.html#TglBitmapFunction">TglBitmapFunction</a>; const aArgs: Pointer = nil): Boolean; virtual;</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-add alpha channel data from function   </p>
-<h6 class="description_section">Parameters</h6>
-<dl class="parameters">
-<dt>aFunc</dt>
-<dd>callback to get data from</dd>
-<dt>aArgs</dt>
-<dd>user defined parameters (use at will)</dd>
-</dl>
-<h6 class="description_section">Returns</h6>
-<p class="return"><code>True</code> on success, <code>False</code> otherwise</p></td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><a name="AddAlphaFromFile"></a><code>function <b>AddAlphaFromFile</b>(const aFileName: String; const aFunc: <a  href="glBitmap.html#TglBitmapFunction">TglBitmapFunction</a> = nil; const aArgs: Pointer = nil): Boolean;</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-add alpha channel data from file (macro for: new glBitmap, LoadFromFile, AddAlphaFromGlBitmap)    </p>
-<h6 class="description_section">Parameters</h6>
-<dl class="parameters">
-<dt>aFilename</dt>
-<dd>file to load alpha channel data from</dd>
-<dt>aFunc</dt>
-<dd>callback to use for converting</dd>
-<dt>aArgs</dt>
-<dd>user defined parameters (use at will)</dd>
-</dl>
-<h6 class="description_section">Returns</h6>
-<p class="return"><code>True</code> on success, <code>False</code> otherwise</p></td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><a name="AddAlphaFromStream"></a><code>function <b>AddAlphaFromStream</b>(const aStream: TStream; const aFunc: <a  href="glBitmap.html#TglBitmapFunction">TglBitmapFunction</a> = nil; const aArgs: Pointer = nil): Boolean;</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-add alpha channel data from stream (macro for: new glBitmap, LoadFromStream, AddAlphaFromGlBitmap)    </p>
-<h6 class="description_section">Parameters</h6>
-<dl class="parameters">
-<dt>aStream</dt>
-<dd>stream to load alpha channel data from</dd>
-<dt>aFunc</dt>
-<dd>callback to use for converting</dd>
-<dt>aArgs</dt>
-<dd>user defined parameters (use at will)</dd>
-</dl>
-<h6 class="description_section">Returns</h6>
-<p class="return"><code>True</code> on success, <code>False</code> otherwise</p></td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><a name="AddAlphaFromGlBitmap"></a><code>function <b>AddAlphaFromGlBitmap</b>(const aBitmap: <a  href="glBitmap.TglBitmap.html">TglBitmap</a>; aFunc: <a  href="glBitmap.html#TglBitmapFunction">TglBitmapFunction</a> = nil; const aArgs: Pointer = nil): Boolean;</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-add alpha channel data from existing glBitmap object    </p>
-<h6 class="description_section">Parameters</h6>
-<dl class="parameters">
-<dt>aBitmap</dt>
-<dd>TglBitmap to copy alpha channel data from</dd>
-<dt>aFunc</dt>
-<dd>callback to use for converting</dd>
-<dt>aArgs</dt>
-<dd>user defined parameters (use at will)</dd>
-</dl>
-<h6 class="description_section">Returns</h6>
-<p class="return"><code>True</code> on success, <code>False</code> otherwise</p></td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><a name="AddAlphaFromColorKey"></a><code>function <b>AddAlphaFromColorKey</b>(const aRed, aGreen, aBlue: Byte; const aDeviation: Byte = 0): Boolean;</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-add alpha to pixel if the pixels color is greter than the given color value     </p>
-<h6 class="description_section">Parameters</h6>
-<dl class="parameters">
-<dt>aRed</dt>
-<dd>red threshold (0-255)</dd>
-<dt>aGreen</dt>
-<dd>green threshold (0-255)</dd>
-<dt>aBlue</dt>
-<dd>blue threshold (0-255)</dd>
-<dt>aDeviatation</dt>
-<dd>accepted deviatation (0-255)</dd>
-</dl>
-<h6 class="description_section">Returns</h6>
-<p class="return"><code>True</code> on success, <code>False</code> otherwise</p></td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><a name="AddAlphaFromColorKeyRange"></a><code>function <b>AddAlphaFromColorKeyRange</b>(const aRed, aGreen, aBlue: Cardinal; const aDeviation: Cardinal = 0): Boolean;</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-add alpha to pixel if the pixels color is greter than the given color value     </p>
-<h6 class="description_section">Parameters</h6>
-<dl class="parameters">
-<dt>aRed</dt>
-<dd>red threshold (0-Range.r)</dd>
-<dt>aGreen</dt>
-<dd>green threshold (0-Range.g)</dd>
-<dt>aBlue</dt>
-<dd>blue threshold (0-Range.b)</dd>
-<dt>aDeviatation</dt>
-<dd>accepted deviatation (0-max(Range.rgb))</dd>
-</dl>
-<h6 class="description_section">Returns</h6>
-<p class="return"><code>True</code> on success, <code>False</code> otherwise</p></td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><a name="AddAlphaFromColorKeyFloat"></a><code>function <b>AddAlphaFromColorKeyFloat</b>(const aRed, aGreen, aBlue: Single; const aDeviation: Single = 0): Boolean;</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-add alpha to pixel if the pixels color is greter than the given color value     </p>
-<h6 class="description_section">Parameters</h6>
-<dl class="parameters">
-<dt>aRed</dt>
-<dd>red threshold (0.0-1.0)</dd>
-<dt>aGreen</dt>
-<dd>green threshold (0.0-1.0)</dd>
-<dt>aBlue</dt>
-<dd>blue threshold (0.0-1.0)</dd>
-<dt>aDeviatation</dt>
-<dd>accepted deviatation (0.0-1.0)</dd>
-</dl>
-<h6 class="description_section">Returns</h6>
-<p class="return"><code>True</code> on success, <code>False</code> otherwise</p></td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><a name="AddAlphaFromValue"></a><code>function <b>AddAlphaFromValue</b>(const aAlpha: Byte): Boolean;</code></td>
+<td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
+<td class="itemcode"><a name="SetCustomNameW"></a><code>procedure <b>SetCustomNameW</b>(const aValue: WideString);</code></td>
 </tr>
 <tr><td colspan="2">
 <p>
-add a constand alpha value to all pixels  </p>
-<h6 class="description_section">Parameters</h6>
-<dl class="parameters">
-<dt>aAlpha</dt>
-<dd>alpha value to add (0-255)</dd>
-</dl>
-<h6 class="description_section">Returns</h6>
-<p class="return"><code>True</code> on success, <code>False</code> otherwise</p></td></tr>
+set a new value for fCustomNameW</p>
+</td></tr>
 </table>
 <table class="detail wide_list">
 <tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><a name="AddAlphaFromValueRange"></a><code>function <b>AddAlphaFromValueRange</b>(const aAlpha: Cardinal): Boolean;</code></td>
+<td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
+<td class="itemcode"><a name="SetDeleteTextureOnFree"></a><code>procedure <b>SetDeleteTextureOnFree</b>(const aValue: Boolean);</code></td>
 </tr>
 <tr><td colspan="2">
 <p>
-add a constand alpha value to all pixels  </p>
-<h6 class="description_section">Parameters</h6>
-<dl class="parameters">
-<dt>aAlpha</dt>
-<dd>alpha value to add (0-max(Range.rgb))</dd>
-</dl>
-<h6 class="description_section">Returns</h6>
-<p class="return"><code>True</code> on success, <code>False</code> otherwise</p></td></tr>
+set new value for fDeleteTextureOnFree</p>
+</td></tr>
 </table>
 <table class="detail wide_list">
 <tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><a name="AddAlphaFromValueFloat"></a><code>function <b>AddAlphaFromValueFloat</b>(const aAlpha: Single): Boolean;</code></td>
+<td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
+<td class="itemcode"><a name="SetID"></a><code>procedure <b>SetID</b>(const aValue: Cardinal);</code></td>
 </tr>
 <tr><td colspan="2">
 <p>
-add a constand alpha value to all pixels  </p>
-<h6 class="description_section">Parameters</h6>
-<dl class="parameters">
-<dt>aAlpha</dt>
-<dd>alpha value to add (0.0-1.0)</dd>
-</dl>
-<h6 class="description_section">Returns</h6>
-<p class="return"><code>True</code> on success, <code>False</code> otherwise</p></td></tr>
+set name of OpenGL texture object</p>
+</td></tr>
 </table>
 <table class="detail wide_list">
 <tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><a name="RemoveAlpha"></a><code>function <b>RemoveAlpha</b>: Boolean; virtual;</code></td>
+<td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
+<td class="itemcode"><a name="SetMipMap"></a><code>procedure <b>SetMipMap</b>(const aValue: <a  href="glBitmap.html#TglBitmapMipMap">TglBitmapMipMap</a>);</code></td>
 </tr>
 <tr><td colspan="2">
 <p>
-remove alpha channel </p>
-<h6 class="description_section">Returns</h6>
-<p class="return"><code>True</code> on success, <code>False</code> otherwise</p></td></tr>
+set new value for fMipMap</p>
+</td></tr>
 </table>
 <table class="detail wide_list">
 <tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><a name="Clone"></a><code>function <b>Clone</b>: <a  href="glBitmap.TglBitmap.html">TglBitmap</a>;</code></td>
+<td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
+<td class="itemcode"><a name="SetTarget"></a><code>procedure <b>SetTarget</b>(const aValue: Cardinal);</code></td>
 </tr>
 <tr><td colspan="2">
 <p>
-create a clone of the current object </p>
-<h6 class="description_section">Returns</h6>
-<p class="return">clone of this object</p></td></tr>
+set new value for target</p>
+</td></tr>
 </table>
 <table class="detail wide_list">
 <tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><a name="Invert"></a><code>procedure <b>Invert</b>(const aUseRGB: Boolean = true; const aUseAlpha: Boolean = false);</code></td>
+<td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
+<td class="itemcode"><a name="SetAnisotropic"></a><code>procedure <b>SetAnisotropic</b>(const aValue: Integer);</code></td>
 </tr>
 <tr><td colspan="2">
 <p>
-invert color data (xor)  </p>
-<h6 class="description_section">Parameters</h6>
-<dl class="parameters">
-<dt>aUseRGB</dt>
-<dd>xor each color channel</dd>
-<dt>aUseAlpha</dt>
-<dd>xor alpha channel</dd>
-</dl>
+set new value for fAnisotrophic</p>
 </td></tr>
 </table>
 <table class="detail wide_list">
 <tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><a name="FreeData"></a><code>procedure <b>FreeData</b>;</code></td>
+<td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
+<td class="itemcode"><a name="CreateID"></a><code>procedure <b>CreateID</b>;</code></td>
 </tr>
 <tr><td colspan="2">
 <p>
-free texture stored data</p>
+create OpenGL texture object (delete exisiting object if exists)</p>
 </td></tr>
 </table>
 <table class="detail wide_list">
 <tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><a name="FillWithColor"></a><code>procedure <b>FillWithColor</b>(const aRed, aGreen, aBlue: Byte; const aAlpha: Byte = 255);</code></td>
+<td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
+<td class="itemcode"><a name="SetupParameters"></a><code>procedure <b>SetupParameters</b>();</code></td>
 </tr>
 <tr><td colspan="2">
 <p>
-fill complete texture with one color    </p>
-<h6 class="description_section">Parameters</h6>
-<dl class="parameters">
-<dt>aRed</dt>
-<dd>red color for border (0-255)</dd>
-<dt>aGreen</dt>
-<dd>green color for border (0-255)</dd>
-<dt>aBlue</dt>
-<dd>blue color for border (0-255)</dd>
-<dt>aAlpha</dt>
-<dd>alpha color for border (0-255)</dd>
-</dl>
+setup texture parameters</p>
 </td></tr>
 </table>
 <table class="detail wide_list">
 <tr class="list">
 <td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><a name="FillWithColorRange"></a><code>procedure <b>FillWithColorRange</b>(const aRed, aGreen, aBlue: Cardinal; const aAlpha: Cardinal = $FFFFFFFF);</code></td>
+<td class="itemcode"><a name="AfterConstruction"></a><code>procedure <b>AfterConstruction</b>; override;</code></td>
 </tr>
 <tr><td colspan="2">
 <p>
-fill complete texture with one color    </p>
-<h6 class="description_section">Parameters</h6>
-<dl class="parameters">
-<dt>aRed</dt>
-<dd>red color for border (0-Range.r)</dd>
-<dt>aGreen</dt>
-<dd>green color for border (0-Range.g)</dd>
-<dt>aBlue</dt>
-<dd>blue color for border (0-Range.b)</dd>
-<dt>aAlpha</dt>
-<dd>alpha color for border (0-Range.a)</dd>
-</dl>
+this method is called after the constructor and sets the default values of this object</p>
 </td></tr>
 </table>
 <table class="detail wide_list">
 <tr class="list">
 <td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><a name="FillWithColorFloat"></a><code>procedure <b>FillWithColorFloat</b>(const aRed, aGreen, aBlue: Single; const aAlpha: Single = 1.0);</code></td>
+<td class="itemcode"><a name="BeforeDestruction"></a><code>procedure <b>BeforeDestruction</b>; override;</code></td>
 </tr>
 <tr><td colspan="2">
 <p>
-fill complete texture with one color    </p>
-<h6 class="description_section">Parameters</h6>
-<dl class="parameters">
-<dt>aRed</dt>
-<dd>red color for border (0.0-1.0)</dd>
-<dt>aGreen</dt>
-<dd>green color for border (0.0-1.0)</dd>
-<dt>aBlue</dt>
-<dd>blue color for border (0.0-1.0)</dd>
-<dt>aAlpha</dt>
-<dd>alpha color for border (0.0-1.0)</dd>
-</dl>
+this method is called before the destructor and does some cleanup</p>
 </td></tr>
 </table>
 <table class="detail wide_list">
@@ -1626,243 +621,38 @@ bind texture </p>
 <table class="detail wide_list">
 <tr class="list">
 <td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><a name="Create"></a><code>constructor <b>Create</b>; overload;</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-constructor - created an empty texture</p>
-</td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><a name="Create"></a><code>constructor <b>Create</b>(const aFileName: String); overload;</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-constructor - creates a texture and load it from a file </p>
-<h6 class="description_section">Parameters</h6>
-<dl class="parameters">
-<dt>aFilename</dt>
-<dd>file to load texture from</dd>
-</dl>
-</td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><a name="Create"></a><code>constructor <b>Create</b>(const aStream: TStream); overload;</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-constructor - creates a texture and load it from a stream </p>
-<h6 class="description_section">Parameters</h6>
-<dl class="parameters">
-<dt>aStream</dt>
-<dd>stream to load texture from</dd>
-</dl>
-</td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><a name="Create"></a><code>constructor <b>Create</b>(const aSize: <a  href="glBitmap.TglBitmapSize.html">TglBitmapSize</a>; const aFormat: <a  href="glBitmap.html#TglBitmapFormat">TglBitmapFormat</a>; aData: PByte = nil); overload;</code></td>
+<td class="itemcode"><a name="UploadData"></a><code>procedure <b>UploadData</b>(const aDataObj: <a  href="glBitmap.TglBitmapData.html">TglBitmapData</a>; const aCheckSize: Boolean = true); virtual;</code></td>
 </tr>
 <tr><td colspan="2">
 <p>
-constructor - creates a texture with the given size, format and data    you can control this by setting DeleteTextureOnFree, FreeDataOnDestroy and FreeDataAfterGenTexture</p>
+upload texture data from given data object to video card  </p>
 <h6 class="description_section">Parameters</h6>
 <dl class="parameters">
-<dt>aSize</dt>
-<dd>size of the texture</dd>
-<dt>aFormat</dt>
-<dd>format of the given data</dd>
 <dt>aData</dt>
-<dd>texture data - be carefull: the data will now be managed by the glBitmap object,</dd>
-</dl>
-</td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><a name="Create"></a><code>constructor <b>Create</b>(const aSize: <a  href="glBitmap.TglBitmapSize.html">TglBitmapSize</a>; const aFormat: <a  href="glBitmap.html#TglBitmapFormat">TglBitmapFormat</a>; const aFunc: <a  href="glBitmap.html#TglBitmapFunction">TglBitmapFunction</a>; const aArgs: Pointer = nil); overload;</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-constructor - creates a texture with the given size and format and uses the given callback to create the data    </p>
-<h6 class="description_section">Parameters</h6>
-<dl class="parameters">
-<dt>aSize</dt>
-<dd>size of the texture</dd>
-<dt>aFormat</dt>
-<dd>format of the given data</dd>
-<dt>aFunc</dt>
-<dd>callback to use for generating the data</dd>
-<dt>aArgs</dt>
-<dd>user defined parameters (use at will)</dd>
+<dd>texture data object that contains the actual data</dd>
+<dt>aCheckSize</dt>
+<dd>check size before upload and throw exception if something is wrong</dd>
 </dl>
 </td></tr>
 </table>
 <table class="detail wide_list">
 <tr class="list">
 <td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><a name="Create"></a><code>constructor <b>Create</b>(const aInstance: Cardinal; const aResource: String; const aResType: PChar = nil); overload;</code></td>
+<td class="itemcode"><a name="Create"></a><code>constructor <b>Create</b>; overload;</code></td>
 </tr>
 <tr><td colspan="2">
 <p>
-constructor - creates a texture and loads it from a resource   </p>
-<h6 class="description_section">Parameters</h6>
-<dl class="parameters">
-<dt>aInstance</dt>
-<dd>resource handle</dd>
-<dt>aResource</dt>
-<dd>resource indentifier</dd>
-<dt>aResType</dt>
-<dd>resource type (if known)</dd>
-</dl>
+constructor - creates an empty texture</p>
 </td></tr>
 </table>
 <table class="detail wide_list">
 <tr class="list">
 <td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><a name="Create"></a><code>constructor <b>Create</b>(const aInstance: Cardinal; const aResourceID: Integer; const aResType: PChar); overload;</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-constructor - creates a texture and loads it from a resource   </p>
-<h6 class="description_section">Parameters</h6>
-<dl class="parameters">
-<dt>aInstance</dt>
-<dd>resource handle</dd>
-<dt>aResourceID</dt>
-<dd>resource ID</dd>
-<dt>aResType</dt>
-<dd>resource type (if known)</dd>
-</dl>
-</td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="private.gif" alt="Private" title="Private"></a></td>
-<td class="itemcode"><a name="LoadRAW"></a><code>function <b>LoadRAW</b>(const aStream: TStream): Boolean;</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-try to load a RAW image from a stream  </p>
-<h6 class="description_section">Parameters</h6>
-<dl class="parameters">
-<dt>aStream</dt>
-<dd>stream to load RAW image from</dd>
-</dl>
-<h6 class="description_section">Returns</h6>
-<p class="return"><code>True</code> on success, <code>False</code> otherwise</p></td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="private.gif" alt="Private" title="Private"></a></td>
-<td class="itemcode"><a name="SaveRAW"></a><code>procedure <b>SaveRAW</b>(const aStream: TStream);</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-save texture data as RAW image to stream </p>
-<h6 class="description_section">Parameters</h6>
-<dl class="parameters">
-<dt>aStream</dt>
-<dd>stream to save data to</dd>
-</dl>
-</td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="private.gif" alt="Private" title="Private"></a></td>
-<td class="itemcode"><a name="LoadBMP"></a><code>function <b>LoadBMP</b>(const aStream: TStream): Boolean;</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-try to load a BMP from a stream  </p>
-<h6 class="description_section">Parameters</h6>
-<dl class="parameters">
-<dt>aStream</dt>
-<dd>stream to load BMP from</dd>
-</dl>
-<h6 class="description_section">Returns</h6>
-<p class="return"><code>True</code> on success, <code>False</code> otherwise</p></td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="private.gif" alt="Private" title="Private"></a></td>
-<td class="itemcode"><a name="SaveBMP"></a><code>procedure <b>SaveBMP</b>(const aStream: TStream);</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-save texture data as BMP to stream </p>
-<h6 class="description_section">Parameters</h6>
-<dl class="parameters">
-<dt>aStream</dt>
-<dd>stream to save data to</dd>
-</dl>
-</td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="private.gif" alt="Private" title="Private"></a></td>
-<td class="itemcode"><a name="LoadTGA"></a><code>function <b>LoadTGA</b>(const aStream: TStream): Boolean;</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-try to load a TGA from a stream  </p>
-<h6 class="description_section">Parameters</h6>
-<dl class="parameters">
-<dt>aStream</dt>
-<dd>stream to load TGA from</dd>
-</dl>
-<h6 class="description_section">Returns</h6>
-<p class="return"><code>True</code> on success, <code>False</code> otherwise</p></td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="private.gif" alt="Private" title="Private"></a></td>
-<td class="itemcode"><a name="SaveTGA"></a><code>procedure <b>SaveTGA</b>(const aStream: TStream);</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-save texture data as TGA to stream </p>
-<h6 class="description_section">Parameters</h6>
-<dl class="parameters">
-<dt>aStream</dt>
-<dd>stream to save data to</dd>
-</dl>
-</td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="private.gif" alt="Private" title="Private"></a></td>
-<td class="itemcode"><a name="LoadDDS"></a><code>function <b>LoadDDS</b>(const aStream: TStream): Boolean;</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-try to load a DDS from a stream  </p>
-<h6 class="description_section">Parameters</h6>
-<dl class="parameters">
-<dt>aStream</dt>
-<dd>stream to load DDS from</dd>
-</dl>
-<h6 class="description_section">Returns</h6>
-<p class="return"><code>True</code> on success, <code>False</code> otherwise</p></td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="private.gif" alt="Private" title="Private"></a></td>
-<td class="itemcode"><a name="SaveDDS"></a><code>procedure <b>SaveDDS</b>(const aStream: TStream);</code></td>
+<td class="itemcode"><a name="Create"></a><code>constructor <b>Create</b>(const aData: <a  href="glBitmap.TglBitmapData.html">TglBitmapData</a>); overload;</code></td>
 </tr>
 <tr><td colspan="2">
 <p>
-save texture data as DDS to stream </p>
-<h6 class="description_section">Parameters</h6>
-<dl class="parameters">
-<dt>aStream</dt>
-<dd>stream to save data to</dd>
-</dl>
+constructor - creates an texture object and uploads the given data</p>
 </td></tr>
 </table>
 <h3 class="detail">Properties</h3>
@@ -1888,28 +678,8 @@ the actual height of the texture</p>
 </table>
 <table class="detail wide_list">
 <tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><a name="FileWidth"></a><code>property <b>FileWidth</b>: Integer read <a  href="glBitmap.TglBitmap.html#GetFileWidth">GetFileWidth</a>;</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-the width of the texture or 1 if the width is zero</p>
-</td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="protected.gif" alt="Protected" title="Protected"></a></td>
-<td class="itemcode"><a name="FileHeight"></a><code>property <b>FileHeight</b>: Integer read <a  href="glBitmap.TglBitmap.html#GetFileHeight">GetFileHeight</a>;</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-the height of the texture or 1 if the height is zero</p>
-</td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
 <td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><a name="ID"></a><code>property <b>ID</b>: Cardinal        read <a  href="glBitmap.TglBitmap.html#fID">fID</a>          write <a  href="glBitmap.TglBitmap.html#SetID">SetID</a>;</code></td>
+<td class="itemcode"><a name="ID"></a><code>property <b>ID</b>: Cardinal  read <a  href="glBitmap.TglBitmap.html#fID">fID</a>                  write <a  href="glBitmap.TglBitmap.html#SetID">SetID</a>;</code></td>
 </tr>
 <tr><td colspan="2">
 <p>
@@ -1919,7 +689,7 @@ name of the OpenGL texture object</p>
 <table class="detail wide_list">
 <tr class="list">
 <td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><a name="Target"></a><code>property <b>Target</b>: Cardinal        read <a  href="glBitmap.TglBitmap.html#fTarget">fTarget</a>      write <a  href="glBitmap.TglBitmap.html#SetTarget">SetTarget</a>;</code></td>
+<td class="itemcode"><a name="Target"></a><code>property <b>Target</b>: Cardinal  read <a  href="glBitmap.TglBitmap.html#fTarget">fTarget</a>              write <a  href="glBitmap.TglBitmap.html#SetTarget">SetTarget</a>;</code></td>
 </tr>
 <tr><td colspan="2">
 <p>
@@ -1929,11 +699,11 @@ texture target (e.g. GL_TEXTURE_2D)</p>
 <table class="detail wide_list">
 <tr class="list">
 <td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><a name="Format"></a><code>property <b>Format</b>: <a  href="glBitmap.html#TglBitmapFormat">TglBitmapFormat</a> read <a  href="glBitmap.TglBitmap.html#fFormat">fFormat</a>      write <a  href="glBitmap.TglBitmap.html#SetFormat">SetFormat</a>;</code></td>
+<td class="itemcode"><a name="DeleteTextureOnFree"></a><code>property <b>DeleteTextureOnFree</b>: Boolean   read <a  href="glBitmap.TglBitmap.html#fDeleteTextureOnFree">fDeleteTextureOnFree</a> write <a  href="glBitmap.TglBitmap.html#SetDeleteTextureOnFree">SetDeleteTextureOnFree</a>;</code></td>
 </tr>
 <tr><td colspan="2">
 <p>
-format the texture data is stored in</p>
+delete texture object when this object is destroyed</p>
 </td></tr>
 </table>
 <table class="detail wide_list">
@@ -1959,21 +729,11 @@ anisotropic level</p>
 <table class="detail wide_list">
 <tr class="list">
 <td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><a name="FormatDesc"></a><code>property <b>FormatDesc</b>: <a  href="glBitmap.TglBitmapFormatDescriptor.html">TglBitmapFormatDescriptor</a> read <a  href="glBitmap.TglBitmap.html#GetFormatDesc">GetFormatDesc</a>;</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-format descriptor that describes the format of the stored data</p>
-</td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><a name="Filename"></a><code>property <b>Filename</b>: String     read <a  href="glBitmap.TglBitmap.html#fFilename">fFilename</a>;</code></td>
+<td class="itemcode"><a name="CustomData"></a><code>property <b>CustomData</b>: Pointer    read <a  href="glBitmap.TglBitmap.html#fCustomData">fCustomData</a>  write <a  href="glBitmap.TglBitmap.html#SetCustomData">SetCustomData</a>;</code></td>
 </tr>
 <tr><td colspan="2">
 <p>
-filename the texture was load from</p>
+user defined data (use at will)</p>
 </td></tr>
 </table>
 <table class="detail wide_list">
@@ -1999,46 +759,6 @@ user defined name (as WideString; use at will)</p>
 <table class="detail wide_list">
 <tr class="list">
 <td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><a name="CustomData"></a><code>property <b>CustomData</b>: Pointer    read <a  href="glBitmap.TglBitmap.html#fCustomData">fCustomData</a>  write <a  href="glBitmap.TglBitmap.html#SetCustomData">SetCustomData</a>;</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-user defined data (use at will)</p>
-</td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><a name="DeleteTextureOnFree"></a><code>property <b>DeleteTextureOnFree</b>: Boolean read <a  href="glBitmap.TglBitmap.html#fDeleteTextureOnFree">fDeleteTextureOnFree</a>     write <a  href="glBitmap.TglBitmap.html#SetDeleteTextureOnFree">SetDeleteTextureOnFree</a>;</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-delete texture object when this object is destroyed</p>
-</td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><a name="FreeDataOnDestroy"></a><code>property <b>FreeDataOnDestroy</b>: Boolean read <a  href="glBitmap.TglBitmap.html#fFreeDataOnDestroy">fFreeDataOnDestroy</a>       write <a  href="glBitmap.TglBitmap.html#SetFreeDataOnDestroy">SetFreeDataOnDestroy</a>;</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-free stored data when this object is destroyed</p>
-</td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><a name="FreeDataAfterGenTexture"></a><code>property <b>FreeDataAfterGenTexture</b>: Boolean read <a  href="glBitmap.TglBitmap.html#fFreeDataAfterGenTexture">fFreeDataAfterGenTexture</a> write <a  href="glBitmap.TglBitmap.html#SetFreeDataAfterGenTexture">SetFreeDataAfterGenTexture</a>;</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-free stored data after it is uplaoded to video card</p>
-</td></tr>
-</table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
 <td class="itemcode"><a name="Dimension"></a><code>property <b>Dimension</b>: <a  href="glBitmap.TglBitmapSize.html">TglBitmapSize</a> read <a  href="glBitmap.TglBitmap.html#fDimension">fDimension</a>;</code></td>
 </tr>
 <tr><td colspan="2">
@@ -2046,16 +766,6 @@ free stored data after it is uplaoded to video card</p>
 size of the texture</p>
 </td></tr>
 </table>
-<table class="detail wide_list">
-<tr class="list">
-<td class="visibility"><a  href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
-<td class="itemcode"><a name="Data"></a><code>property <b>Data</b>: PByte         read <a  href="glBitmap.TglBitmap.html#fData">fData</a>;</code></td>
-</tr>
-<tr><td colspan="2">
-<p>
-texture data (or <code>Nil</code> if unset)</p>
-</td></tr>
-</table>
-<hr noshade size="1"><span class="appinfo"><em>Generated by <a  href="http://pasdoc.sourceforge.net/">PasDoc 0.13.0</a> on 2014-12-21 15:05:48</em>
+<hr noshade size="1"><span class="appinfo"><em>Generated by <a  href="http://pasdoc.sourceforge.net/">PasDoc 0.13.0</a> on 2014-12-24 04:27:09</em>
 </span>
 </td></tr></table></body></html>