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-01-24Fix #33975: Crash when reloading textureSergey Sharybin
Two issues in texture_changed: - Missing NULL check for material (slot could be empty) - Materials could be linked to object, added special check for this
2013-01-22fix [#33836] issuing bpy.ops.render.render() in console crashes the programCampbell Barton
don't check the event queue from threads, assert if this happens in future.
2013-01-07style cleanupCampbell Barton
2013-01-06Three fixes:Ton Roosendaal
- Old issue: on scrolling button views, tooltips could open or stayed open. - New fix: alt+swipe now changes button values again - Removed test print, from WIP code project.
2013-01-05Removal of old code trying to detect trackpads.Ton Roosendaal
This was causing error in previous commit "wheel only worked after using trackpad once".
2013-01-05Trackpad pans for UV/Image and MovieClip editors were inverse compared to ↵Ton Roosendaal
all other editors.
2013-01-05Changes for opengl render to reflect new alpha premul pipelineSergey Sharybin
without hurting quick texture painting - ED_view3d_draw_offscreen will now output buffer with transparent alpha, if sky needed it should be alpha-undered later. - ED_view3d_draw_offscreen_imbuf now accepts alpha mode as an argument which could be either R_ADDSKY or R_PREMULALPHA - OpenGL render and sequencer's opengl preview will now reflect scene's Alpha Mode - Quick Edit will use OpenGL with transparent alpha mode
2013-01-01Bug fixes, own collection.Ton Roosendaal
While examining icons, I noticed material icons were too dark. It appeared a lot of bad hacks were added for colormanagement in preview render. Removed them all, and things look smooth (yes, color management is OK!). However! It is now very clear that Procedural Textures miss getting inverse color managed in render - a reason why they show so bright washed out, already since introduction of Color Management in Blender. Try render a plane with linear black-white blend, shadeless! http://www.blender.org/bf/Untitled.png Todo: add colormanaged procedurals (optional).
2012-12-31Alpha premul pipeline cleanupSergey Sharybin
This assumptions are now made: - Internally float buffers are always linear alpha-premul colors - Readers should worry about delivering float buffers with that assumptions. - There's an input image setting to say whether it's stored with straight/premul alpha on the disk. - Byte buffers are now assumed have straight alpha, readers should deliver straight alpha. Some implementation details: - Removed scene's color unpremultiply setting, which was very much confusing and was wrong for default settings. Now all renderers assumes to deliver premultiplied alpha. - IMB_buffer_byte_from_float will now linearize alpha when converting from buffer. - Sequencer's effects were changed to assume bytes have got straight alpha. Most of effects will work with bytes still, however for glow it was more tricky to avoid data loss, so there's a commented out glow implementation which converts byte buffer to floats first, operates on floats and returns bytes back. It's slower and not sure if it should actually be used -- who're using glow on alpha anyway? - Sequencer modifiers should also be working nice with straight bytes now. - GLSL preview will predivide float textures to make nice shading, shading with byte textures worked nice (GLSL was assuming straight alpha). - Blender Internal will set alpha=1 to the whole sky. The same happens in Cycles and there's no way to avoid this -- sky is neither straight nor premul and doesn't fit color pipeline well. - Straight alpha mode for render result was also eliminated. - Conversion to correct alpha need to be done before linearizing float buffer. - TIFF will now load and save files with proper alpha mode setting in file meta data header. - Remove Use Alpha from texture mapping and replaced with image datablock setting. Behaves much more predictable and clear from code point of view and solves possible regressions when non-premultiplied images were used as textures with ignoring alpha channel.
2012-12-23Added support of J2K codec for Jpeg2000 writingSergey Sharybin
This codec is absolutely needed to generate DCP using OpenDCP, before that external application to convert JP2 to J2K was used which slowed down export a lot. New codec is exposed to image format settings panel and called Codec. Default one is JP2 which creates files with .jp2 extension, new one is called J2K which creates with .j2c extension. Other changes: - Fixed avi jpeg warning which was treating as error here. - Made it so extension is detecting from ImageFormatData instead of image file type, which makes it possible to have different extension for the same file type depending on it's settings. IRIS format should still be changed (depending on number of channels it'll be .bw, .rgb or .rgba extension) - Default image format settings would be set from image buffer when re-saving it. Makes it possible to easily open .j2c file and save it using J2K codec (without this change it'll save as .jp2 using JP2 codec)
2012-12-18fix for include and use break statement (may as well not loop more then needed).Campbell Barton
2012-12-18Fix #33599: VBO textured draw mode did not update correctly when an image ↵Brecht Van Lommel
filepath was changed to an invalid one. Also fixed Object Color not being displayed correctly with VBO's. The way it has to clear the VBO buffers here is quite poor though and slow, we really need textures and materials in the depsgraph to do this quicker.
2012-12-17Added GPL header to sconscripts!Bastien Montagne
Also changed shebang to '#!/usr/bin/env python', this is more portable across unixes...
2012-12-14Fixes for correct UI scaling display:Ton Roosendaal
- Move to layer (and more popups) didn't scale yet - User Prefs and render window now open on right location on Mac Retinas - Brush sizes for painting now scale for Mac Retina
2012-12-12Sequencer: add textured solid option for opengl previewSergey Sharybin
2012-12-04Fix for double-freeing image buffers when rendering opengl animation into ↵Sergey Sharybin
movie file.
2012-12-03Fix #33371: blender freezing in material draw mode.Brecht Van Lommel
When FBO failed in a particular way it could cause the opengl draw buffer to be set wrong, effectively disabling all opengl drawing. The FBO error was caused by cycles GLSL materials with no nodes that would still use blender internal materials, which caused issues with lamp shadow buffers FBO. This also fixes a GLSL refresh issue when switching render engines.
2012-12-01style cleanupCampbell Barton
2012-11-29Fix render from local view 3d viewport not using lamps in render.Brecht Van Lommel
Fix missing GLSL updates for objects without materials.
2012-11-26Fix #33310: unnecessary redraw of outliner when editing materials and textures.Brecht Van Lommel
2012-11-24Fix #33282: missing GLSL update assigning a lamp texture.Brecht Van Lommel
2012-11-15Image thread safe improvementsSergey Sharybin
This commit makes BKE_image_acquire_ibuf referencing result, which means once some area requested for image buffer, it'll be guaranteed this buffer wouldn't be freed by image signal. To de-reference buffer BKE_image_release_ibuf should now always be used. To make referencing working correct we can not rely on result of image_get_ibuf_threadsafe called outside from thread lock. This is so because we need to guarantee getting image buffer from list of loaded buffers and it's referencing happens atomic. Without lock here it is possible that between call of image_get_ibuf_threadsafe and referencing the buffer IMA_SIGNAL_FREE would be called. Image signal handling too is blocking now to prevent such a situation. Threads are locking by spinlock, which are faster than mutexes. There were some slowdown reports in the past about render slowdown when using OSX on Xeon CPU. It shouldn't happen with spin locks, but more tests on different hardware would be really welcome. So far can not see speed regressions on own computers. This commit also removes BKE_image_get_ibuf, because it was not so intuitive when get_ibuf and acquire_ibuf should be used. Thanks to Ton and Brecht for discussion/review :)
2012-11-10Fix part of #33132: render resoltuion refresh issues after persistent imagesBrecht Van Lommel
was added for cycles. This fixes the case where the option is disabled. I moved the option now to Blender itself and made it keep the engine around only when it's enabled. Also fixes case where there could be issues when switching to another renderer.
2012-11-07Fix #33114: crash with render frame update script and GLSL.Brecht Van Lommel
2012-11-06Bugfix #33092Ton Roosendaal
Fluid sim would stop or crash with node editor. Bug was a real bad one - the code for giving out WM jobs was messed up for long. It was giving a running fluid job to the compositer even... tsk! I will go over jobs code carefully next days to see if it all behaves. Now it allows per owner multiple jobs, provided it has different job_type set. Also fixed: preview renders (material) were deadslow once a while - caused by icon render setting miniature tile render sizes. Now it's fast again, but there are still 3 icon jobs running per UI change... need to check what.
2012-11-05Render engines: replace number of x/y tiles with tile sizeSergey Sharybin
Now tile size is setting up explicitly instead of using number of tiles. This allows better control over GPU performance, where having tiles aligned to specific size makes lots of sense. Still to come: need to update startup.blend to make tiles size 64x64.
2012-11-05Cycles: memory usage reportSergey Sharybin
This commit adds memory usage information while rendering. It reports memory used by device, meaning: - For CPU it'll report real memory consumption - For GPU rendering it'll report GPU memory consumption, but it'll also mean the same memory is used from host side. This information displays information about memory requested by Cycles, not memory really allocated on a device. Real memory usage might be higher because of memory fragmentation or optimistic memory allocator. There's really nothing we can do against this. Also in contrast with blender internal's render cycles memory usage does not include memory used by scene, only memory needed by cycles itself will be displayed. So don't freak out if memory usage reported by cycles would be much lower than blender internal's. This commit also adds RenderEngine.update_memory_stats callback which is used to tell memory consumption from external engine to blender. This information is used to generate information line after rendering is finished.
2012-10-29Bugfix #33004Ton Roosendaal
Screencast recording stopped on a undo/redo. This was because all thread jobs were killed then. Now it leaves screen jobs (screen cast) running, that's data that doesn't change on undos. Also renamed jobs_stop_all() to jobs_kill_all() - it terminates threads.
2012-10-26Big i18n commit: add "reports" from bmesh/readfile/tracking/dynapaint (and a ↵Bastien Montagne
few others), and another bunch of UI messages tweaks/fixes, as well as some BKE_report()<->BKE_reportf()...
2012-10-23use min_ max_ functions in more places.Campbell Barton
also fix minor error in MOD decimate when the modifier did nothing the reported face count would be wrong.
2012-10-23Fix #32941: Sequencer Preview shows texture which is apart of the window.Sergey Sharybin
Issue was caused by buffer shadows were binding buffer after offscreen buffers was bind which lead to some unpredictable results. Made it so ED_view3d_draw_offscreen wouldn't bind any buffers and for proper shadows ED_view3d_draw_offscreen_init should be manually be called before drawing to an offscreen. This should also make open gl render with AA enabled a bit faster. Also fixed missing sequencer cache invalidation when open gl render type is changing. Material and Rendered modes are still a TODO for sequencer.
2012-10-23style cleanup: also rename bmesh_decimate.c --> bmesh_decimate_collapse.cCampbell Barton
2012-10-21style cleanup: bge, switch statements mostly.Campbell Barton
also left bmesh decimator on in previous commit.
2012-10-21style cleanup: trailing tabs & expand some non prefix tabs into spaces.Campbell Barton
2012-10-21style cleanup: commentsCampbell Barton
2012-10-16Cycles: fix some update issues with camera motion blur, and do some more workBrecht Van Lommel
for getting object motion blur ready.
2012-10-13And more UI messages spell check.Bastien Montagne
2012-10-13Cycles: progressive refine optionSergey Sharybin
Just makes progressive refine :) This means the whole image would be refined gradually using as much threads as it's set in performance settings. Having enough tiles is required to have this option working as it's expected. Technically it's implemented by repeatedly computing next sample for all the tiles before switching to next sample. This works around 7-12% slower than regular tile-based rendering, so use this option only if you really need it. This commit also fixes progressive update of image when Save Buffers option is enabled. And one more thing this commit fixes is handling display buffer with Save Buffers option enabled. If this option is enabled image buffer wouldn't have neither byte nor float buffer until image is fully rendered which could backfire in missing image while rendering in cases color management cache became full. This issue solved by allocating byte buffer for image buffer from tile update callback. Patch was reviewed by Brecht. He also made some minor edits to original version to patch. Thanks, man!
2012-10-13Bugfix [#32865] Usercounts for World Textures not decremented after previewJoshua Leung
render When adjusting settings for world textures (with Both/World preview modes), every tweak would result in the usercount of the texture increasing. As a result, before long the texture would claim to have over 100 users. Fortunately, this only appeared to be just a cosmetic issue (i.e. no real memory leak here), though it was a bit unsettling. NOTE: this is still a bit glitchy, as now we have flickering when updating texture settings - the texture still temporarily has a second user during preview rendering.
2012-10-12fix for many RNA definitions having soft/hard ranges swapped, make this ↵Campbell Barton
BLI_assert() on debug builds.
2012-10-10Color Management: fixed color management-less texture renderingSergey Sharybin
There was a missing check for whether color management enabled or not when converting byte textures to linear space. This commit also fixes wrong texture preview rendering, which was applying sRGB transform twice, making procedural textures bright. This will make float textures being previewed dark (in a linear space) but that's how it used to behave in pre-OCIO color management.
2012-10-07style cleanup: if();Campbell Barton
2012-10-01Disable render part of display transformation for icon/texture previewSergey Sharybin
This change mainly caused by too dark icon generated for texture brushes, but also makes it a bit more straightforward from what's going on point of view.
2012-09-24Proper fix for #32626: TIFF renders are limited to 8 bit even when we choose 16.Sergey Sharybin
Color management would be applied on both of float and byte buffers on image save in cases if file format doesn't require linear float buffer and if image is saving as render result. This solves both initial report issue and TODO marked in previous fix. Also de-duplicated image buffer color managing code and gave some more meaningful names for few functions. Also wrote documentation around this function, so current assumptions about spaces should be clear enough. Made regression tests by saving EXR/PNG images to all supported format and rendering OpenGL/Normal animation, in all cases seems everything is fine, but more tests for sure would be welcome.
2012-09-18Fixed missing display buffer invalidation when rendering sequencer animationSergey Sharybin
2012-09-16code cleanup: quiet warnings for gcc's -Wundef, -Wmissing-declarationsCampbell Barton
2012-09-15code cleanup: replace macro for BLI_rect size/center with inline functions.Campbell Barton
2012-09-15Color Management, Stage 2: Switch color pipeline to use OpenColorIOSergey Sharybin
Replace old color pipeline which was supporting linear/sRGB color spaces only with OpenColorIO-based pipeline. This introduces two configurable color spaces: - Input color space for images and movie clips. This space is used to convert images/movies from color space in which file is saved to Blender's linear space (for float images, byte images are not internally converted, only input space is stored for such images and used later). This setting could be found in image/clip data block settings. - Display color space which defines space in which particular display is working. This settings could be found in scene's Color Management panel. When render result is being displayed on the screen, apart from converting image to display space, some additional conversions could happen. This conversions are: - View, which defines tone curve applying before display transformation. These are different ways to view the image on the same display device. For example it could be used to emulate film view on sRGB display. - Exposure affects on image exposure before tone map is applied. - Gamma is post-display gamma correction, could be used to match particular display gamma. - RGB curves are user-defined curves which are applying before display transformation, could be used for different purposes. All this settings by default are only applying on render result and does not affect on other images. If some particular image needs to be affected by this transformation, "View as Render" setting of image data block should be set to truth. Movie clips are always affected by all display transformations. This commit also introduces configurable color space in which sequencer is working. This setting could be found in scene's Color Management panel and it should be used if such stuff as grading needs to be done in color space different from sRGB (i.e. when Film view on sRGB display is use, using VD16 space as sequencer's internal space would make grading working in space which is close to the space using for display). Some technical notes: - Image buffer's float buffer is now always in linear space, even if it was created from 16bit byte images. - Space of byte buffer is stored in image buffer's rect_colorspace property. - Profile of image buffer was removed since it's not longer meaningful. - OpenGL and GLSL is supposed to always work in sRGB space. It is possible to support other spaces, but it's quite large project which isn't so much important. - Legacy Color Management option disabled is emulated by using None display. It could have some regressions, but there's no clear way to avoid them. - If OpenColorIO is disabled on build time, it should make blender behaving in the same way as previous release with color management enabled. More details could be found at this page (more details would be added soon): http://wiki.blender.org/index.php/Dev:Ref/Release_Notes/2.64/Color_Management -- Thanks to Xavier Thomas, Lukas Toene for initial work on OpenColorIO integration and to Brecht van Lommel for some further development and code/ usecase review!
2012-08-29Fix wrong user counter in world node treesSergey Sharybin
World is being localized without increasing ID users, so no need to decrease ID users on localized world free.
2012-08-25style cleanup: also spellingCampbell Barton