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-12-10Mempool/Memarena: hint for unlikely conditionsCampbell Barton
2013-12-08Util-defines: avoid multiple calculation/access for MIN/MAX macrosCampbell Barton
2013-12-08Math lib: optimize hsv/rgb conversionCampbell Barton
2013-12-07Util Macros: reduce multiple access & conversion for CLAMP/CLAMPIS/ABSCampbell Barton
2013-12-07Compiler warnings: quiet warnings for gcc4.7xCampbell Barton
patch from Sergey
2013-12-06Rectangle API: add single axis intersection checkCampbell Barton
2013-12-06Appease grumpy ole gcc 4.7 of MinGW64 (possibly gcc 4.6 of MinGW32 too?)Antony Riakiotakis
that cannot convert float to char without false warnings that are turned into errors with strict flags. I expect that any real conversion warnings can be caught on linux.
2013-12-05Code Cleanup: use strict flags for math lib, add inline declarationsCampbell Barton
2013-12-05Compiler warnings: quiet float/double conversion warningCampbell Barton
2013-12-04Fix for EWA (elliptical weighted average) sampling in the compositor.Lukas Tönne
EWA sampling is designed for downsampling images, i.e. scaling down the size of input image pixels, which happens regularly in compositing. While the standard sampling methods (linear, cubic) work reasonably well for linear transformations, they don't yield good results in non-linear cases like perspective projection or arbitrary displacement. EWA sampling is comparable to mipmapping, but avoids problems with discontinuities. To work correctly the EWA algorithm needs partial derivatives of the mapping functions which convert output pixel coordinates back into the input image space (2x2 Jacobian matrix). With these derivatives the EWA algorithm projects ellipses into the input space and accumulates colors over their area. This calculation was not done correctly in the compositor, only the derivatives du/dx and dv/dy were calculation, basically this means it only worked for non-rotated input images. The patch introduces full derivative calculations du/dx, du/dy, dv/dx, dv/dy for the 3 nodes which use EWA sampling currently: PlaneTrackWarp, MapUV and Displace. In addition the calculation of ellipsis area and axis-aligned bounding boxes has been fixed. For the MapUV and Displace nodes the derivatives have to be estimated by evaluating the UV/displacement inputs with 1-pixel offsets, which can still have problems on discontinuities and sub-pixel variations. These potential problems can only be alleviated by more radical design changes in the compositor functions, which are out of scope for now. Basically the values passed to the UV/Displacement inputs would need to be associated with their 1st order derivatives, which requires a general approach to derivatives in all nodes.
2013-12-04Fix for interpolation errors on lower-left borders in compositor imageLukas Tönne
inputs. http://wiki.blender.org/uploads/4/4c/Compo_image_interpolation_borders.png Problem is that all image buffer reader nodes (RenderLayer, Image, MovieClip) were clipping pixel coordinates to 0..N range (N being width or height respectively). Bilinear interpolation works ok then on the upper-right borders (x, N) and (N, y), since the last (N-1) pixel fades out to N (background). But the lower-left (x, 0) and (0, y) borders are not correctly interpolated because the nodes cut off the negative pixels before the interpolation function can calculate their value. To fix this, the interpolation functions are now entirely responsible for handling "out of range" cases, i.e. setting (0,0,0,0) results for invalid pixels, while also handling interpolation for borders. Callers should not do pixel range checks themselves, which also makes the code simpler. Should not have any real performance penalty, the interpolation functions do this check anyway, so is probably even slightly faster.
2013-12-04User interface: internal change, collect panels to draw before drawing.Campbell Barton
avoids calling poll twice, in some cases
2013-12-04Code Cleanup: correct fabsf/fabs/abs useCampbell Barton
2013-12-02MemArena: use size_t instead of int for alloc args and internal storage.Campbell Barton
also add BLI_memarena_calloc to be used when calloc isnt enabled for the arena.
2013-12-02Polyfill: fast-path for convex ngons (and mostly convex ngons).Campbell Barton
avoid intersection checks where there are no concave coords.
2013-11-30Geometry API: polyfill2d, ear clipping polygon filling functions.Campbell Barton
Simple/predictable polygon filling functions (no hole support) originally from libgdx which have some advantages over scanfill. - always creates the same number of triangles (never any missing faces). - gives same results for any affine transformation. - doesn't give so many skinny faces by default. made some changes for Blender. - remove last ears first (less to memmove) - step over the ears while clipping to avoid some verts becoming fans to most of the other.
2013-11-30Math Library: add functions cross_poly_v2, cross_tri_v2Campbell Barton
also added utility macro for removing elements in the middle of an array
2013-11-30Woo Hoo. First git commit.Alexandr Kuznetsov
Changes for VC2013 Now, I can build Blender with VC2013 with Cycles, Collada, OpenExr,OpenImageIO disabled. Also, you need VC2008 sp1 installed to make old libs compatible.
2013-11-28Transform: improve normal orientationCampbell Barton
- when 3 verts are selected ensure the normal is flipped on the side of existing vert normals. also use the most distant 2 verts to define the tangent. - when 2 vertices are selected, the normal wasn't aligned with the vert normal.
2013-11-26Math library: minor additions sqrtf_signed and copy_v2_fl2Campbell Barton
2013-11-25Code Cleanup: rename vars for detecting change to be more consistentCampbell Barton
rename change/is_change/is_changed/modified -> changed also use bools over int/short/char and once accidental float.
2013-11-25fix for regression with own recent commitCampbell Barton
2013-11-25Fix T37591: 'Extensions' option ignored for movies.Campbell Barton
2013-11-24Code Cleanup: replace shorts with ints for path code.Campbell Barton
2013-11-24Code Cleanup: whitespace / formattingCampbell Barton
2013-11-20Math Library: add dot_m4_v3_row_x/y/zCampbell Barton
2013-11-19Fix T37472: crash when packing UV islands.Campbell Barton
2013-11-10make IS_EQ and IS_EQF typecheck argsCampbell Barton
2013-11-06Patch #37274: Circle select for node editor, by Henrik Aarnio (hjaarnio).Lukas Toenne
Circle select was missing from node editor, and C key was assigned to now defunct "show cyclic dependencies". This patch remaps the key and adds circle select operator. Functions to check intersection between rctf/rcti and a circle were also added to rct.c for code cleanliness and consistency.
2013-11-01code cleanup: spellingCampbell Barton
2013-10-31code cleanup: spellingCampbell Barton
2013-10-26spelling: use American spelling for canceledCampbell Barton
2013-10-26correct typoCampbell Barton
2013-10-22add copy_v4_fl4, replace QUATSET macro.Campbell Barton
2013-10-22style cleanupCampbell Barton
2013-10-22style cleanupCampbell Barton
2013-10-20Code cleanup: added generic function copt_m3_m3dSergey Sharybin
2013-10-19Move utility functions from mball to mathutilsSergey Sharybin
2013-10-17Fix build failure with VS2012 + SCons, caused by redefinition of the bool type.Irie Shinsuke
2013-10-12Task scheduler ported form CYcles to CSergey Sharybin
Replaces ThreadedWorker and is gonna to be used for threaded object update in the future and some more upcoming changes. But in general, it's to be used for any task based subsystem in Blender. Originally written by Brecht, with some fixes and tweaks by self.
2013-10-12Further tweak for dual quaternion armature deform problem, tweak the epsilonBrecht Van Lommel
value to solve some more cases.
2013-10-12code cleanup: use const's for vector args.Campbell Barton
2013-10-12Fix dual quaternion armature deform giving erratic results in some cases. BugBrecht Van Lommel
was encountered in a Kiribati rig file. The problem was actually in the matrix to quaternion conversion function. One problem is that it was using the wrong matrix indices in case of an ill defined matrix trace. Besides that FLT_EPSILON was too small to detect cases where float precision becomes a problem.
2013-10-11code cleanup: boxpack, pack struct and use unsigned intsCampbell Barton
2013-10-11use BLI_bitmap for editmesh selection buffer to save some memory.Campbell Barton
2013-10-11code cleanup: use const's for static arraysCampbell Barton
2013-10-10add MEM_SIZE_OPTIMAL to avoid memory fragmentation & waste lost to slop-space.Campbell Barton
2013-10-09code cleanup: redundant includes and add minor comments.Campbell Barton
2013-10-07Build fix (issue could happen with scons,reported by ebrain on IRC, thanks).Bastien Montagne
Var declared in an #ifdef DEBUG, but used in an #ifndef NDEBUG…
2013-10-05rename overlap to holes for isect_point_poly_v2Campbell Barton