Age | Commit message (Collapse) | Author |
|
|
|
|
|
|
|
|
|
Use BKE_appdir/tempdir naming prefix for functions extracted from BLI_path_util
|
|
This module is intended for path manipulation functions
but had utility functions added to access various directories.
|
|
|
|
e.g.) and segfault.
Now readers get an 'mem_eof' guard pointer, and they abort in case they try to go past it.
|
|
|
|
|
|
Murmur2a is a very fast hashing function generation int32 hashes.
It also features a very good distribution of generated hashes.
However, it is not endianness-agnostic, meaning it will usually generate
different hashes for a same key on big- and little-endian architectures.
Consequently, **it shall not be used to generate persistent hashes**
(never store them in .blend file e.g.).
This implementation supports incremental hashing, and is a direct
adaptation of reference implementation (in c++):
https://smhasher.googlecode.com/svn-history/r130/trunk/MurmurHash2.cpp
That cpp code was also used to generate reference values in gtests file.
Reviewers: sergey, campbellbarton
Reviewed By: campbellbarton
Projects: #bf_blender
Differential Revision: https://developer.blender.org/D892
|
|
trash with float images.
Issue is uninitialized alpha in the clone brush + a clamping issue for
float images. There's still some 'swimming' and brightness issue here
but I have to do work for the weekly, will investigate further later.
|
|
Quite safe for 2.72.
|
|
|
|
|
|
Seem we've always were wrong with multiplying alpha by 255,
other channels seems to be multiplied by 256 with the shift
operations.
|
|
|
|
address sanitizer.
This was strangely only triggered when float buffers were used.
|
|
There were a few issues to fix here:
* We did not really unpremultiply float image dabs prior to sending them
to the GPU. That made float and byte image result different in texture
painting and undoing could change the result.
* To make textures nicely composited over the mesh, I used decal mode in
OpenGL texture environment for the texture unit. This uses the texture's
alpha channel with a nice over operator.
* Texture creation used to override the alpha setting due to the display
restrictions. Not so anymore, people can now create transparent byte
images.
Also, made alpha zero default for new textures now, since it has such a
nice effect here.
|
|
|
|
Goodbye VC2008, it has been a pleasure (more or less) :D SCons / CMake cleaenup will follow.
Differential Revision: https://developer.blender.org/D715
|
|
|
|
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.
|
|
|
|
|
|
occurence of delimiters.
Inspired by Python (r)partition str functions. Also added some Gtest cases for those new funcs.
Reviewed by Campbell Barton, many thanks!
|
|
|
|
Suppress warning for now, it's harmless and only happens
with new libpng.
In the future we might try enabling it for non-datatoc-ed
files, but it's really not worth spending lots of time on.
|
|
|
|
nice 32chars hexadecimal string.
That kind of stuff belongs to BLI, not specialized code like thumbs.c
|
|
|
|
No idea why this issue hasn't been spotted before. Took several hours to
figure out where exactly wrong memory access happens..
P.S. I really want to switch ImBuf->rect from int* to unsigned char*...
|
|
The root of the issue goes to the fact that we only can
read RGB EXR files, but they could be YCbCr or just Luma.
Added support for this two cases.
Note: internally EXR would still be 3 channels, so no
big memory save would happen here, at least yet.
|
|
Issue was caused by _wstat returning EOVERFLOW error because
of file size didn't fit into stat structure which was using
long datatype.
The idea of this patch is to use _wstat64 and _stat64 structure
which is capable storing 64bit file sizes.
Made it a typedef for stat structure used by BLI_stat function
in order to make code easier to follow and avoid ifdefs all
over the place.
Additionally solved issue with BLI_exists which was wrongly
returning False in cases destination file is larger then 4GB.
|
|
|
|
|
|
The issue was that we can't assume we support the colorspace from the file. The reported file had an invalid colorspace in fact, which was leading to the segfault in Blender.
Thanks for Sergey Sharybin for the help here.
|
|
The mask make sure the conversion only happens in a few areas of the
buffer.
New Functions:
* IMB_buffer_byte_from_float_mask
* IMB_buffer_float_from_float_mask
The functions are an adaptation of their maskless counterparts without accepting different profiles for the input and output buffers.
Review: Sergey Sharybin
|
|
|
|
|
|
|
|
4ca67869cc7a."
This reverts commit a47a4ef82f37428d391cc14a30fa611d6714e71d.
|
|
|
|
Opted to keep includes if they are used indirectly (even if removing is possible).
|
|
|
|
Was a failure of optimization trick.
|
|
|
|
|
|
modifiers, nodes)
|
|
|