Commit Graph

1231 Commits

Author SHA1 Message Date
b3704f45c4 Fixes for snprintf usage:
* replace by BLI_snprintf in various places, note _snprintf on windows
  does not properly null terminate the string.
* fix overflow in sequencer proxy code due to buffer being smaller than
  specified size.
* fix some usage of snprintf as strcpy, this is will go wrong if the
  string contains % characters.
* remove BLI_dynstr_printf function in gpu module, use BLI_dynstr_appendf
2011-08-30 10:07:50 +00:00
27ec8d5043 fix for some warnings with the recent merge, also tag unused args. 2011-08-30 09:50:31 +00:00
39b66f9ad4 Merge with trunk r39750 2011-08-28 16:46:40 +00:00
852a03a6af RNA_property_as_string now escapes the string (so operator redo can include strings with ", \n etc), also fixed a bug in string escape length limit. 2011-08-28 09:28:41 +00:00
fa2ba5fbf5 - use static vars and functions where possible.
- use NULL rather than 0 when used as pointers.
2011-08-28 05:06:30 +00:00
81ea1e7fcb remove implicit casts to doubles in the noise code, also use floating point math functions rather then double since the noise functions range is already limited by casting to ints in many places.
- gives a very small speedup.
2011-08-28 02:54:26 +00:00
4684df0830 fix [#28388] Clouds at high depth give artifacts.
http://projects.blender.org/tracker/download.php/9/498/28388/17476/screen_bad.png
2011-08-28 02:04:40 +00:00
a05d4a729a remove deprecated & unused mat3_to_vec_rot and mat4_to_vec_rot functions. 2011-08-27 01:42:49 +00:00
722be28d68 sub_v4_v4v4 was taking float[3] arguments. 2011-08-26 22:37:20 +00:00
f6a2b8d724 BLI_strescape for a basic, python like string escaping, currently only use for drag and drop ID's into the console but should eventually be used for the animsys too. 2011-08-23 15:08:54 +00:00
34b7bff44b change compression level for gzip saving to 1, approx twice as fast when saving a 194mb blend file and only slightly bigger. 2011-08-23 07:59:25 +00:00
c5106fd097 Merge with trunk r39589 2011-08-21 19:37:19 +00:00
3a81f23e09 warning cleanup for -Wdouble-promotion 2011-08-19 16:21:29 +00:00
2c8e1e633c comment unused lines. 2011-08-15 03:41:31 +00:00
b1c04d379f un-inline GHash functions r26206, these are quite large functions to inline and increase binary size by 30kb, (tested on stripped, cmake release build).
Ran some speed tests and difference was close to the noise level, but inlining gives only ~2 - 3% speedup with build modifier which uses ghash a lot.
2011-08-12 02:23:06 +00:00
Xiao Xiangquan
465c3b82fa merge with trunk r39216 2011-08-10 14:32:03 +00:00
daea8a28ae Merge with trunk r39000 2011-08-03 18:47:20 +00:00
670f58023c == PBVH ==
OK, after that failure of committing a bunch of old junk, hopefully
this is what I actually meant to commit :)

* Added big comments to some of the fields in struct PBVHNode. I
  always forget the details of these, so finally wrote it down
  properly.

* Changed types of PBVHNode.face_vert_indices and PBVHNode.flag to
  better reflect their contents.

* There should be no functional changes here.
2011-07-31 02:34:53 +00:00
f66ec41b6a quiet some compiler warnings & fix possible (but unlikely) crash.
also added GPLv2+ header to resources.c.
2011-07-30 09:24:10 +00:00
Xiao Xiangquan
287b24926f merge with trunk r38787 2011-07-29 17:42:53 +00:00
2a97e5a772 Merge with trunk r38619 2011-07-22 18:51:53 +00:00
cbe1613c01 Dynamic Paint:
* Surface bake data is no longer recalculated every frame, but only when surface mesh has moved/transformed. Results in multiple times better performance on high resolution surfaces when using sub-steps or surface is still.
* Heavily optimized particle brushes when random particle size enabled. Up to 10x speedup with large radius particles.
* Added an additional "grid" space partitioning structure for surfaces.
* Added bounding box checks for brushes.
* Smaller overall optimization.
* Further OpenMP parallelization.
* Added physics tab link to modifier panel.
* Fix: "Point Density" texture cache wasn't properly updated. Brushes can now use Point Density textures as well.
* Fix: Paint dissolve resulted in black color.
* Fix: KD-tree checkups weren't completely thread safe. Fixes possible crash with OpenMP enabled particle brushes.
* Fix: When brush was set to use a specific material, it was saved incorrectly and resulted in potential crashes on next load.
2011-07-22 18:37:30 +00:00
74219d2704 patch [#28031] Minor typo in Blenlib
from Scott Giese (sgiese)
2011-07-20 06:05:47 +00:00
Xiao Xiangquan
fa46278e34 merge from trunk 38379 2011-07-14 17:29:53 +00:00
4b80e1aba2 Merge with trunk r38281 2011-07-10 16:18:48 +00:00
7370ba1839 fix for NULL pointer usages 2011-07-09 19:59:32 +00:00
2420439773 Merge with trunk r38225 2011-07-08 11:16:13 +00:00
11645e7a3f Fix #27877: writing .avi files > 4 GB not working on windows.
Solution is to replace "long" by "int64_t" and "fseek" by "_fseeki64", because
long on 64 bit windows is still 32 bit.
2011-07-06 10:19:04 +00:00
7e36a75b45 Paths: remove some temporary code that was only needed for 2.57. 2011-07-04 13:33:47 +00:00
aa1668c6f8 fix for own error in intersect_line_sphere_2d(), using 3d function on 2d vectors 2011-07-04 08:13:27 +00:00
fe62b62cb0 fix 2 bugs in project from view from a camera object
- panorama mode was scaled 2x too high.
- scaled camera objects would incorrectly effect the result.
2011-07-03 10:48:18 +00:00
78c43d18fc fix [#27839] UV 'Project from view' ignores camera lens shift 2011-07-03 07:37:33 +00:00
c896fcae79 Merge with trunk r37849 2011-06-27 08:11:05 +00:00
933a65a76f 2d version of line/circle intersec function. 2011-06-26 11:08:12 +00:00
8eb119a5cd renamed math functions and made public
lambda_cp_line --> line_point_factor_v3
 lambda_cp_line2 --> line_point_factor_v2

correction to previous commit function name
 isect_seg_sphere_v3 --> isect_line_sphere_v3
 ... since its not clipped.

added a clip argument to the python version of the function.
2011-06-26 08:07:09 +00:00
540c2eee56 math func to find the intersection(s) between a segment and a sphere for C/python.
from python:
  i1, i2 = mathutils.geometry.intersect_line_sphere(l1, l2, sphere, radius)
2011-06-26 07:21:19 +00:00
a03707d408 SVN maintenance. 2011-06-24 23:14:26 +00:00
12e02fd474 own patch [#27752] Python Callback (Scriptlink functionality)
Python:
 * adds bpy.app.handlers which contains lists, each for an event type:
   render_pre, render_post, load_pre, load_post, save_pre, save_post
 * each list item needs to be a callable object which takes 1 argument (the ID).
 * callbacks are cleared on file load.

Example:
 def MyFunc(scene): print("Callback:", data)
 bpy.app.handlers.render_post.append(MyFunc)

C:
 * This patch adds a generic C callback api which is currently only used by python.
 * Unlike python callbacks these are not cleared on file load.
2011-06-24 16:54:30 +00:00
74520bd1ef move callbacks file out of intern (only contains 1 function but re-using it for new callback api) 2011-06-24 15:10:34 +00:00
734a4aa428 fix [#27746] Black and White Render doesn't work and/or Saves as a Blank screen
convert to grayscale when saving renders rather then only writing the red channel.
2011-06-24 03:49:56 +00:00
b937a4f5b6 Merge with trunk r37546 2011-06-16 12:00:03 +00:00
Xiao Xiangquan
40981d872f merge from trunk r37405 2011-06-15 08:28:56 +00:00
15d0d3f41e replace log() calls with constants 2011-06-09 14:27:51 +00:00
b481524fde fix for float projection painting, now updating correctly.
This fix also allows for partial update of the image, speeding up painting. 
The different code path implemented will be used to upload high resolution images to OpenGL when onion branch is merged.
Due to conversion of float textures to/from sRGB, corrections made to brush color sampling to take account of the image profile. This is not 100% correct yet as texture images used for projection painting strokes are not converted to/from sRGB yet(This has been decided due to loss of precision for 8-bit formats). It will have to do for now, though.

last-minute update, exr image loading is broken, will fix asap
2011-06-06 22:10:05 +00:00
a1c22262fe Bake from multires mesh
=======================

Added option to baked named "Bake From Multires" which is avaliable for
normals baking and displacement baking.

If this option is enabled, then no additional hi-res meshes and render
structures would be created . This saves plenty of memory and meshes
with millions of faces could be successfully baked in few minutes.

Baking happens from highest level against viewport subdivision level,
so workflow is following:
  - Set viewport level to level at which texture would be applied
    during final rendering.
  - Choose Displacement/Normals baking.
  - Enable "Bake From Multires" option.
  - You're ready to bake.

Displacement baker had aditional option named "Low Resolution Mesh".
This option is used to set if you want texture for realtime (games)
usage.

Internally it does the following:
  - If it's disabled, displacement is calculated from subdivided
    viewport level, so texture looks "smooth" (it's how default
    baked works).
  - If it's enabled, dispalcement is calculated against unsubdivided
    viewport levels. This leads to "scales". This isn;t useful for
    offline renders much, but very useful for creating game textures.

Special thanks to Morten Mikkelsen (aka sparky) for all mathematics
and other work he've done fr this patch!
2011-06-05 20:54:04 +00:00
68a3303013 operator buttons get a red highlight when alert is set for the layout 2011-06-05 17:02:57 +00:00
68d4c64db8 own commit r37199 gave problems with duplicating objects, use different fix. 2011-06-05 15:29:50 +00:00
3a6adc0ed3 fix [#27554] vertex group names
- duplicate vertex group names were not being checked for.
- also made the first duplicate end with .001 rather than .000
2011-06-05 04:52:32 +00:00
Xiao Xiangquan
a40e1302ae Almost complete the i18n system, including:
Copy unifont..ttf.gz from source tree to target datafile path( now ONLY works with cmake );
Set the locale the same with system's setting;
If need unicode font, unzip and load unifont when init ui styles;
Apply gettext() to labels in space_info.py, who are the main menu items.

Each of these should have been commit one by one. As they work well according to my tests, so I just lazily send a long list.
2011-06-02 11:22:22 +00:00
9b5800bcd7 fixed "rather then" -> "rather than" typos all over the place 2011-05-28 13:11:24 +00:00