Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2013-05-22Fix #35461: Marker gets initialized to arbitrary positionSergey Sharybin
Use center of currently visible frame part instead of center of the whole frame for position of marker which is adding from toolbox. Used separate operator for this to keep operators more atomic and not confuse with lots of conflicting properties.
2013-05-21Fix #35232: Marker right-click misbehavior on addingSergey Sharybin
Made it so Add Marker button from toolbox will place marker in the middle of the frame.
2013-05-20code cleanup: split scons includes onto multiple lines, reduce chance of ↵Campbell Barton
include conflicts later on.
2013-05-12Refine markers position operatorSergey Sharybin
This operator will run a tracker from previous keyframe to current frame for all selected markers. Current markers positions are considering initial position guess which could be updated by a tracker for better match. Useful in cases when feature disappears from the frame and then appears again. Usage in this case is the following: - When feature point re-appeared on frame, manully place marker on it. - Use Refine Markers operation (which is in Track panel) to allow tracker to find a better match. Depending on direction of tracking use either Forwards or Backwards refining. It's easy: if trackign happens forwards, use Refine Frowards, otherwise use Refine Backwards :)
2013-05-10Set scene frames operator for clip editor.Sergey Sharybin
This operator will set scene's start/end frames to match clip's start frame and footage duration. Available in Clip panel in clip editor's toolbox.
2013-05-09Added a button to apply scale on scene solutionSergey Sharybin
This is an alternative to using camera to scale the scene and it's expected to be better solution because scaling camera leads to issues with z-buffer. Found the whole scaling thing a bit confusing, especially for object tracking, but cleaning this up is a bit different topic.
2013-05-09Setting tracking object scale shall not depend on active objectSergey Sharybin
2013-05-09Show dash instead of filename when displaying frame above image sequence length.Sergey Sharybin
2013-05-09Changes to footage information panelSergey Sharybin
- Display additional information about channels and buffer type (float/byte). - Don't show frame number beyong sequence length. - Also fixed issues with footage length calculation, so it's pronbably will be needed to reload some of existing footages.
2013-04-29Fix for [#35146] Move Clip Editor: "T-key panel" bugThomas Dinges
2013-04-22Footage information panelSergey Sharybin
Displays such information as current frame dimension, frame number within image sequence/movie and in case of image sequence input displays current file name of a frame. Not entirely happy with such approach, but was requested a lot by artists.
2013-04-15Cycles: optimization for 3D viewport border render with heavy scenes, the OpenGLBrecht Van Lommel
render of objects could slow things down when redrawing the view each time a new sample is displayed. Now it does a partial redraw of the viewport with only the render border area, skipping OpenGL object drawing while the render is refining.
2013-04-05code cleanup: include orderCampbell Barton
2013-04-04Jump to start/end of tracked segment works in Mask editing mode now.Sergey Sharybin
2013-04-04Changes to cache invalidation policy for movie clipsSergey Sharybin
- When changing clip in clip editor, remove all frames from it's cache to free memory for new clip. - When changing proxy render settings, free cache as well.
2013-04-04Clip editor prefetch changesSergey Sharybin
Made it an operator instead of automatic prefetching. Filling the whole memory with frames is not always desired behavior. Now prefetching is available via P-key, or from Clip panel in toolbox or from Clip menu. Also enabled prefetching for non-proxied movies.
2013-04-03Apparently zoom in clip editor was brokenSergey Sharybin
Also silenced some warnings in glutil.
2013-04-03code cleanup: unused functionsCampbell Barton
2013-04-02More usage of GLSL for color managed image drawingSergey Sharybin
Uses GLSL for drawing image in Image Editor space. This requires change in image_buffer_rect_update, so original float buffer is being updated as well. This is unlikely be something bad, but will keep an eye on this change. Also no byte buffer allocation happens there, this is so because byte buffer used for display only and in case of GLSL display such allocation and partial update is just waste of time. Also switched OpenGL render from using CPU color space linearization to GLSL color space transform. Makes OpenGL rendering pretty much faster (but still slower than in 2.60). internal changes: - Added functions to setup GLSL shader for color space conversion in colormanagement.c. Currently conversion form a colorspace defined by a role to linear space is implemented. Easy to extend to other cases. - Added helper functions to glutil.c which does smarter image buffer draw (calling all needed OCIO stuff, editors now could draw image buffer with a single function call -- all the checks are done in glutil.c). - Also added helper function for buffer linearization from a given role to glutil.c. Everyone now able to linearize buffer with a single call. This function will do nothing is GLSL routines fails or not supported. And one last this: this function uses offscreen drawing, could potentially give issues on some cards, also will keep an eye on this.
2013-03-29Implement GPU-side display transform for clip editorSergey Sharybin
Implemented using GLSL API from OpenColorIO library and some general functions were added to it's c-api: - OCIO_setupGLSLDraw prepares OpenGL context for GPU-based transformation for a giver processor. This function compiles and links shader, sets up it's argument. After this transformation would be applied on an image displaying as a 2D texture. So, glaDrawPixelsTex called after OCIO_setupGLSLDraw will do a proper color space transform. - OCIO_finishGLSLDraw restores OpenGL context after all color-managed display is over. - OCIO_freeOGLState frees allocated state structure used for cacheing some GLSL-related stuff. There're some utility functions in IMB_colormanagent which are basically proxies to lower level OCIO functions but which could be used from any place in blender. Chacheing of movie clip frame on GPU is also removed now, and either glaDrawPixelsTex or glaDrawPixelsAuto are used for display now. This is so no code duplication happens now and no large textures are lurking around in GPU memory. Known issues: - Texture buffer and GLSL are no longer checking for video card capabilities, possibly could lead to some artifacts on crappy drivers/cards. - Only float buffers are displaying using GLSL, byte buffers will still use fallback display method. This is to be addressed later. - If RGB curves are used as a part of display transform, GLSL display will also be disabled. This is also thing to be solved later. Additional changes: - glaDrawPixelsTexScaled will now use RGBA16F as an internal format of storing textures when it's used to draw float buffer. This is needed so LUT are applied without precision loss.
2013-03-27I18n fixes for C panels & menus (we have to specify the default bpyrna ↵Bastien Montagne
context here, else we get the horrible "empty" string (as translation_context of panels is an array, not a pointer, so it's never NULL).
2013-03-26Correction to recent prefetch commitSergey Sharybin
When using movie as a clip no need to prefetch in cases no proxies are sued at this moment.
2013-03-25Clip editor prefetching changesSergey Sharybin
Now prefetching happens from cursor up to scene end frame and then from cursor down to scene start frame. Also disabled prefetching for non-unidistorted proxies because of issues with timecodes (seek horribly fails in some cases). This seek need to be fixed since it's actually happens for manual timeline scrubbing as well, but that's another story..
2013-03-21revert edit from r55461, causing build error on some systems.Campbell Barton
2013-03-21Tweaks to movie clip prefetching after discussion with SebastianSergey Sharybin
Don't use sequencer's Frames Prefetch option and rather fill the whole cache with frames. Since movie clip is not "classical" prefetcher (it doesn't do anything while playing back) and main purpose is to speed up reading for further tracking and so, such a change seems logical.
2013-03-20Prefetching for movie clipsSergey Sharybin
This commit basically implements frames prefetching for movie clip datablock. Number of frames to be prefetched is controlled in User Preferences, System tab, Prefetch Frames option. Currently prefetching is destructive-less for movie cache, meaning mo frames will be removed from the cache when while prefetching. This is because it's half of simplier to implement, but it also makes sense from tracking point of view -- we could want to playback in both directions and removing frames from behind time cursor is not always a good idea. Anyway, smarter prefetching strategy could be developed later. Some implementation notes: - Added MEM_CacheLimiter_get_memory_in_use function to get memory usage of specified memory limiter. - Fixed prototype of MEM_CacheLimiter_get_maximum which was simply wrong (used wrong data type for output). - Added some utility functions to movie clip and movie cache for direct cache interaction and obtaining cache statistics. - Prefetching is implemented using general jobs system. which is invoking from clip draw function. - Prefetcing will stop as soon other job or playback starts. This is done from performance point of view. Jobs will likely require lots of CPU power and better to provide whole CPU to it. Playback is a bit more complicated case. For jpeg sequence playback prefetching while paying back is nice. But trying to prefetch heavy exr images and doing color space conversion slows down both playback and prefetching. TODO: - Think of better policy of dealing with already cached frames (like when cached frames from other clips prevents frames from current clip to be prefetched) - Currently a bit funky redraw notification happens from prefetch job. Perhaps own ND_ is better to have here. - Hiding clip while prefetch is active in theory shall stop prefetching job. - Having multiple clips opened on file load will prefetch frames for only one of them.
2013-03-19Use checker backdrop for footage with alpha channel in clip editorSergey Sharybin
Also use glaDrawPixelsAuto as a fallback method. Hopefully it'll make using 2D textures for frames higher resolution than GL_MAX_TEXTURE_SIZE.
2013-03-17code cleanup: incorrect sized array args, remove some redundant code.Campbell Barton
2013-03-16style cleanupCampbell Barton
2013-03-15Compile fix:Thomas Dinges
* Scons needed PThread include after recent movie clip changes.
2013-03-15Further improvement for multi-threaded proxiesSergey Sharybin
Handle sequences in a special case for dealing with sequence sources. Namely handle separate frames in separate threads, but do disk read from a critical section since HDD is not so friendly with lots threads requesting for data from it. Makes proxy building much faster than it was before.
2013-03-15Multi-threaded frame calculation for movie clip proxiesSergey Sharybin
This commit implements multi-threaded calculation of frames when building proxies. Both scaling and undistortion steps are now threaded. Frames and proxy resolution are still handled one-by-one, saving files after every single step. So if HDD is not so fast, this commit could have not so much benefit. Internal changes: - Added IMB_scaleImBuf_threaded which scales given image buffer in multiple threads and uses bilinear filtering. - libmv's camera intrinsics now have SetThreads() method which is used to specify how many OpenMP threads to use for buffer distortion/undistortion. And yeah, this code is using OpenMP for threading. - Reshuffled a bit libmv-capi calls and added function BKE_tracking_distortion_set_threads to specify number of threads used by intrinscis.
2013-03-14use BLI_strncpy_rlen() rather then BLI_snprintf() when no formatting is needed.Campbell Barton
also replace sprintf with strcpy when no formatting is done.
2013-03-13code cleanup: use const events for modal and invoke operators.Campbell Barton
2013-03-09Fix #34574: Empty Movie Clip Editor crash on selectSergey Sharybin
2013-03-07use bool for rna funcs.Campbell Barton
2013-03-05View All operator for motion tracking dopesheet.Sergey Sharybin
2013-03-04patch [#34103] use booleans for extensions testing.Campbell Barton
bli_testextensie.patch - from Lawrence D'Oliveiro (ldo)
2013-02-28More UI messages fixes...Bastien Montagne
2013-02-25style cleanupCampbell Barton
2013-02-22Fix #34357: image editor scope and clip editor track preview did not resizeBrecht Van Lommel
properly with different DPI settings.
2013-02-22Motion tracking dopesheetSergey Sharybin
Highlight background depending on number of tracks existing on frame. This is not so much mathematically accurate displaying where things shall be improved, but it's nice feedback about which frames better be reviewed. Bad frames are tracks < 8, highlighted with red. OK-ish frame are 8 <= tracks < 16, highlighted with yellow. Could be some artifacts with color region start/end, this is a bit unclear what exactly expected to be highlighted -- frames are displayed as dots, but in fact they're quite noticeable segments. --- svn merge -r54572:54573 ^/branches/soc-2011-tomato
2013-02-20Fix #34299: Motion Tracking 20x slower under WindowsSergey Sharybin
Root of the issue goes to SSBA library which didn't work properly when using optimization in MSVC. It was worked around by disabling optimization for libmv, which is in fact shame and shouldn't have been done. It seems after some changes optimization does not affect on SSBA code, but enabling optimization could be risky so close to release. For now solved by splitting SSBA to separate CMake/SCons library, disabling optimization only for this particular library and enabling optimization for rest of libmv. Tested on all files which used to fail with optimization enabled in SSBA and all of them works the same as before. Tracking speed is significantly higher now. After release we'll enable optimization for SSBA as well, so there'll be no crappy build setup. Later we'll replace old SSBA library with new BA code based on Ceres. Bundle script would be broken for until then, so better not to use it.
2013-02-19minor change to own recent commit with transform fcurve centers and some ↵Campbell Barton
style edits and typo corrections.
2013-02-17Another huge bunch of UI translation fixes, mostly reported by Leon Cheung, ↵Bastien Montagne
Sv.Lockal, Gabriel Gazzán and Satoshi Yamasaki, thanks!
2013-02-14After scroll bar commit motrack dopesheet went out of sync verticallySergey Sharybin
Shall be fine now.
2013-02-05Fix #34040: Moving Normal Node with enabled Cycles Material Preview crashesSergey Sharybin
Issue was caused by couple of circumstances: - Normal Map node requires tesselated faces to compute tangent space - All temporary meshes needed for Cycles export were adding to G.main - Undo pushes would temporary set meshes tessfaces to NULL - Moving node will cause undo push and tree re-evaluate fr preview All this leads to threading conflict between preview render and undo system. Solved it in way that all temporary meshes are adding to that exact Main which was passed to Cycles via BlendData. This required couple of mechanic changes like adding extra parameter to *_add() functions and adding some *_ex() functions to make it possible RNA adds objects to Main passed to new() RNA function. This was tricky to pass Main to RNA function and IMO that's not so nice to pass main to function, so ended up with such decision: - Object.to_mesh() will add temp mesh to G.main - Added Main.meshes.new_from_object() which does the same as to_mesh, but adds temporary mesh to specified Main. So now all temporary meshes needed for preview render would be added to preview_main which does not conflict with undo pushes. Viewport render shall not be an issue because object sync happens from main thread in this case. It could be some issues with final render, but that's not so much likely to happen, so shall be fine. Thanks to Brecht for review!
2013-01-30fix [#33740] Incorecct UV mapping from camera viewCampbell Barton
Bug was in fact that the options for this operator couldn't be accessed (unless you knew to press f6), now the redo panel sets the window area before polling. Now other operators that use the window region will show settings too.
2013-01-27Operators name "cleanup"Dalai Felinto
The operator names all show up in the Search button. As such is nicer if they can all have the main words capitalized. e.g. "Snap strips" should be "Snap Strips" "Copy to clipboard" should be "Copy to Clipboard" This was done with a mix of bash tools, regex, and manual work because I'm too rushed into regex :) + fix bge stereo eye separation tooltip
2013-01-25header cleanup, include BLI before BKE, also use bool for ntreeShaderExecTreeCampbell Barton