Commit Graph
22 Commits
Author SHA1 Message Date
itsmattkc 1e2f0220a2 viewerglwidget: use OIIO::ImageInput rather than OIIO::ImageBuf
Gives us better control over the file I/O (using ImageBuf would fail to
release file handles sometimes).
2020-02-20 16:39:30 +11:00
itsmattkc 4c4b91afd6 viewerglwidget: fix bug that didn't clear the viewport correctly on empty frames 2020-02-19 11:34:21 +11:00
itsmattkc fe1f7626d1 Merge branch 'master' of https://github.com/olive-editor/olive 2020-02-17 16:35:15 +11:00
itsmattkc 757854c4b3 viewer: detect nouveau and warn
Nouveau has poor compatibility with Olive (and most other graphically intensive
applications). For user benefit, we throw a warning messagebox if we detect the
user is using Nouveau.
2020-02-17 16:32:38 +11:00
itsmattkc ceb70a1870 viewer: use internal texture to allow viewer to control texture as part of its
context

More intuitive code flow and allows the user to undock the viewer (which
forcibly destroys and recreates the context) and the viewer will handle
creation of the new texture in said new context.
2020-02-16 18:24:49 +11:00
itsmattkc 40e8aec285 viewer: minor code improvements 2020-02-03 01:27:45 +11:00
itsmattkc f068c425d2 viewer: provide UI to set preview resolution
Previews don't need to be rendered full resolution, particularly since the
preview is hardly ever 1:1 size of the sequence. The functionality to render
at lower resolutions already existed, but there was no UI for it. This commit
implements UI to set the resolution divider on the viewer.
2020-01-26 13:27:06 +11:00
itsmattkc a4b3dc2ab4 fixed bug that caused flickering textures
The ViewerGLWidget would receive raw GLuint textures while most of Olive uses
an OpenGLTexture C++ wrapper. Unfortunately this would lead to the C++ wrapper
getting destroyed since its instance wasn't kept in the ViewerGLWidget. This
meant by the time the ViewerGLWidget would re-draw, the texture would have
already been destroyed leading to some black frames. This is now fixed.
2019-12-27 05:11:42 +11:00
itsmattkc 0ef00245ad added functions to override the resolution and matrix transform of the viewer widget
While in most circumstances these shouldn't be used, they're useful for
showing things like export previews
2019-12-19 15:55:08 +11:00
itsmattkc a0b6bb842d ColorManager is now specific to the Project
OCIO config was set on a per-project basis, but we were using a singleton for
the ColorManager that would break if more than one project was ever open.
Now the ColorManager belongs to the Project and is always accessed through the
Project.
2019-12-17 15:18:07 +11:00
itsmattkc baab21a3ab added option to disable color management menu on viewer
While the Viewer is _always_ color managed, In some contexts, the color
management may be controlled from an external UI making the menu unnecessary.
2019-12-16 16:43:27 +11:00
itsmattkc 1fd62948e8 completely implementation of color management in viewer
The viewer had the color management backend in place already, but the frontend
was non-functional. This commit implements most if not all color management
functionality.
2019-12-16 13:41:35 +11:00
itsmattkc c14125e640 work towards rewriting the render infrastructure
Mostly foundational work and re-implementing older code in a smarter way
(i.e. context creation code should be slightly faster than it was before)
2019-11-01 22:58:02 +11:00
itsmattkc 77bcb70dac started porting renderer to new portable form 2019-10-31 19:14:58 +11:00
itsmattkc 14fa181951 fixed compile issues on some widgets 2019-10-16 23:06:58 +11:00
itsmattkc d2dc0d2823 work on internal color management 2019-09-28 01:38:15 +10:00
itsmattkc a0484bf43e backend color management on viewer 2019-08-30 00:19:11 +10:00
itsmattkc f2d11662c9 finished prototype of nodes providing a texture to a viewer 2019-07-13 03:13:59 -04:00
itsmattkc 5e3c2fb7e4 documented (nearly) ever class 2019-07-06 23:32:01 -05:00
itsmattkc fd8925d5f2 documented and completed viewer GL widget 2019-06-22 23:21:13 -07:00
itsmattkc a468b3727d further development on rewrite 2019-06-17 16:05:51 -07:00
itsmattkc 9afbe92574 began large scale restructure 2019-06-17 10:17:04 -07:00