Commit Graph

3722 Commits

Author SHA1 Message Date
Brecht Van Lommel
e2f42ff907 Merge branch 'master' into blender2.8 2017-09-06 17:23:47 +02:00
Campbell Barton
6e0fd239e3 Math Lib: normalized vector project functions 2017-09-07 00:12:43 +10:00
Campbell Barton
572b1a644f Merge branch 'master' into blender2.8 2017-09-05 22:56:03 +10:00
Campbell Barton
4d85396fe4 Cleanup: use const
Also use assert w/ rotate_m4.
2017-09-05 22:45:44 +10:00
Campbell Barton
459d76ec51 BLI_kdtree: utility function to remove doubles 2017-09-03 23:43:14 +10:00
Campbell Barton
ca9801bd42 Merge branch 'master' into blender2.8 2017-08-27 16:35:51 +10:00
Campbell Barton
c90452e111 BLI_rect: Function to calculate a matrix from 2 rctf's 2017-08-27 16:19:34 +10:00
Campbell Barton
cb4884f50b Merge branch 'master' into blender2.8 2017-08-23 20:16:47 +10:00
Campbell Barton
b9513706cb Cleanup: mark VA_NARGS_COUNT as public
Was already used in two other headers, remove underscore prefix.
2017-08-23 20:16:17 +10:00
Campbell Barton
37cfa44222 Cleanup: move variadic defines to their own header
So we can use in headers without pulling in many other defines.
2017-08-23 20:16:17 +10:00
Campbell Barton
917d069cdb Merge branch 'master' into blender2.8 2017-08-23 19:21:52 +10:00
Campbell Barton
81c0e643a0 BLI_string_utils: string joining utility functions
Includes a version that takes a separator and macros for convenience.
2017-08-23 19:17:27 +10:00
Campbell Barton
58a4c767a1 Merge branch 'master' into blender2.8 2017-08-23 16:10:45 +10:00
Campbell Barton
8899ac1550 GHash: BLI_ghash_reinsert_key utility function
Useful when ghash keys are reallocated.
2017-08-23 13:03:35 +10:00
Campbell Barton
673c9dce08 Merge branch 'master' into blender2.8 2017-08-12 19:08:49 +10:00
Campbell Barton
091ae0ea71 Math Lib: add isect_seg_seg_v2_point_ex
This exposes end-point bias argument, needed in rare cases.
2017-08-12 18:35:47 +10:00
Campbell Barton
9567529b8f Merge branch 'master' into blender2.8 2017-08-12 00:23:49 +10:00
Campbell Barton
58ee738310 GHash: note that 'deprecated' is used for private 2017-08-11 19:10:19 +10:00
Campbell Barton
d1328feeb1 Merge branch 'master' into blender2.8 2017-08-11 10:33:39 +10:00
Campbell Barton
e5604a2fa4 Cleanup: whitespace 2017-08-11 08:32:05 +10:00
Sergey Sharybin
ed500ac8c7 Fix for previous commit
Accidentally got semicolon removed just before commit.
2017-08-09 15:00:47 +02:00
Sergey Sharybin
e00364c88e Fix strict compiler flags on 32bit Linux 2017-08-09 14:58:49 +02:00
Campbell Barton
b5e6a21f1d Cleanup: Quiet warning 2017-08-09 20:24:51 +10:00
Bastien Montagne
41830cc432 Refactor ID copying (and to some extent, ID freeing).
This will allow much finer controll over how we copy data-blocks, from
full copy in Main database, to "lighter" ones (out of Main, inside an
already allocated datablock, etc.).

This commit also transfers a llot of what was previously handled by
per-ID-type custom code to generic ID handling code in BKE_library.
Hopefully will avoid in future inconsistencies and missing bits we had
all over the codebase in the past.

It also adds missing copying handling for a few types, most notably
Scene (which where using a fully customized handling previously).

Note that the type of allocation used during copying (regular in Main,
allocated but outside of Main, or not allocated by ID handling code at
all) is stored in ID's, which allows to handle them correctly when
freeing. This needs to be taken care of with caution when doing 'weird'
unusual things with ID copying and/or allocation!

As a final note, while rather noisy, this commit will hopefully not
break too much existing branches, old 'API' has been kept for the main
part, as a wrapper around new code. Cleaning it up will happen later.

Design task : T51804
Phab Diff: D2714
2017-08-07 20:34:36 +02:00
Bastien Montagne
9da7dfa158 Refactor ID copying (and to some extent, ID freeing).
This will allow much finer controll over how we copy data-blocks, from
full copy in Main database, to "lighter" ones (out of Main, inside an
already allocated datablock, etc.).

This commit also transfers a llot of what was previously handled by
per-ID-type custom code to generic ID handling code in BKE_library.
Hopefully will avoid in future inconsistencies and missing bits we had
all over the codebase in the past.

