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
2017-07-25Fix T51450: viewport render time keeps increasing after render is done.Jeff Knox
Reviewed By: brecht Differential Revision: https://developer.blender.org/D2747
2017-07-24Correct invalid assert useCampbell Barton
2017-07-03Fix T51734: batch-generate previews crashes on some materials.Brecht Van Lommel
2017-05-20CMake: Use GCC7's -Wimplicit-fallthrough=5Campbell Barton
Use to avoid accidental missing break statements, use ATTR_FALLTHROUGH to suppress.
2017-05-08Fix missing render update when building without OCIO but having GLSL image ↵Sergey Sharybin
draw method
2017-05-03Render API/Cycles: Identify Render Passes by their name instead of a type flagLukas Stockner
Previously, every RenderPass would have a bitfield that specified its type. That limits the number of passes to 32, which was reached a while ago. However, most of the code already supported arbitrary RenderPasses since they were also used to store Multilayer EXR images. Therefore, this commit completely removes the passflag from RenderPass and changes all code to use the unique pass name for identification. Since Blender Internal relies on hardcoded passes and to preserve compatibility, 32 pass names are reserved for the old hardcoded passes. To support these arbitrary passes, the Render Result compositor node now adds dynamic sockets. For compatibility, the old hardcoded sockets are always stored and just hidden when the corresponding pass isn't available. To use these changes, the Render Engine API now includes a function that allows render engines to add arbitrary passes to the render result. To be able to add options for these passes, addons can now add their own properties to SceneRenderLayers. To keep the compositor input node updated, render engine plugins have to implement a callback that registers all the passes that will be generated. From a user perspective, nothing should change with this commit. Differential Revision: https://developer.blender.org/D2443 Differential Revision: https://developer.blender.org/D2444
2017-04-29Cleanup: unused includesCampbell Barton
2017-04-26Avoid race condition copying Scene for off-thread OpenGL image saveSergey Sharybin
2017-04-26Threading: Remove thread lock which seems uselessSergey Sharybin
Render data is never guarded by image drawe lock.
2017-04-20Fix T51248: user preferences window size not adapted to DPI.Brecht Van Lommel
2017-04-14UI: Add/Improve a few tooltipsAaron Carlisle
See T51061
2017-03-16Fix BGE building.Bastien Montagne
When you use typedef'ed enum, you need to define all supported values explicitely in enum, else compiler goes grumpy...
2017-03-15Load user-preferences before startup fileCampbell Barton
Internal change needed for template support. Loading the user preferences first so it's possible for preferences to control startup behavior. In general it's useful to load preferences before data-files, so we know security settings for eg.
2017-03-07Task scheduler: Remove per-pool threads limitSergey Sharybin
This feature was adding extra complexity to task scheduling which required yet extra variables to be worried about to be modified in atomic manner, which resulted in following issues: - More complex code to maintain, which increases risks of something going wrong when we modify the code. - Extra barriers and/or locks during task scheduling, which causes extra threading overhead. - Unable to use some other implementation (such as TBB) even for the comparison tests. Notes about other changes. There are two places where we really had to use that limit. One of them is the single threaded dependency graph. This will now construct a single-threaded scheduler at evaluation time. This shouldn't be a problem because it only happens when using debugging command line arguments and the code simply don't run in regular Blender operation. The code seems a bit duplicated here across old and new depsgraph, but think it's OK since the old depsgraph is already gone in 2.8 branch and i don't see where else we might want to use such a single-threaded scheduler. When/if we'll want to do so, we can move it to a centralized single-threaded scheduler in threads.c. OpenGL render was a bit more tricky to port, but basically we are using conditional variables to wait background thread to do all the job.
2017-03-03Update comment which was remained in an old placeSergey Sharybin
2017-03-01Cleanup: code-style, duplicate headerCampbell Barton
2017-02-15Fix T50542: Wrong metadata frame when using OpenGL renderSergey Sharybin
2016-11-16Fix T50051: Avoid crash when render grease pencil from VSEAntonioya
The renderpasses for grease pencil are not necessary when render from sequencer. This fix solves the GPF but we need to rethink the complete render process for grease pencil and integrate better in the render and composition workflow. Thanks to Dalai Felinto por helping in the debug and fixing of the problem.
2016-11-12Fix T49996: VSE opengl render crash with grease pencil if current frame is ↵Antonioya
empty If the opengl render with grease pencil is run from VSE with the current frame outside visible frames, the render pass is wrong and the render must be canceled because nothing to render. Related to #T49975
2016-11-10Fix Grease Pencil render in VSE crashes when no strips (#T49975)Dalai Felinto
Solution as suggested by Sergey Sharybin. Initial debugging by Antonio Vazquez.
2016-10-27Fix T49829: Removal of custom icon previews during add-on unregister crashes ↵Bastien Montagne
Blender. Issue was happening when removal of custom icons was done while they were still being rendered by preview job. Now add a 'deffered deletion' system, to prevent main thread to delete preview image until loading thread is done with them. Note that ideally, calling `ED_preview_kill_jobs()` on custom icon removal would have been simpler, but we don't have easy access to context here...
2016-10-14Prevent crash after OpenGL rendering animation to images.Sybren A. Stüvel
2016-10-12Fix T49622: Grease pencil not rendering out of VSESergey Sharybin
2016-10-10OpenGL animation: Fix stupid mistake form previous commitSergey Sharybin
Flagging of pool to cancel was done in the wrong place, making last frames missing in the final video.
2016-10-10OpenGL render: Fix missing file output after pressing EscSergey Sharybin
Apparently, the whole G.is_break is not used by OpenGL render, meaning this flag will not be clear before running the operator. This was causing missing file output after pressing Esc once for the rest of Blender session.
2016-10-07OpenGL render: Limit number of scheduled frames for writeSergey Sharybin
Previously if the rendering is much faster than saving (for example, when transcoding stuff via VSE) it was possible to have 100s of frames in memory. This isn't ideal because of limited amount of RAM, so need to have some sort of limit. This is exactly what is implemented in this commit.
2016-10-07OpenGL render: Fix non-deterministic order of frame writes for moviesSergey Sharybin
By the design of task scheduler it was possible that tasks from somewhere in the middle of scheduled list will be handled first. For example, one thread might be iterating over the scheduled list and ignore tasks because there is other thread is working on task from the same pool. However, if that other thread finishes task before iteration is over current thread will pick up task from somewhere in in the middle of the list. This isn't a problem in general case, but for movie rendering we do need to have strict order of frames.
2016-10-07OpenGL: Don't write frames when rendering was canceledSergey Sharybin
2016-10-07OpenGL: Do not schedule new frames for write if error happensSergey Sharybin
Also do not attempt to write any already scheduled frames.
2016-09-22Fix T49422: Metadata not showing in OpenGL rendersSergey Sharybin
Own regression since recent optimization.
2016-09-18BLI_listbase: Add/use utility to move link (BLI_listbase_link_move)Julian Eisel
We were calling BLI_remlink and then BLI_insertlinkbefore/after quite often. BLI_listbase_link_move simplifies code a bit and makes it easier to follow. It also returns if link position has changed which can be used to avoid unnecessary updates. Added it to a number of list reorder operators for now and made use of return value. Behavior shouldn't be changed. Also some minor cleanup.
2016-09-17OpenGL render: Bugfix (unreported) after ↵Thomas Beck
rB6f92604e539b2114763150fb1ace60d28e59a889 Crashes occured immediately when clicking on "OpenGL render image" because there was only a task pool created previously when it was an animation. Solved it by introducing a variable is_animation to the openglrender and omitting the task_pool call when it's no animation. @sergey: Please check my changes, moved the pool_ok and the lock into the is_animation clause.
2016-09-16Improve description of move operator direction propertiesJulian Eisel
These may be exposed in UI (keymap editor & redo panel), so better avoid using identifiers like "UP" "DOWN". They are redundant anyway (already displayed).
2016-09-16OpenGL render: Move file writing to a separate threadSergey Sharybin
The idea is to have a dedicated thread which is responsive for all the file writing to a separate thread, so slow disk will not slow down OpenGL itself. Gives really nice speedup around 1.5x when exporting barber shop layout file to h264 video.
2016-09-15Fix mistake in previous commitSergey Sharybin
Was copying things in other way around and was not performing proper color space conversion.
2016-09-15OpenGL render: Avoid byte-float-byte roundtripSergey Sharybin
It was annoyingly slow to do roundtrip from byte OpenGL render to float render result and back to byte image format (which is used in 99% of cases for the OpenGL previews), Now we use render result's rect32 to store render result which is already supposed to be in the display space. Gives about 30% speed improvement for OpenGL previews here.
2016-09-15OpenGL render: Add developer option to easily enable time informationSergey Sharybin
2016-09-15OpenGL render: Skip GP passes if viewport has GP visibility disabledSergey Sharybin
2016-08-31Fix T49210: Issue with User Count on Images in some shader nodetrees when ↵Bastien Montagne
rendering previews Our usercount handling was really... infuriating :| Here, localization (i.e. 'shalow' copy that should not touch to usercounts) was incrementing usercounts of the sole Textures IDs of lamps and worlds (on the weak and fallacious pretext that related BKE_free... functions would decrement those counts)... Seriously... So now, localize funcs do not increment any usercount anymore (since matching BKE_free... ones do not decrement any either), and we do not call anymore that stupid unlink when freeing temp localized copies of lamps/materials at end of preview generation. Note that we probably still have a lot to do to cleanup that copy/localize code, pretty sure we can dedpulicate a lot more.
2016-08-04Grease Pencil v2 BranchAntonio Vazquez
Improve current Grease Pencil in order to get a better 2D animation tool. More info in WIKI pages: https://wiki.blender.org/index.php/User:Antoniov Reviewed By: Severin, aligorith, campbellbarton Patch by @antoniov, with edits by @Severin. Differential Revision: https://developer.blender.org/D2115
2016-07-31Cleanup: spelling, styleCampbell Barton
2016-07-26Fix T48813: Custom icon is not drawn on header / addons prefs panel.Bastien Montagne
For now use 'brute force' and refresh whole UI when new icons get rendered. See comment of T48813 for ideas about how to handle that in future (2.8 project ?).
2016-07-21Cleanup: spellingCampbell Barton
2016-07-20Cleanup: use BKE naming convention for object materialsCampbell Barton
Also remove unused 'material_from' function (which isn't very useful).
2016-07-16Cleanup: spellingCampbell Barton
2016-07-10Cleanup/Refactor: pass Main pointer to all ID copy functions.Bastien Montagne
Also allows us to get rid of a few _copy_ex() versions...
2016-07-08Refactor remapping's pre/post process of special cases.Bastien Montagne
Main issue was that BKE_libblock_relink_ex was pretty much ignoring all those... Also, unlinking of objects was not handling correctly indirect-related flags. Refactored code into helper functions to avoid too much duplicated code.
2016-06-22ID-Remap - Step one: core work (cleanup and rework of generic ID datablock ↵Bastien Montagne
handling). This commit changes a lot of how IDs are handled internally, especially the unlinking/freeing processes. So far, this was very fuzy, to summarize cleanly deleting or replacing a datablock was pretty much impossible, except for a few special cases. Also, unlinking was handled by each datatype, in a rather messy and prone-to-errors way (quite a few ID usages were missed or wrongly handled that way). One of the main goal of id-remap branch was to cleanup this, and fatorize ID links handling by using library_query utils to allow generic handling of those, which is now the case (now, generic ID links handling is only "knwon" from readfile.c and library_query.c). This commit also adds backends to allow live replacement and deletion of datablocks in Blender (so-called 'remapping' process, where we replace all usages of a given ID pointer by a new one, or NULL one in case of unlinking). This will allow nice new features, like ability to easily reload or relocate libraries, real immediate deletion of datablocks in blender, replacement of one datablock by another, etc. Some of those are for next commits. A word of warning: this commit is highly risky, because it affects potentially a lot in Blender core. Though it was tested rather deeply, being totally impossible to check all possible ID usage cases, it's likely there are some remaining issues and bugs in new code... Please report them! ;) Review task: D2027 (https://developer.blender.org/D2027). Reviewed by campbellbarton, thanks a bunch.
2016-04-25Refactor BKE_blender into separate headersCampbell Barton
- BKE_blender_version.h (only version defines & versionstr). - BKE_blender_copybuffer.h (currently only used for view3d copy/paste). - BKE_blender_undo.h (global undo functions). - BKE_blendfile.h (high level blend file read/write API).
2016-03-31Fix T47985: VSE GL-render scene strip hangsCampbell Barton
Regression in d5f1b9c22, threading deadlock rendering a scene from the OpenGL preview.