Vladimír Vondruš
6504aecf0c
Added classes Image and BufferedImage.
...
These classes are meant to be used in the same texture updating
functions as Trade::ImageData due to static polymorphism. In addition to
Trade::ImageData, which is read-only, these classes support updating the
dimensions and data. Image2D and ImageBuffer2D can update the data also
from framebuffer.
14 years ago
Vladimír Vondruš
33e822a397
Function for pixel size of given color format and data type per channel.
...
Also documented the formats a little.
14 years ago
Vladimír Vondruš
a0ba7663b0
Doc++
14 years ago
Vladimír Vondruš
8cdf5e87c4
Strong typed texture targets.
...
Only those targets which are meaningful for given dimension are
available.
14 years ago
Vladimír Vondruš
6cd72578f0
Greatly simplified Texture::setWrapping().
...
Temporarily removed the check for not setting repeat wrap mode on
rectangle textures.
14 years ago
Vladimír Vondruš
52971935ab
Using strongly-typed enum for plain OpenGL types.
...
Mesh and IndexedMesh is not completely ported, as it will need more
work.
14 years ago
Vladimír Vondruš
70fa53b949
Removed unbind() from buffers and textures.
...
It doesn't help with any safety, but just complicates everything and
makes unnecessary GL calls.
14 years ago
Vladimír Vondruš
8efb5a1e42
Added dllimport/dllexport macros for Windows builds.
14 years ago
Vladimír Vondruš
3174570969
Moved ColorFormat enum back to AbstractTexture.
14 years ago
Vladimír Vondruš
b945f5f68b
Happy New Year.
15 years ago
Vladimír Vondruš
2d50410dee
C++11 (move semantics) compatible class copy/move disabling.
...
Not using macro this time, as some classes could want only to disable
either copy or move and with macros this would become unintuitive and
error-prone.
15 years ago
Vladimír Vondruš
ef80006737
Using GLint instead of GLsizei for offset.
15 years ago
Vladimír Vondruš
40441b39e2
Removed unnecessary templating of AbstractTexture::DataHelper.
15 years ago
Vladimír Vondruš
53a978c434
Minor documentation fixes.
15 years ago
Vladimír Vondruš
90838f2d85
New class Image for handling image data.
...
Moved the functionality out of Texture, because one texture can be
composed from more than one image.
15 years ago
Vladimír Vondruš
e9a556cc10
Using strongly-typed enums in AbstractTexture and derived classes.
...
Allows safer passing of values, more descriptive and shorter enum names
and also using the same enum names/values in InternalFormat and
ColorFormat.
15 years ago
Vladimír Vondruš
d0044b960e
Support for setting texture subdata.
15 years ago
Vladimír Vondruš
08eefab310
Disable copying of AbstractTexture class.
15 years ago
Vladimír Vondruš
e9a98d76e7
Support for setting textures as uniforms in AbstractShaderProgram.
...
Also updated Texture documentation.
15 years ago
Vladimír Vondruš
715d9910a8
Support for texture layers.
15 years ago
Vladimír Vondruš
24988ce520
Fixed wrong automagic texture target for 3D textures.
...
While GL_TEXTURE_2D == GL_TEXTURE_1D + 1, GL_TEXTURE_3D is something
absolutely different and cannot be computed like this. Now done via
AbstractTexture::DataHelper, which is cleaner and better readable.
15 years ago
Vladimír Vondruš
b924da57ad
Splitting non-templated things from Texture to AbstractTexture.
15 years ago
Vladimír Vondruš
cc0bffbdc4
Support for rectangle textures, documentation updates.
15 years ago
Vladimír Vondruš
c51ea03b5b
Texture Filter and Mipmap enum refactoring.
...
Renamed the constants so they are better readable when passed to
setMinificationFilter(). Using self-documenting values for Mipmap enum,
added static_assert which checks their correctness.
15 years ago
Vladimír Vondruš
4a58fc9f0c
Added Texture.cpp with explicit specialization for all texture dimensions.
...
Non-inline functions which don't depend on another template moved to
Texture.cpp, inlined the rest.
15 years ago
Vladimír Vondruš
c0e8a92093
Better documentation for Texture, mainly about required function calls.
15 years ago
Vladimír Vondruš
8b8e97f54e
Store template parameter in Texture class for later retrieving.
15 years ago
Vladimír Vondruš
08c967a6ae
Fixed wrong target passed to glBindTexture.
...
WTF? How it is possible that it was working?
15 years ago
Vladimír Vondruš
b0ed6479df
Totally reworked Texture::setData() using TypeTraits.
...
Instead of large if() block for calling either glTexImage1D,
glTexImage2D or glTexImage3D the class now uses internal helper functor,
which should lead to shorter generated code and also prevent using
wrong dimension count.
15 years ago
Vladimír Vondruš
1080c2900e
Texture now allows user-specified target in addition to automagic.
15 years ago
Vladimír Vondruš
c7b331d100
(Ahem...) Happy New Year!
15 years ago
Vladimír Vondruš
b7221d0a33
Function to set texture border color.
16 years ago
Vladimír Vondruš
aafecfb4ec
Simple templated multidimensional texture class.
16 years ago