Vladimír Vondruš
bfa2a42638
Don't differentiate between vertex and index count in Mesh.
...
Only one value from these two was used in the end, wasting precious
bytes. Also these two values were used to differentiate between indexed
and non-indexed mesh (instead of relying on actual index buffer being
bound), which was very confusing. This approach looks more clean. The
MeshView class is not yet updated, as the change would expose some
features that aren't possible in current implementation (base vertex
specification).
Merged Mesh::setVertexCount() and Mesh::setIndexCount() into one
Mesh::setCount(), the two original functions are now guarded aliases to
the new one, are marked as deprecated and will be removed in future
release, similarly for the getters.
In particular, if the mesh is indexed, setVertexCount() does nothing and
vertexCount() returns 0. The setIndexCount() and indexCount() do and
return the same regardless of whether the mesh is indexed or not.
12 years ago
Vladimír Vondruš
d772f51050
Hide texture state members which are not used on ES.
...
Shaved eight bytes off total memory footprint, yay!
12 years ago
Vladimír Vondruš
54cb177bb0
Properly initialize variables for texture limits in state tracker.
...
And I was wondering how it is possible that there new NVidia drivers
were allowing up to 32 PB textures on my humble laptop graphics :)
12 years ago
Vladimír Vondruš
153f57f5b1
Fix CubeMapTexture mipmap generation test.
...
On new NVidia drivers 337.12 it reports that the texture is not cube map
complete.
12 years ago
Vladimír Vondruš
ee403494fb
Doc++
12 years ago
Vladimír Vondruš
74ae14b44a
Remove unused members from ES build.
12 years ago
Vladimír Vondruš
8c0c80a5c3
Implemented ARB_texture_swizzle.
12 years ago
Vladimír Vondruš
1b1ad41ae1
Renamed internal function to avoid name clashes.
12 years ago
Vladimír Vondruš
11ea906e47
Doc++
...
Sometimes the specification hides the information very well.
12 years ago
Vladimír Vondruš
325d139353
Doc++
12 years ago
Vladimír Vondruš
ef897de79e
Implemented depth texture compare mode and function.
12 years ago
Vladimír Vondruš
3e40bdd443
Doc++
...
Also remove redundant preprocessor branches.
12 years ago
Vladimír Vondruš
bbd1d94e73
Platform: nicer vector value display in magnum-info.
12 years ago
Vladimír Vondruš
f16a607a6f
Platform: display max texture size in magnum-info.
12 years ago
Vladimír Vondruš
2cbcdeaeb4
Queries for max supported texture size.
12 years ago
Vladimír Vondruš
f9e49283e6
Fix includes.
...
Vector3 was used but not included.
12 years ago
Vladimír Vondruš
99281a1bd1
Cleaned up duplicate stuff in CMakeLists.
12 years ago
Vladimír Vondruš
8a98ab0675
Implementation of ARB_stencil_texturing.
12 years ago
Vladimír Vondruš
af9772bdc0
Add forgotten check to extension-dependent texture tests.
12 years ago
Vladimír Vondruš
424526a7c8
Integer texture borders are not available in OpenGL ES.
12 years ago
Vladimír Vondruš
1e60a306ca
doc: updated Sampler documentation.
...
Reference actual *Texture methods from there, it will be some time until
actual sampler objects are implemented.
12 years ago
Vladimír Vondruš
7afe12910a
Platform: display max lod bias in magnum-info.
12 years ago
Vladimír Vondruš
4f4131b320
Implemented texture LOD parameters.
12 years ago
Vladimír Vondruš
653804b518
Added EXT_shader_texture_lod ES2 extension.
12 years ago
Vladimír Vondruš
d45857feb0
doc: texture documentation updates.
...
Remove duplicates, add minimal multisample docs, update GL function
mapping table.
12 years ago
Vladimír Vondruš
ea4b226b7e
Create also plugin test debug libraries with -d suffix.
...
This affects only Windows when tests are enabled.
12 years ago
Vladimír Vondruš
d2a3e71215
Proper cross-platform ordering of function attributes.
12 years ago
Vladimír Vondruš
1ab87a4de5
Workarounds for platforms without std::to_string().
...
I hate this.
12 years ago
Vladimír Vondruš
52ab6a113b
Prefix plugin test libraries also with Magnum*.
...
They need to be installed into possibly system-wide location on Windows
and thus we need to avoid name clashes (or at least explicitly show that
e.g. TgaImporterTestLib.dll belongs to Magnum and is not any OMG virus).
12 years ago
Vladimír Vondruš
d5b0b38da7
Doc++
...
Remove redundant docs about desktop-GL-only functionality, proper
crossreferenes for overloaded functions.
12 years ago
Vladimír Vondruš
5101e3a60c
Install also debug plugins to different location.
...
Following changes done in Corrade.
12 years ago
Vladimír Vondruš
1e6e4c3f73
Install and find debug libraries with "-d" suffix.
...
Makes it possible to have both debug and release libraries installed. If
both libraries are present when finding the package, proper version is
used based on what configuration is used in depending project.
12 years ago
Vladimír Vondruš
b921d0c95c
Fix compilation on GCC 4.6.
...
Can't have both constexpr and const.
12 years ago
Vladimír Vondruš
ab6e645b0e
Compressed formats are not available for multisample textures.
12 years ago
Vladimír Vondruš
0a2b8088a6
Added MultisampleTexture::setStorage().
...
With this function multisample texture implementation is pretty much
done. Also implemented all the tests.
12 years ago
Vladimír Vondruš
32fee76081
Multisample textures also won't have any image setting functions.
12 years ago
Vladimír Vondruš
55d9a2f5c6
Multisample textures don't have mip levels.
...
Another victim of copy-paste, which was never tested in practice because
of incomplete implementation.
12 years ago
Vladimír Vondruš
b28876ec70
Doc++
12 years ago
Vladimír Vondruš
f46cda1900
Remove redundant ifdefs and docs from desktop-GL-only code.
12 years ago
Vladimír Vondruš
6f0a238376
Disable also NV_framebuffer_blit on ES2.
...
Until we have proper extension loader implemented (caused
FramebufferGLTest to assert).
On a related note, NVidia drivers 334.21 support *a lot* of ES2
extensions. Wow.
12 years ago
Vladimír Vondruš
e3b0d1d4ce
Shaders: use texture multi-bind functionality in Phong shader.
12 years ago
Vladimír Vondruš
2e3a00ab8b
Fix (workaround) failing texture tests.
...
With ARB_multi_bind it is needed to associate the texture with some
target before calling glBindTextures(), otherwise the texture is
treated as invalid.
12 years ago
Vladimír Vondruš
cc66fa76ba
Support ARB_multi_bind for textures.
12 years ago
Vladimír Vondruš
580a723d61
Added *Texture::unbind().
...
Will be used in fallback implementation of multi-bind.
12 years ago
Vladimír Vondruš
e2abc39766
Save texture target along with ID in state tracker.
...
Makes later unbinding easier (i.e. we don't need to cycle through all
possible/supported targets and call glBindTexture(target, 0) with each.
12 years ago
Vladimír Vondruš
2696397021
Verify that *Texture::bind() doesn't emit any GL errors.
...
Can't verify much more at this time.
12 years ago
Vladimír Vondruš
f0df35aa65
Forgot to update state tracker in ARB_multi_bind texture binding impl.
...
Would cause random weird issues with texture configuration/upload if
ARB_multi_bind is available and EXT_direct_state_access is not. Probably
not an issue, since EXT_direct_state_access is probably available on all
drivers which support also ARB_multi_bind.
12 years ago
Vladimír Vondruš
ecf7bfa2c1
Minor cleanup.
12 years ago
Vladimír Vondruš
116f474fab
Removed long-deprecated *::maxSupported*() limit queries.
...
Use alternatives without the "Supported" substring instead.
12 years ago
Vladimír Vondruš
14a6b85612
Platform: removed long-deprecated InputEvent::Modifier::*Button values.
...
Use *Event::buttons() and *Event::Button enum instead.
12 years ago