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
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-22Transform Snap: initial snap context refactorCampbell Barton
This introduces a snap-context that can be re-used for casting rays into the scene (by operators such as walk-mode, ruler and transform code). This can be used to cache data between calls too.
2016-02-06Fix T47204: selection failing directly after disabling multisample in user ↵Brecht Van Lommel
prefs. Now store the multisample setting each window was created with.
2015-12-16cleanup: C99Mike Erwin
- for loop scope - tighter scope on local vars - more bool - more const
2015-11-24View3D: move snapping functions out of rulerCampbell Barton
2015-11-11OpenGL Render: Support full-sample Anti-AliasingCampbell Barton
This brings back old (slower), higher quality method. Useful since graphics cards often use a faster MSAA which only oversamples edges.
2015-11-11Cleanup: GL Render (simplify internal logic)Campbell Barton
Reduce code-paths so improvements to 3D view render apply to sequencer too.
2015-10-27View3D offscreen buffer was interferring with view navigationDalai Felinto
the RegionView3D matrices need to be re-set after drawing. Review and touch ups by Campbell Barton
2015-10-14Support for multi-sample sequencer GL renderCampbell Barton
OpenGL sequencer render now uses a single fbo for all rendering.
2015-08-21Docs: correct some commentsCampbell Barton
2015-07-11Add WM_framebuffer_to_index_arrayCampbell Barton
Convert buffer to index in one loop, also minor cleanup to backbuf/selection functions. - Use IMB_rectcpy instead of inline pixel copy. - Redundant WM_framebuffer_to_index call.
2015-04-28Project Paint: Add symmetry supportCampbell Barton
- Access from symmetry panel (as with sculpt) - Supports multiple axis at once. - Supports all brush types including clone.
2015-04-21BMesh: mesh-data picking, general improvementsCampbell Barton
Generalize logic for vert/edge/face selection: - index cycling. - selection bias with mixed modes. Details: - Edges now support index cycling (as verts/faces did already) - Cycling over near elements is now only enabled when the mouse position remains the same. - No longer do 2 selection passes to perform index cycling. Fixes: - Edges behind the view could be selected (surprising nobody reported!) - Selection bias now only changes the element that gets picked without interning the return distance (was buggy with mixed modes).
2015-04-20Fixes for backbuf selection logicCampbell Barton
- Fix ED_view3d_backbuf_sample_rect, r_dist was set completely wrong. - Avoid duplicate calculations picking the nearest edge. - Bias against picking selected edges is now optional. - Remove unused callback reading the backbuf. - Remove unused strict option picking vertices.
2015-04-20Cleanup: use ED_view3d_backbuf_* prefixCampbell Barton
2015-04-20Fix T44383: Select face fails in some positionsCampbell Barton
When mixing vert/edge/face with select-visible, face selection could fail when not close enough to the center. This also fixes a bug where the bias for verts over edges would prefer faces over edges too, making edges harder to pick. Mixing edge with other selection modes works more predictably now.
2015-04-20Cleanup: use macro for common view3d zbuf checkCampbell Barton
2015-04-20Cleanup: use bool /w flag checksCampbell Barton
2015-04-06Multi-View and Stereo 3DDalai Felinto
Official Documentation: http://www.blender.org/manual/render/workflows/multiview.html Implemented Features ==================== Builtin Stereo Camera * Convergence Mode * Interocular Distance * Convergence Distance * Pivot Mode Viewport * Cameras * Plane * Volume Compositor * View Switch Node * Image Node Multi-View OpenEXR support Sequencer * Image/Movie Strips 'Use Multiview' UV/Image Editor * Option to see Multi-View images in Stereo-3D or its individual images * Save/Open Multi-View (OpenEXR, Stereo3D, individual views) images I/O * Save/Open Multi-View (OpenEXR, Stereo3D, individual views) images Scene Render Views * Ability to have an arbitrary number of views in the scene Missing Bits ============ First rule of Multi-View bug report: If something is not working as it should *when Views is off* this is a severe bug, do mention this in the report. Second rule is, if something works *when Views is off* but doesn't (or crashes) when *Views is on*, this is a important bug. Do mention this in the report. Everything else is likely small todos, and may wait until we are sure none of the above is happening. Apart from that there are those known issues: * Compositor Image Node poorly working for Multi-View OpenEXR (this was working prefectly before the 'Use Multi-View' functionality) * Selecting camera from Multi-View when looking from camera is problematic * Animation Playback (ctrl+F11) doesn't support stereo formats * Wrong filepath when trying to play back animated scene * Viewport Rendering doesn't support Multi-View * Overscan Rendering * Fullscreen display modes need to warn the user * Object copy should be aware of views suffix Acknowledgments =============== * Francesco Siddi for the help with the original feature specs and design * Brecht Van Lommel for the original review of the code and design early on * Blender Foundation for the Development Fund to support the project wrap up Final patch reviewers: * Antony Riakiotakis (psy-fi) * Campbell Barton (ideasman42) * Julian Eisel (Severin) * Sergey Sharybin (nazgul) * Thomas Dinged (dingto) Code contributors of the original branch in github: * Alexey Akishin * Gabriel Caraballo
2015-03-21Cleanup: constify view3d/cameraCampbell Barton
2015-03-21View3D: fix view-selected zoom logicCampbell Barton
- Correct logic converting radius to view distance. - Wasn't taking view-zoom into account converting lens to angle. - Support framing the selection in the camera bounds (for camera locked views). Add ED_view3d_radius_to_dist to handles these details.
2015-03-17Fix T44021: Crash switching Rendering Engines while viewport rendering + ↵Sergey Sharybin
animating Make sure preview render job is cancelled before freeing the render engine associated to the viewport.
2015-03-12View3D: Quad-view opposite axis switchingCampbell Barton
Pressing Numpad9 now orbits to the opposite side in any viewport, with the advantage that it can switch locked-quadview axis to their opposite side.
2015-03-12Cleanup: de-duplicate view3d clippingCampbell Barton
2015-02-24Fix T43785 crash with border select.Antony Riakiotakis
Naming here is slightly misleading. We have: * Number of elements (objects) that can be picked * Buffer size * Number of integers in buffer. Interestingly enough, bufsize in OpenGL (as far as I could find in examples on the web) and in most of the code refers to the latter and actual buffer size is only used whenever we do allocations on the heap. Added an extra defines here to make things a bit clearer: * MAXPICKELEMS refers to the number of objects that can be picked * MAXPICKBUF refers to the number of integers in the selection buffer Also made all buffers use MAXPICKBUF where some used MAXPICKBUF * 4. That means that some parts of blender will use less space for selection now. MAXPICKBUF is set to 10000 for 2500 object selection, which can be changed at any time, but I think 10000 integers on the stack touches the borders of uglyland anyway.
2015-02-12Viewport compositing - first codeAntony Riakiotakis
This commit introduces a few ready made effects for the 3D viewport and OpenGL rendering. Included effects are Depth of Field, accessible from camera view and screen space ambient occlusion. Those effects can be turned on and tweaked from the shading panel in the 3D viewport. Off screen rendering will use the settings of the current camera. WIP documentation can be found here: http://wiki.blender.org/index.php/User:Psy-Fi/Framebuffer_Post-processing
2015-01-28Add theme option for cliping borderAntony Riakiotakis
2014-12-05Grease Pencil sketches get included when doing OpenGL previews for scene ↵Joshua Leung
strips in sequencer After double checking the sequencer code, there doesn't seem to be any reason to exclude these from the sequencer previews. This makes it possible to use the sequencer to non-destructively chain together difference Grease Pencil animated shots together without having to render each image sequence first, allowing for a smoother workflow. Just in case the initial assumption isn't entirely correct, I've put in place an extra arg to the relevant functions which can be hooked up to a suitable option on the scene strip later to turn this on/off as needed.
2014-08-25View3D: Add ED_view3d_dist_range_getCampbell Barton
remove hard coded limits
2014-08-05Add missing forward declaration and missing 'struct' keywordNicholas Bishop
2014-07-31Fix T41258: Crash when entering edit mode while viewport render is enabledSergey Sharybin
The issue was caused by the render engine loading edit mesh, which re-allocates mesh array which might be referenced by other object's derived meshed. Worst thing about this is that updating render engine happens from the end of scene update function, after all the objects are updated and so. This is needed so render engine gets the update objects which is correct. The only proper way to solve the issue is to make it so viewport engine does not leave objects in inconsistent state, meaning nobody will reference to freed data. In order to reach this we do edit mesh loading before running objects update so all the objects which uses that mesh will have proper references in the derived mesh. This also solves old creepyness which happened before when having single object in edit mode. tweaking it will calculate derived mesh as a part of scene update, then this derived mesh will be freed by edit mesh loading and viewport will be creating derived mesh again. Now render engine is expected to do nothing with meshes which are in edit mode, but they still need to load edit data for non0meshes. It's not really easy to do from the BKE level because needed functions are implemented in the editor. Thanks Campbell for the review! Differential Revision: https://developer.blender.org/D697
2014-07-23Occlusion Query based selection.Antony Riakiotakis
This patch creates an interface for selection mechanisms in opengl. This makes it possible to switch between occlusion query based or select rendermode based selection transparently. This is really useful on graphics drivers that do not accelerate the select rendermode path (some ATI cards are notorious for this, and the new path is used by default there), since occlusion queries are always hardware accelerated due to their use in games. The option can be found under system - selection. Auto just enables occlusion queries for ATI users while the rest of the options enforce one of the two methods always. There is just one known change, previous code enforced nearest bone to always get selected, even when mouse selecting near the same position, I couldn't replicate the behaviour though. patch by me with edits and review by Campbell. Thanks!
2014-07-21GSOC 2013 paintAntony Riakiotakis
Yep, at last it's here! There are a few minor issues remaining but development can go on in master after discussion at blender institute. For full list of features see: http://wiki.blender.org/index.php/Dev:Ref/Release_Notes/2.72/Painting Thanks to Sergey and Campbell for the extensive review and to the countless artists that have given their input and reported issues during development.
2014-06-30Fix T40867: Autokeyframe in camera viewCampbell Barton
2014-06-19Code cleanup: use const passing rectsCampbell Barton
2014-04-01Code cleanup: remove TRUE/FALSE & WITH_BOOL_COMPAT defineCampbell Barton
2014-03-25Fix T39397: Leaving leaving camera from quadview set orthoCampbell Barton
2014-03-20View3D: remove orbit snapping LUT, allow to snap axis but not rollCampbell Barton
2014-03-11View3d: take pixelsize into account for selection distanceCampbell Barton
2014-02-24NDOF: various fixes for view3dCampbell Barton
- allow zooming when in ortho+user mode - fix for using VIEW3D_OT_ndof_orbit_zoom when the camera is locked. - fix for locked camera changing the dist value when used with ndof. - de-duplicate ndof_pan_zoom and ndof_all operators
2014-02-20NDOF: define 2 default navigation modes: free & orbitCampbell Barton
After some discussion it seems both are valid defaults but useful for very different purposes. - 'free' lets you explore the scene with full 6dof (like fly mode) - 'orbit' is closer to typical mouse view orbit, constraining to orbiting about a central location. This doesn't effect orbit/pan which are available with modifier keys.
2014-02-12View3d: add utility function to get the quat from a view axisCampbell Barton
2014-02-12View3d: ensure locked views are on an axis - behavior wasn't well defined.Campbell Barton
2014-02-11Code cleanup: fix a few visual studio compiler warnings.Brecht Van Lommel
2014-02-04View3d: move lock check for orbit into a function and use for dolly tooCampbell Barton
2014-01-29Fix T38358: Face snapping fails on Orthographic viewBastien Montagne
Issue is caused by start point of ray used to detect faces under the mouse is set rather far away in ortho 3dviews. The loss of precision on the ray location induced by this can lead to face snapping failures. Solution is to do the raycasting with a temp start point, much closer to the object we check, and add back to the found distance the diff to the real start point once detection is done (as we need all hit distances from all tested objects to be relative to a common point!). Note this commit only addresses the "face snapping on mesh" case, other kind of snapping do not seem to suffer from this issue. Reviewers: brecht, campbellbarton Differential Revision: https://developer.blender.org/D268
2013-12-09Fix T37727: z-offset problems with camera viewCampbell Barton
2013-12-09View3D API: rename view3d_camera_get to ED_view3d_camera_data_getCampbell Barton
2013-10-26rename give_cursor to ED_view3d_cursor3d_getCampbell Barton
2013-10-18Pampa Project request: FPS in sequencer editorSergey Sharybin
perhaps ED_scene_draw_fps is actually better to be placed to a better place, but consider this is good for now.