Commits on Source (83)
-
Christian Schulte zu Berge authored
* Updated all CMake scripts to use Qt5 * CampvisApplication takes care of moving the QGLContext thread affinity to the threads that do the rendering. * QtCanvas:resize() is called through Qt signalling to ensure being in GUI thread. * Added init and deinit functions to the Runnable interface. * minimum required CMake version is now 3.0 refs #249
-
Christian Schulte zu Berge authored
refs #249
-
Christian Schulte zu Berge authored
Removed redundant CMake options, renamed test-campvis to campvis-test and removed pipeline and converter registration, since building shared libraries is mandatory now.
-
Christian Schulte zu Berge authored
* Fixed deadlock in VolumeRenderer when changing the RaycastingProcessor * Fixed compile error in ITK module * Fixed some gcc warnings * Fixed usage of deprecated ScopedSynchronousGlJobExecution in mainwindow.cpp
-
Christian Schulte zu Berge authored
-
Jakob Weiss authored
-
Jakob Weiss authored
VS15 is warning about dll-exporting a class without exporting its base class, which can be ignored for deriving from STL classes.
-
Jakob Weiss authored
invalidate() failed for events triggered by sigslot signals, as the makeCurrent() only works from the Qt main thread. Invalidation now goes through the Qt Signals/Slots mechanism to end up in the right thread.
-
Jakob Weiss authored
Access to data entries is now managed through two facilities: DataHandles manage metadata and reference counting to handle memory deallocation properly. ScopedTypedData has been extended to manage threadsafe read/write access to the underlying data.
-
Jakob Weiss authored
Only minimum necessary changes to get image representations to work, no real writable representations.
-
Jakob Weiss authored
-
Jakob Weiss authored
Very crude demonstration, mainly to prove that everything compiles and (probably?) works as intended. No writable image representations, hence the weird loopholes to remove the representations from the representations list. No deadlocks! yaay!
-
Jakob Weiss authored
-
Jakob Weiss authored
-
Jakob Weiss authored
-
Jakob Weiss authored
-
Jakob Weiss authored
* improved filename pattern recognition * added voxel spacing parameter
-
Jakob Weiss authored
It is now possible to backup and restore 1D transfer functions in a very simple text file format.
-
Jakob Weiss authored
The background decorator can now blend a texture as well as the color gradient. Currently, at fragments where the texture is (0,0,0,0), it will still use the gradient. Also fixes ProcessorDecoratorBackground::addProperties which did not override AbstractProcessorDecorator::addProperties before due to signature mismatch.
-
Jakob Weiss authored
When adding rendered geometr, the EEPGenerator did not unproject the depth value correctly, leading to wrong exit points. The current solution is a more robust solution, but requires an additional texture lookup into the entrypoint color texture. If performance of the EEPGenerator ever becomes a problem, start here by implementing a proper depth unprojection
-
Jakob Weiss authored
The ProxyGeometryGenerator now correctly generates oriented geometry for volumes with arbitrary poses by directly using the TextureToWorld matrix to transform the bounding box instead of just transforming the bounds.
-
Jakob Weiss authored
Bugfix: EEP Generator now handles arbitrary volume transformations correctly, but might have broken the mirroring feature # Conflicts: # modules/vis/processors/volumeexplorer.cpp
-
Jakob Weiss authored
Instance names to (re-)name processor instances individually for UI and discrimination of different instances # Conflicts: # core/pipeline/abstractprocessor.h
-
Jakob Weiss authored
* MultiIndexedGeometry index type is now 32 bit to allow for larger meshes * MultiIndexedGeometry::generateVertexNormals() can now automatically generate normals for a GL_TRIANGLES topology
-
Jakob Weiss authored
-
Jakob Weiss authored
Colors adapted from https://gist.github.com/QuantumCD/6245215, might need some more work to display all widgets nicely
-
Jakob Weiss authored
* Debug Feature: Thread names for pipelines and some important active threads show in debugger * fullscreen can be toggled per pipeline via the pipeline property and via ALT+Return key combination
-
Jakob Weiss authored
* increased overall font size * introduced debugging diagnostic to detect when derived processors do not call AbstractProcessor::[de]init() * fixed processors not adhering to this * fixed some tab vs spaces problems
-
Jakob Weiss authored
-
Jakob Weiss authored
* InspectorWindow immediately detaches from the MDI surface * some swapBuffers warning on first creation of the inspector remains
-
Jakob Weiss authored
Texture manager manages textures in a cache, for more efficient texture reuse. Currently only clears the cache on program exit, no garbage collection, disabled by default.
-
Jakob Weiss authored
* Adapted cgt::Shader to be able to represent and store CS objects * cgt::ImageUnit manages the GPU image units in use * GpuCapabilities has been updated for some related queries * GLTextureFormatTraits simplify lookup of relevant info for a known internalFormat of a texture
-
Jakob Weiss authored
-
Jakob Weiss authored
-
Jakob Weiss authored
* CSHelper ns contains methods to simplify boilerplate code * some changes to the cgt::Texture interface * Shader code now dumped to console when compilation fails (could still use some reworking, i.e. like line numbers) * updated MedianFilter code
-
Jakob Weiss authored
Intermediate Commit of Issue #12 "Create Compute Shader Support" Intermediate commit of working feature for CS support - should be extended to handle proper support though.. See merge request !1
-
Jakob Weiss authored
# Conflicts: # ext/cgt/texture.cpp
-
Jakob Weiss authored
* Updated TextureManager * Fixed some warnings and minor cleanup
-
Jakob Weiss authored
-
Jakob Weiss authored
-
Jakob Weiss authored
* Added more supported file formats to DevilImageReader and DevilImageWriter * Added more supported formats for datacontainerinspectorwidget.cpp export to file
-
Jakob Weiss authored
Now spawns a garbage collection thread that periodically clears the cache. Still not optimal but at least gets rid of unused memory at some point. For next iteration, a "smart" garbage collection (time- or query based heuristic)
-
Jakob Weiss authored
* datacontainerinspector can now display alpha-channel only in a meaningful way * new method in stringutils to display bytes in a humanly readable form * depth darkening has slightly increased range for lambda * satisfied formatting OCD
-
Jakob Weiss authored
-
Jakob Weiss authored
Note: The googletest directory included has been modified from the original release: The CMakeLists.txt has been adapted and gmock and some other unnecessary folders have been removed.
-
Jakob Weiss authored
-
Jakob Weiss authored
* minor whitespace fix in mainwindow.cpp
-
Jakob Weiss authored
-
Jakob Weiss authored
* Added .editorconfig * cgt::Texture::downloadTextureToBuffer now does a glFlush() before downloading * ColorPropertyWidget now supports transparent colors properly
-
Jakob Weiss authored
* AbstractPipeline now does explicit GPU timing, implying a Flush of the OpenGL pieline after every processor * OptionProperty has an extended constructor directly using initializer lists of GenericOption<>'s * ImageMappingInformation has somehow extended / more complete interface allowing copies and default construction
-
Jakob Weiss authored
TextureManager now uses a configurable lifetime for the lifetime of a cache object. Upon every garbage collection event, the counter is incremented for each object in the cache and if a counter exceeds TextureManager::garbageLifetime, the texture id is marked for deletion. Deletion now happens in a separate thread, as a job enqueued to the OpenGLJobProcessor, in order to properly acquire a valid opengl context.
-
Jakob Weiss authored
-
Jakob Weiss authored
* texturemanager documentation and parameter fix * imagerepresetation conversion fix for channel number mismatch
-
Jakob Weiss authored
-
Jakob Weiss authored
-
Jakob Weiss authored
-
Jakob Weiss authored
* glImageResampler now sets the mapping information correctly * ImageData now asserts that an associated imagemappinginformation has the same dimensionality
-
Jakob Weiss authored
* Light sources now have an additional camera input. If this is set, the light source position is relative to the camera coordinate system * ImageMappingInformation and Texture3D now supply an additional pair of matrices: textureToWorldMatrixInvTransp to transform normals between world and texture space
-
Jakob Weiss authored
* Based on DevIL 1.8.0, built with libjpeg 9.1, libpng 1.6.69, libsquish 1.15, libtiff 5.2.5, openexr 2.2.0, zlib 1.2.11 * Manual patch fixes problem with paletted BMPs (see https://github.com/DentonW/DevIL/issues/56) * DevIL only built for win64, win32 is considered deprecated as of right now :)
-
Jakob Weiss authored
Attempted colored shadows, but this does not give correct results yet.
-
Jakob Weiss authored
Stereo module, extended DevilImageReader with builtin filters, minor fix to PredicateDemoSmallHeart pipeline
-
Jakob Weiss authored
For some reason, devIL was completely checked in with campvis-public, so we stick to checking in the (customized) windows binaries for now
-
Jakob Weiss authored
* OpenGL core context is instantiated and enforced, for better forward compat * Fixed DLL deployment to RelWithDebInfo and MinSizeRel configurations * Bumped GLEW to 2.0.0 * Fixed wrong shading in various raycasters (normal was wrong sign) Squashed commit of the following: commit 21b33709371459552aff972124e9da4ae0077cf4 Author: Jakob Weiss <jakob.weiss@tum.de> Date: Mon Feb 6 15:21:12 2017 +0100 Fixed number of texture unit query commit 6592f366c7f24822a8681401cf5a415a622e5f6e Author: Jakob Weiss <jakob.weiss@tum.de> Date: Mon Feb 6 14:27:36 2017 +0100 Fixed core profile requirements * now using Framebuffer ARB version instead of EXT * fixed extension handling and windows version recognition * Removed pixel transfer functions usage and some validity checks for vis pipelines commit 36c82733434e63309d092bf85f78f471b56bebfb Author: Jakob Weiss <jakob.weiss@tum.de> Date: Mon Feb 6 13:50:08 2017 +0100 Bumped glew to 2.0.0 commit 4a4a1d51756aad0e19aef9e723e1dfe7d07a797d Author: Jakob Weiss <jakob.weiss@tum.de> Date: Fri Feb 3 16:26:07 2017 +0100 First Progress - WIP # Conflicts: # ext/cgt/texturemanager.cpp
-
Jakob Weiss authored
-
Jakob Weiss authored
* gradient computation now properly accounts for anisotropic voxels * Shaders that fail to compile at startup result in an error on the console, with the option to retry computation (after editing the shader) instead of crashing campvis completely
-
Jakob Weiss authored
-
Jakob Weiss authored
-
Jakob Weiss authored
This reverts commit e7e55015. # Conflicts: # core/glsl/tools/shading.frag
-
Jakob Weiss authored
Raycaster is based on the technique described in "Local Ambient Occlusion in Direct Volume Rendering" by F. Hernell, P. Ljung, A. Ynnermann in IEEE TVCG 2010. Implementation does not allow for precomputed LAO volumes but instead estimates the LAO term per sample.
-
Jakob Weiss authored
(cherry picked from commit b4033e899e318707a732203584c6aee0d9c178c8) # Conflicts: # modules/stereo/processors/stereocameragenerator.cpp
-
Jakob Weiss authored
(cherry picked from commit 00cdb42948e45681b5cde12629f6970b906b0eec)
-
Jakob Weiss authored
(cherry picked from commit ad722d98127144e0ff34523f210247a92f8dbb20)
-
Jakob Weiss authored
Somehow I messed up the cherrypick/merge history. Stereo module provides basic processors for a compositor and a camera generator to generate stereo images.
-
Jakob Weiss authored
* ambient occlusion refactored as a decorator * pre-integrated raycaster and processor to pre-integrate TF
-
Jakob Weiss authored
-
Jakob Weiss authored
* added buildClang to .gitignore * Minimum required glsl version is now 430 by default (might be possible to downgrade again by checking on a per-module basis) * More of the base modules now register their processors into the factory. * Minor bugfixes in optimizedraycaster (inverted gradient dir) and glimageresampler (renamed variable)
-
Jakob Weiss authored
- Fixed bug with worldToTexture matrix - default texture clamping is now CLAMP_TO_BORDER
-
Jakob Weiss authored
-
Jakob Weiss authored
-
Jakob Weiss authored
-
Jakob Weiss authored
Tested on MacBook late 13 with NVIDIA GeForce GT 750M on High Sierra
-
Jakob Weiss authored
- Lots of missing override definitions - some virtual overloaded function hiding warnings - class initializer list order
-
Jakob Weiss authored
Campvis nx See merge request !7
.editorconfig
0 → 100644