It also adds missing copying handling for a few types, most notably
Scene (which where using a fully customized handling previously).

Note that the type of allocation used during copying (regular in Main,
allocated but outside of Main, or not allocated by ID handling code at
all) is stored in ID's, which allows to handle them correctly when
freeing. This needs to be taken care of with caution when doing 'weird'
unusual things with ID copying and/or allocation!

As a final note, while rather noisy, this commit will hopefully not
break too much existing branches, old 'API' has been kept for the main
part, as a wrapper around new code. Cleaning it up will happen later.

Design task : T51804
Phab Diff: D2714
2017-08-07 16:39:55 +02:00
Campbell Barton
2952798cd6 BLI_math: use const args for mul_m#_series 2017-08-04 15:05:02 +10:00
Campbell Barton
ca67cdb73c Merge branch 'master' into blender2.8 2017-08-03 07:14:02 +10:00
Bastien Montagne
c1e177ad29 BLI_math: add simple helper to get amount of 'integer' digits in a float number. 2017-08-01 16:34:02 +02:00
Campbell Barton
367ec386d1 BLI_memiter: minor cleanup 2017-07-30 14:23:08 +10:00
Campbell Barton
913d8ec608 BLI_memiter: Small API for many small allocations
- Each allocation can be a different size
  (but should be smaller than the chunk size).
- Result can be looped over in order of allocation.
- Allocations are aligned to pointer size to avoid unaligned reads.
2017-07-30 00:08:17 +10:00
Campbell Barton
361acb6991 Cleanup: multistatement-macros warning 2017-07-29 08:21:01 +10:00
Campbell Barton
393ba0cf16 Cleanup: multistatement-macros warning 2017-07-29 08:18:20 +10:00
Campbell Barton
11e95fcdd2 Merge branch 'master' into blender2.8 2017-07-27 07:35:44 +10:00
Campbell Barton
5c963128ea Cleanup: remove check for old GCC&PPC 2017-07-27 07:29:16 +10:00
Campbell Barton
193d7d6333 Merge branch 'master' into blender2.8 2017-07-17 13:21:05 +10:00
Brecht Van Lommel
5c30bc285c Fix T52034: cell noise renders different.
Tweak the bias from the previous fix a bit to be more backwards compatible in
some scene. In the end which way we round is quite arbitrary, but keeping the
case where the texture coordinate is exactly zero the same seems better.
2017-07-16 01:27:55 +02:00
Alexander Romanov
e1482841dd Merge branch 'master' into blender2.8 2017-07-03 19:53:00 +03:00
Brecht Van Lommel
3232d8ec8f Fix T51951: cell noise texture precision issue at unit vertex coordinates.
Solution is to bias the coordinates a little, same as Cycles checker texture.
2017-07-02 22:00:10 +02:00
Campbell Barton
f0863f2a80 Merge branch 'master' into blender2.8 2017-06-26 13:27:54 +10:00
raa
bddb4de47c Fix T51845 2017-06-23 11:05:54 +03:00
Campbell Barton
9649c6bef5 Merge branch 'master' into blender2.8 2017-06-19 15:06:48 +10:00
Campbell Barton
72c9141a7a Cleanup: doxygen comments
Also remove duplicate & mismatching comments from grease-pencil header.
Keep comments close to implementation to avoid getting out of sync.
2017-06-19 10:04:30 +10:00
Campbell Barton
51404724cc Merge branch 'master' into blender2.8 2017-06-16 01:29:20 +10:00
Campbell Barton
1d966ca7a1 Math Lib: add angle_on_axis_v3v3_v3
Use for calculating the angle between 2 directions on an axis.

Also signed version and normalized plane projection,
use when input is normalized.
2017-06-16 01:27:58 +10:00
Sergey Sharybin
0f4f4d8754 Merge branch 'master' into blender2.8 2017-06-12 15:12:36 +02:00
Campbell Barton
00c4f49a6d Cleanup: indentation, long lines 2017-06-12 13:38:21 +10:00
Campbell Barton
dfd8b38e0c BLI_kdopbvh: add ifdef's for debugging info
Allow to quickly enable print & tree verify.
2017-06-11 18:56:56 +10:00
Campbell Barton
bb773acd5f Merge branch 'master' into blender2.8 2017-06-09 19:40:47 +10:00
Campbell Barton
d7f33668d6 Math Lib: Add mat3_from_axis_conversion_single
Single axis version of mat3_from_axis_conversion,
when the second axis isn't important (orienting an arrow for eg).
2017-06-09 19:31:27 +10:00
Dalai Felinto
6fee241db5 Merge remote-tracking branch 'origin/master' into blender2.8 2017-06-07 11:38:03 +02:00