Vladimír Vondruš
1015ac258e
Fixed (non-deadly) mistake in TypeTraits.
14 years ago
Vladimír Vondruš
476e8285cd
Simplified massive repeated code in CubeMapTexture.h.
14 years ago
Vladimír Vondruš
c7894df33f
Doc++
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š
d8943b898c
Use nullptr instead of 0 for pointers.
14 years ago
Vladimír Vondruš
49b126abc6
Don't try to develop our own OpenGL (naming).
14 years ago
Vladimír Vondruš
5bff1c385b
Using delete[] for char array.
14 years ago
Vladimír Vondruš
d40a80b3d0
Fixed crash on deletion of Object children.
...
setParent(0) modifies list of children in parent object, thus the for
cycle will break. Curious that I didn't notice that before.
14 years ago
Vladimír Vondruš
f855d72660
Totally reworked Trade::AbstractImporter.
...
AbstractImporter now provides access to the data directly and doesn't
attempt to do any OpenGL stuff, thus making everything more transparent
and testable.
14 years ago
Vladimír Vondruš
5818a76850
New library with sample shaders, currently only Phong shader.
14 years ago
Vladimír Vondruš
8cc445d164
Using own Corrade::Debug class instead of cerr in Shaders.
...
Also improved and unified the messages and added messages when
uniformLocation() fails or attribute is bound after linking.
14 years ago
Vladimír Vondruš
f5c8ae6bd6
Include Qt include dir for building tests.
14 years ago
Vladimír Vondruš
0945c50aa6
Removed "active camera" from Scene.
...
It was overengineered and unnecessarily complicated. Now the camera is
specified only in Scene::draw(), which eliminates all the needs for
recalculating absolute object transformations on each camera
transformation change. Absolute object transformation is now computed
relative to root object or relative to camera object passed as
parameter. Because of that it is now also possible to draw the scene
using multiple cameras at once.
14 years ago
Vladimír Vondruš
6e4523f162
Fixed memory leak in ObjectTest.
14 years ago
Vladimír Vondruš
990dccdd76
Documentation: better word order.
14 years ago
Vladimír Vondruš
2c48e30858
Simplified Object::multiplyTransformation().
14 years ago
Vladimír Vondruš
be98437682
De-inlined Light::clean().
14 years ago
Vladimír Vondruš
1619a2fa0b
Don't forget to delete VAO on scene destruction.
14 years ago
Vladimír Vondruš
408aa7faf5
Fixed yet another collision with windows.h. I hate it.
14 years ago
Vladimír Vondruš
8efb5a1e42
Added dllimport/dllexport macros for Windows builds.
14 years ago
Vladimír Vondruš
78ce126cbb
Fixed pedantic compiler warning.
14 years ago
Vladimír Vondruš
8d525be511
Using TypeTraits::epsilon and TypeTraits::equals instead of EPSILON.
...
Improves comparison performance on integral Matrix and Vector, fixes NaN
comparison bug (but infinity bug is still present).
14 years ago
Vladimír Vondruš
f585d39146
Added Math::TypeTraits, implementing fuzzy comparison based on type.
...
Fuzzy comparison is implemented only on floating-point types with
type-specific epsilon, on integral types classic operator== is used.
TypeTraits class is now extension of Math::TypeTraits (where it makes
sense).
14 years ago
Vladimír Vondruš
c2aed9d5af
Updated TypeTraits documentation, show all functions inline.
14 years ago
Vladimír Vondruš
34a84dc677
Using nullptr instead of 0.
14 years ago
Vladimír Vondruš
e357f24e70
Scene::viewportWidth/viewportHeight were never set, got rid of them.
...
Caused setting viewport size to some random and possibly dangerous value
after assigning camera to the scene.
14 years ago
Vladimír Vondruš
dacd31fcc5
Moved AbstractImporter and Image to new Trade namespace.
...
Start of AbstractImporter rework - Trade namespace will contain simple
classes usable for exchanging data with other formats, importers will
not depend on any OpenGL functionality, they will just provide access to
plain data.
14 years ago
Vladimír Vondruš
3174570969
Moved ColorFormat enum back to AbstractTexture.
14 years ago
Vladimír Vondruš
96b072f87d
AbstractImporter: allow direct file opening, added Feature enum.
...
Each importer must now specify whether it can open files or streams in
features() and implement one or both open() functions. Default
implementation of open() functions now prints message on error output
and returns false.
14 years ago
Vladimír Vondruš
1f455e8b39
Fixed Primitives::Icosphere compilation.
...
Forgot to use new MeshTools functions for mesh cleaning.
14 years ago
Vladimír Vondruš
31fd5bfb32
Added another constructor to MeshTools::AbstractIndexTool.
...
Not forcing to use MeshBuilder, passing just index array and vertex
count.
14 years ago
Vladimír Vondruš
c77bc6d916
Added AbstractImporter::meshData() for accessing mesh data.
14 years ago
Vladimír Vondruš
0c67d17148
MeshTools: implementation of Tipsify algorithm.
...
Algorithm used: Pedro V. Sander, Diego Nehab, and Joshua Barczak, Fast
Triangle Reordering for Vertex Locality and Reduced Overdraw, SIGGRAPH
2007, http://gfx.cs.princeton.edu/pubs/Sander_2007_%3ETR/index.php
Also created new shared MeshTools library.
15 years ago
Vladimír Vondruš
37fa078ead
Added MeshTools::AbstractIndexTool, operating only on indices.
...
Doesn't need to be templated and thus leads to smaller generated code
size.
15 years ago
Vladimír Vondruš
37afb7bffe
Splitting tools from MeshBuilderBenchmark to MeshTools.
...
Moved unit tests and benchmarks accordingly.
15 years ago
Vladimír Vondruš
79a36bd373
New namespace and base class for mesh tools.
15 years ago
Vladimír Vondruš
e0b4fca4fe
Doc++
...
Removed doc/namespaces.dox, moved namespace documentation to main files
of given namespace.
15 years ago
Vladimír Vondruš
c11e691053
Cleaning overengineered MeshBuilder.
...
* Removed VertexPointer typedef, as size_t is somewhere 64bit and
OpenGL doesn't have corresponding data type. Using unsigned int
everywhere instead, to avoid confusion.
* Removed Face structure altogether, using vertex indices directly.
* Greatly reduced size of unit tests, also thanks to C++11
std::initializer_list feature.
15 years ago
Vladimír Vondruš
9fd88b700a
Using icosahedron primitive data in MeshBuilderBenchmark.
15 years ago
Vladimír Vondruš
2b3aab35f6
Making Icosahedron primitive data public, so it could be reused.
15 years ago
Vladimír Vondruš
b945f5f68b
Happy New Year.
15 years ago
Vladimír Vondruš
9f8bb86dbb
Preserve space before and after printing Matrix/Vector to Debug output.
...
Modified unit tests to check that.
15 years ago
Vladimír Vondruš
7f24696021
Don't return reference to temporary object in Debug output.
15 years ago
Vladimír Vondruš
cb0efb5d47
Vector3 constructor from Vector2 and optional Z/B value (default 0).
15 years ago
Vladimír Vondruš
fd9c137be2
Getter for Camera viewport size.
15 years ago
Vladimír Vondruš
4a23efa307
Use Vector2<unsigned int> for viewport size in Camera instead of ints.
15 years ago
Vladimír Vondruš
cf170c9155
Separate accessors for cameras and lights from objects in AbstractImporter.
15 years ago
Vladimír Vondruš
36213f13c4
MeshBuilder: reworked index builder.
...
Moved code which doesn't depend on index type outside this templated
function for smaller size of generated code.
15 years ago
Vladimír Vondruš
b35afc3010
MeshBuilder: Index type is based on vertex count, not index count.
15 years ago
Vladimír Vondruš
e108944f9e
Interface for importer plugins.
15 years ago