Commit Graph

338 Commits

Author SHA1 Message Date
84236c2502 use 2d copy functions with UV's in more places. 2011-12-17 03:46:38 +00:00
3311164b24 Math lib: matrix multiplication order fix for two functions that were
inconsistent with similar functions & math notation:

mul_m4_m4m4(R, B, A) => mult_m4_m4m4(R, A, B)
mul_m3_m3m4(R, B, A) => mult_m3_m3m4(R, A, B)

For branch maintainers, it should be relatively simple to fix things manually,
it's also possible run this script after merging to do automatic replacement:
http://www.pasteall.org/27459/python
2011-12-16 19:53:12 +00:00
9996188791 New fix for [#29543] Hook modifier: falloff + vgroup influence broken
Don't know why, but creating a dm when there was none broke multi hooks on curves (see #29567)... So as a valid dm is only mandatory for meshes when a vgroup is set, only create it in those cases!
2011-12-15 08:57:48 +00:00
40a2c1a292 more vertex weight edits,
* replace inline loops with api calls.
* change constraints so verts with 0.0 weight are ignored like they are everywhere else.
2011-12-14 22:54:38 +00:00
a88b29c062 Bugfix [#29567] Second Hook Modifier fails on Curve Object
This was broken in r.42515. In particular, rigs with Spline IK would break,
since they often use curves with hook modifiers controlling the control-points
of those curves.
2011-12-10 03:37:37 +00:00
f025b7b511 went over all uses of MDeformWeight.def_nr and made sure the value is clamped when used as an array index. 2011-12-09 08:20:27 +00:00
46626e4f5f Fix [#29543] Hook modifier: falloff + vgroup influence broken
A valid derivedmesh is needed for modifier_get_vgroup to work, and it wasn’t take care of when not in edit mode... Checked quickly the other deform modifiers, they all seem to handle this correctly.
2011-12-08 15:50:28 +00:00
2b82498544 minor refactor of vertex group functions,
- defvert_remove_index's index wasnt used anywhere, rename to defvert_remove_group
- defvert_add_to_group was local in MOD_weightvg_util.c, moved to deform.c and renamed to defvert_add_index_notest

real fix coming next...
2011-12-08 03:47:45 +00:00
cbd5b492b1 remove use of deprecated struct members
- editmesh smooth & subdivide were using old mirror axis flag still.
- removed colbits from outliner and object code.
- commented some other parts of the code which access deprecated members and aren't called anywhere.
2011-12-04 06:39:35 +00:00
064d46eef0 use consistent naming for deform.c, also moved defvert_remove_index into deform.c, was local in modifier code. 2011-11-30 07:39:54 +00:00
f62ad8f69b remove header text:
"The Blender Foundation also sells licenses for use in proprietary software under the Blender Licens"

also remove NaN references from files that have been added since blender went opensource.
2011-11-29 10:54:47 +00:00
a2e1060862 quiet some warnings and logical errors.
- curve map insert point had a nested loop which used the same value to index different arrays.
- dynamic paint used ternary operator where both outcomes were the same.
2011-11-27 23:41:01 +00:00
6736576f6d replace FILE_MAXDIR + FILE_MAXFILE with FILE_MAX 2011-11-26 04:07:38 +00:00
2345efc6c5 Patch #29336: renaming UV (Texture) Layer to UV Map in the user interface,
by Gaia Clary.

Rationale: the name was confusing and not always used consistently, and this
map itself is not something that can be layered, rather the map can be used
as texture coordinates in some layered setup.

The original intent was to indicate this contained more than just UV's, but
the game engine settings have already been moved out, and apparently users
didn't really get this from the name anyway.
2011-11-23 17:25:25 +00:00
8d5d87c447 Fixed some glitches with WeightVG modifiers:
* Added some RNA tooltips, now that they are supported by dropdown lists.
* Fixed some RNA num properties UI steps.
* Fixed a memory leak in Proximity modifier (when dm of "target" object had to be created, it wasn’t freed...).
2011-11-23 14:40:15 +00:00
055ddbc22d looking at CustomData_add_* functions - best the return valye is checked. 2011-11-22 19:01:52 +00:00
761ebc7b59 more minor edits to ocean sim code 2011-11-22 18:51:01 +00:00
b78701f6fe ocean sim
- UV's were not being calculated if there were too many VColor layers.
- precalc (omd->size * omd->spatial_size) was being called in a loop.
- use vector functions to avoid pointer indrections on each access which the compiler wont optimize - eg: och->ibufs_disp[f]->rect_float[4*(res_x*j + i) + 1]
- dont call abs() on ints (converts to double and back to int in this case).

also unrelated render buttons change. move saving options directly under the file path since these were easy to confuse with image format options like zbuf, ycc, preview.. etc.
2011-11-22 18:03:33 +00:00
36fa74b50e remove unnecessary switch() statement from ocean sim loop. 2011-11-22 15:10:08 +00:00
fd742566a6 - use cache_ as a prefix for new modifiers.
- some comments to recent image changes.
2011-11-22 10:04:28 +00:00
Lukas Toenne
d4f27b7bf0 Yet another fix for crashes when drawing empty base mesh with constructive modifier. This crashed with ocean modifier (#29241). The previous fix was to avoid drawing mapped faces altogether for empty edit mesh, but that also disables the actual derived mesh display (#29346).
The real reason for this crash is that ocean modifier (in generative setting) does not properly set the derived mesh face ORIGINDEX data to ORIGINDEX_NONE. With this the previous fixes are not necessary.
2011-11-21 11:46:05 +00:00
f1eb66aa68 share code for fluidsim, ocean & dynamic paint file paths.
- use BLI_join_dirfile for joining all paths (no need to ensure slash is appended).
- paths from linked library files now supported.
2011-11-20 14:38:11 +00:00
Lukas Toenne
17b113c784 Option to rename the vertex color data layer used by Ocean modifier for foam. The modifier outputs foam values to both textures and a (temporary) vertex data layer. This layer was unnamed before, which makes it impossible to access in shader nodes. Now the user can input a custom name in the modifier panel, then use that same name in a shader input node to access foam values.
http://www.pasteall.org/pic/21120
2011-11-20 14:16:41 +00:00
807a76d943 Fixing compile breakage (was missing an #include "BKE_camera.h" in UVProject modifier code file…). 2011-11-19 20:40:46 +00:00
5d2a155f2b Camera: some more refactoring, mostly in the function that computes the camera
border, now we just get the border coordinates from comparing the viewport and
camera viewplanes.
2011-11-19 18:35:42 +00:00
Lukas Toenne
391f40e8c9 Default cache file paths for ocean and fluidsim modifiers are now "<temp folder>/ocean_cache/" and "<temp_folder>/fluid_cache/" when the file is not saved yet at the time the modifiers are created.
If it has been saved, the file paths are relative to the .blend: "//ocean_cache/" and "//fluid_cache/".

This should at least partially fix bug #29273. Particle external point caches are not changed.

http://projects.blender.org/tracker/?func=detail&atid=498&aid=29273&group_id=9
2011-11-16 12:43:12 +00:00
502081879b remove unused OceanModifierData member & use smaller flags where possible 2011-11-15 03:48:25 +00:00
49ccf975f2 minor cleanup
- use NULL rather then 0 for pointers
- use static functions where possible
- add own includes to ensure func's and their declarations don't get out of sync.
2011-11-14 16:05:44 +00:00
dfd20bb888 remove double promotions and some formatting edits (tabs & spaces mixed) 2011-11-13 16:10:01 +00:00
2af9b9476e Make Ocean modifier compile again! Also removed it’s $ID$ heading stuff. 2011-11-13 15:41:40 +00:00
8b32341775 ensure that the path and directory are joined correctly for ocean cache (assumed path ended with a '/') 2011-11-13 15:17:24 +00:00
7d0b5920c6 rename cmake WITH_OCEANSIM --> WITH_MOD_OCEANSIM and tag CYCLES_CUDA_BINARIES_ARCH as advanced. 2011-11-13 14:16:43 +00:00
Lukas Toenne
11c83d8432 Ocean Sim modifier patch
by Matt Ebb, Hamed Zaghaghi

This adds a new Modifier "Ocean" to simulate large-scale wave motion.
Details can be found in the wiki documentation [1], the project homepage [2] and the patch tracker [3]

The modifier is disabled by default for now. To enable it, the WITH_OCEANSIM (cmake) / WITH_BF_OCEANSIM (scons) flags have to be set. The code depends on fftw3, so this also has to be enabled.

[1]
http://wiki.blender.org/index.php/Doc:2.6/Manual/Modifiers/Simulation/Ocean

[2]
http://www.savetheoceansim.com

[3]
http://projects.blender.org/tracker/?group_id=9&atid=127&func=detail&aid=28338
2011-11-13 12:17:27 +00:00
e84c0980a3 correct indentation and some whitespace edits (no functional changes) 2011-11-11 13:09:14 +00:00
da93c1fde2 Fix [#29214] build modifier calculates wrong fraction of faces/verts/edges to draw 2011-11-10 13:28:58 +00:00
dfc30d1229 quiet some warnings from recent merge 2011-11-10 12:28:26 +00:00
afeb0eeaf0 Dynamic Paint merge:
Commit Dynamic Paint from "soc-2011-carrot" branch into trunk.

End-user documentation:
http://wiki.blender.org/index.php/Doc:2.6/Manual/Modifiers/Simulation/Dynamic_Paint

GSoC wiki page:
http://wiki.blender.org/index.php/User:MiikaH/GSoC-2011-DynamicPaint
2011-11-10 10:24:34 +00:00
1e035381d1 Workaround #29205: Crash while using Edge Split modifier (while rotating vertices in edit mode with edge split viewable)
This bug is caused by exactly the same reason as #26316: differences in how new vertices/edges
are getting calculated first and how they're adding later. In some cases extra vertices are
creating which weren't counted before.

This patch prevents crash in such situations, but result mesh can be a bit wrong.
This should work fine in bmesh, so think it's acceptable to have such workaround
before actual fix coming with bmesh.
2011-11-10 08:29:22 +00:00
1b4a54ad73 Merge with trunk r41701 2011-11-09 15:46:53 +00:00
edec46b0a6 Merge with trunk r41625 2011-11-07 16:36:49 +00:00
85540d5aa7 more macro --> BLI math lib, mainly replace VECCOPY in render and blenkernel. 2011-11-06 16:38:21 +00:00
b82dee0cb4 replace macros with bli math functions for particles code 2011-11-06 14:00:55 +00:00
723484ec06 Removed old "bsystem_time()" function, which by now is just a
duplicate of BKE_curframe() which just takes two extra args.

For the few calls in the physics engine where CFRA+1 instead of CFRA
was being used, I've added a new BKE_nextframe() call, which will
calculate for CFRA+1 instead of CFRA in much the same way that
bsystem_time() would end up doing things (which means including
subframe steps).
2011-11-06 06:08:18 +00:00
2ed6f077b3 Merge with trunk r41545 2011-11-05 08:04:49 +00:00
4ea816837d Configurable sensor size:
- Added support of variable size sensor width and height.
- Added presets for most common cameras, also new presets can be defined by user.
- Added option to control which dimension (vertical or horizontal) of sensor
  size defines FOV. Old behavior of automatic FOV calculation is also kept.
- Renderer, viewport, game engine and collada importer/exporter should
  deal fine with this changes. Other exporters would be updated soon.
2011-11-04 14:36:06 +00:00
c70cde6f94 Fix #29124: Modifying mesh with mirror and solidify modifiers crashes blender
It is corrected fix for #29089 (svn rev 41409). That fix wasn't correct because
it used to set face number from derived mesh on which solidify is applying which
isn't correct for case of constructive modifiers applied on base mesh before
solidify modifier.

Actually nothing special should be performed here to set needed original index
because of ORIGINDEX layer is getting copyed automatically when when copying faces.
2011-11-01 17:43:30 +00:00
2241eaddf5 Reverting r41409 (broken fix for #29089)
r41409 can cause a crash if you delete a face of a mesh that has subsurf & solidify modifiers active
2011-11-01 17:06:10 +00:00
cd338a4130 Merge with trunk r41411 2011-10-31 13:18:14 +00:00
0a37e6ab97 Dynamic Paint:
* Redesigned alpha blending and paint drying algorithms. Now it gives much better results when using low brush alpha or when surface has initial color set.
* Fix: "Slow" dissolve/dry was scaled incorrect when using substeps. Also adjusted time to better match non-"slow" setting.
* Fixed possible issues when using image textured brush.
* Fix: particle brush panel was no longer visible since last commit.
* Adjusted default surface values.
* Some more code cleanup.
2011-10-31 13:01:06 +00:00
2ceeaf9721 fix [#29089] Faces created for "rims" by solidify modifier have incorrect visibility 2011-10-31 07:17:35 +00:00