Commit Graph

34694 Commits

Author SHA1 Message Date
Sergey Sharybin
8a2c30ac57 RNA C++ API improvements
Added support of such features, as:

- Ability to call RNA functions using C++ classes
  For example RenderEngine.tag_update

- Property setters (for scalars and arrays)
  Used Qt/jQuery-like getters/setters style, meaning Class.prop() is a getter,
  Class.prop(value) is a setter.

Still to come:

Collection functions are not currently registering inside a property
Meaning BlendData.meshes wouldn't be a subclass of BlendDataMeshes result
you'll need to explicitly create BlendDataMeshes for now instead of doing
BlendData.meshes.remove()
2012-10-22 17:34:16 +00:00
Sergey Sharybin
3285d47842 Fix #32930: texture colors in material nodes (blender internal) are brighter than normal
There was a missing byte buffer linearization for shader nodes.

Also fixed incorrect image input color space refresh when image is packed.
2012-10-22 17:34:06 +00:00
Sergey Sharybin
6e62491c5a Fix #32522: Object's diffuse color not showing in Sculpt Mode
Added option to display object's diffuse color multiplied by sculpting
mask. This option could be found in Options panel of toolshelf when in
sculpting mode.

Thanks to Nicholas and Brecht for reviewing the patch!
2012-10-22 17:33:53 +00:00
Campbell Barton
c6b4494727 decimator - small optimization on check for degenerate edges. 2012-10-22 17:33:11 +00:00
Campbell Barton
23baf8c9c3 code cleanup: check defgroup_name_index() return value != -1, rather then checking >= 0.
also remove unused bmesh decimator code.
2012-10-22 17:19:05 +00:00
Sergey Sharybin
612768760a Apparently msvc doesn't have isnan. 2012-10-22 16:12:27 +00:00
Campbell Barton
3526ae9805 add vertex group option to decimate modifier, handy if you want to pin some parts of the geometry. 2012-10-22 15:39:06 +00:00
Ton Roosendaal
63f042250f Bugfix #30378
Full Sample Antialiasing render gave fireflies with halos - especially on edges of polygons.
Reason was FSA exception case in code, using uninitialized color array.

Probably these fireflies were hunting us already for many many years.
2012-10-22 14:49:37 +00:00
Sergey Sharybin
fc5da14dad Fix for inline functions of new cineon library 2012-10-22 14:28:43 +00:00
Bastien Montagne
40da6bb531 Update of the tools for the new "dynamic" i18n menu, to generate the languages file into locale dir... 2012-10-22 14:17:30 +00:00
Bastien Montagne
b5e85cae70 New "dynamic" i18n menu.
Now both UI translation menu (in userprefs) and isocodes are defined in a text file (release/datafiles/locale/languages), parsed at lunchtime. This way:
* No more need to edit Blender code each time we want to add an new language or reorganize the existing menu;
* Translators can easily add a new language for testing, by just editing the text file, so no more need to ask to change Blender code and wait for a new build to see your new translation work in Blender!

Remaining todo:
* Commit i18n py tools
* Update wiki doc!
2012-10-22 14:04:40 +00:00
Sergey Sharybin
c727f8cbde Some more fixes for cineon 2012-10-22 14:01:16 +00:00
Sergey Sharybin
6a979acbf0 Compilation fix for windows platform 2012-10-22 13:52:56 +00:00
Sergey Sharybin
d8d7664dbd Compilation error fix for scons caused by recent dpx commit 2012-10-22 13:13:00 +00:00
Campbell Barton
436bbdfd24 style cleanup: use more const's in BLI_heap & dpx/cineon style cleanup 2012-10-22 13:00:02 +00:00
Sergey Sharybin
4e11fe6c5a Patch #27397: Improved DPX/Cineon code
Patch by Julien Enche, thanks!

From the patch comment:

It allows Blender to load:
- 1, 8, 10, 12 and 16 bits files. For 10 and 12 bits files, packed or
  filled type A/B are supported.
- RGB, Log, Luma and YCbCr colorspaces.
- Big and little endian storage.
- Multi-elements (planar) storage.

It allows Blender to save :
- 8, 10, 12 and 16 bits file. For 10 and 12 bits files, the most used
  type A padding is used.
- RGB and Log colorspaces (Cineon can only be saved in Log colorspace).
  For Log colorspace, the common default values are used for gamma,
  reference black and reference white (respectively 1.7, 95 and 685 for
  10 bits files).
- Saved DPX/Cineon files now match the viewer.

Some files won't load (mostly because I haven't seen any of them):
- Compressed files
- 32 and 64 bits files
- Image orientation information are not taken in account. Here too,
  I haven't seen any file that was not top-bottom/left-right oriented.
2012-10-22 12:49:00 +00:00
Campbell Barton
ddc2dbc2a4 style cleanup 2012-10-22 08:15:51 +00:00
Campbell Barton
30fd258a0b fix for own error in BLI_heap_new_ex() when zero size is passed. 2012-10-22 07:57:21 +00:00
Antony Riakiotakis
ffd98941b5 Support for connected style proportional editing in UV editor. Now when connected proportional editing is on, only UVs on the same island will be proportionally moved. The implementation simply rejects UVs whose island does not belong to islands of selected vertices and decrements the total count of transform elements appropriately. Memory usage could be better but it would require some more preprocessing. 2012-10-22 07:29:38 +00:00
Bastien Montagne
492518f5e4 Fix [#32884] select by group not working when active object in more than one group.
Would have liked to rework this whole area, but it's kind of tricky, so better to first fix that bug!
2012-10-22 06:53:51 +00:00
Campbell Barton
a4b2783169 small optimization for BLI_heap(), give some speedup in decimeter.
- use unsigned ints only (where mixing signed/unsigned)
- turn heap_swap into an inline function, add SWAP_TVAL macro to swap values using a temp value as storage.
- added type checking SHIFT3/4 macros

also style cleanup for CTR_Map
2012-10-22 03:25:53 +00:00
Campbell Barton
226a5ee834 remove LOD_Decimator (c++ decimator), now replaced by bmesh decimator. also remove CTR c++ classes that are no longer used. 2012-10-22 02:39:26 +00:00
Joshua Leung
91ceb8f552 Tooltip/Description fixes for recent "tweaks"
1) "AnimData" is a technical term used for a specific entity in the system.
"anim data" is mangled fluff.
2) Old tooltip for DopeSheet.source is no longer valid. It's nearly always used
to represent the current scene now.
2012-10-22 02:20:41 +00:00
Campbell Barton
2342209c95 enable bmesh decimator by default. 2012-10-22 02:09:41 +00:00
Campbell Barton
39ed660bc6 fix own mistake - passing wrong argument to bmesh decimator when calculating boundary quadric. 2012-10-22 02:02:52 +00:00
Jeroen Bakker
4426e7bcb4 Fix for [#32931] Crop node resets values to 0
Patch done by Markus Kasten
Thanks for that!
2012-10-21 18:56:48 +00:00
Campbell Barton
248b2fc6d6 bmesh-decimator update
- update face normals when triangulating.
- avoid divide by zero when interpolating customdata on a zero length edge.
- replace zero float comparisons with fabsf() < FLT_EPSILON to avoid numeric error.

also renamed BLI_heap_empty() --> BLI_heap_is_empty() so its obviously readonly function.
2012-10-21 15:20:53 +00:00
Andrea Weikert
1e21c0a324 == filebrowser ==
* Separated bookmarks managed by the OS (System Bookmarks) and bookmarks managed by Blender (Bookmarks).
* Added user pref to hide (or show) system bookmarks to allow users doing a video tutorial for example to hide their private system bookmarks
This feature should help especially MAC users who reported excessively long list of bookmarks which were added to Blender.
2012-10-21 14:47:16 +00:00
Bastien Montagne
26d0492653 A final bunch of UI messages fixes and tweaks, and some BKE_report()<->BKE_reportf() fixes. 2012-10-21 14:02:30 +00:00
Ton Roosendaal
9e830c0c9c Bugfix #27504
Render error.
Particle systems that duplicate group instances were setting the wrong
layer to the instanced objects, the correct layer is the particle system
itself - as being shown in the viewport correctly already.

Old report from May 2011 :)
2012-10-21 13:30:18 +00:00
Campbell Barton
203ff71b9e bmesh decimate fixes
- don't collapse boundary verts into non boundary edges (was ugly causing spikes)
- handle degenerate cases better, rather then removing double edges after collapse, check before collapsing that there won't be any degenerate faces/edges.
2012-10-21 12:35:01 +00:00
Ton Roosendaal
fff19a1360 Compatibility error: BLENDER_MINVERSION was set to 2.61, but that should be 2.62.
This define means "the minimum version of Blender that can read the current .blend"

In 2.62 there's compatibility code to read BMesh, not in 2.61.
2012-10-21 09:57:25 +00:00
Bastien Montagne
d57e130478 Fix [#32934] Some UI texts translated/untranslated regardless of "Interface" checkbox. Patch [#32935] by Shinsuke Irie, thanks! 2012-10-21 08:13:34 +00:00
Bastien Montagne
bd88a77644 Fix blenderplayer build (more stub funcs...). 2012-10-21 08:11:04 +00:00
Campbell Barton
d599b643b7 style cleanup: bge, switch statements mostly.
also left bmesh decimator on in previous commit.
2012-10-21 07:58:38 +00:00
Campbell Barton
f3ece5a108 style cleanup: trailing tabs & expand some non prefix tabs into spaces. 2012-10-21 05:46:41 +00:00
Benoit Bolsee
4213eca5fc BGE VideoTexture: add depth buffer access to ImageViewport and ImageRender.
2 new attributes to ImageViewport and ImageRender object:
depth: set to True to retrieve the depth buffer as an array of float
       (not suitable for texture source).
zbuff: set to True to retrieve the depth buffer as a grey scale pixel array
       (suitable for texture source).

A new mode 'F' is added to VideoTexture.imageToArray() to allow returning the image
buffer as a one dimensional array of float. This mode should only be used to retrieve
the depth buffer of ImageViewport and ImageRender objects.

Example:

viewport = VideoTexture.ImageViewport()
viewport.depth = True
depth = VideoTexture.imageToArray(viewport,'F')
# show depth of bottom left pixel
# 1.0 = infinite, 0.0 = on near clip plane.
print(depth[0])
2012-10-20 22:28:44 +00:00
Campbell Barton
7deb8d8a26 code cleanup: spelling 2012-10-20 20:36:51 +00:00
Campbell Barton
c56a911cd9 style cleanup: comments 2012-10-20 20:20:02 +00:00
Bastien Montagne
80d3423b00 Atempt to get rid of those ugly "long locales" under windows. Tested by me (win7 64, VC2008) and by Sergey. However, older OS (XP) may not work...
The idea behind this is that gettext lib has a func that mimics usual setlocale, but doing also the conversion to windows locale names. Let's hope it works everywhere!
2012-10-20 19:54:09 +00:00
Campbell Barton
bc8f602601 style cleanup 2012-10-20 18:46:57 +00:00
Campbell Barton
3da4b08110 bmesh-decimator, skip recalculating face normals on each edge collapse. (they are not used so faster to avoid) 2012-10-20 18:12:22 +00:00
Campbell Barton
eee64aeccf bmesh-decimate now only does CustomData_has_math for loop layers, add CustomData_has_interp() for vert & edges. 2012-10-20 17:39:56 +00:00
Campbell Barton
8944dab58a bmesh decimator support for loop & edge customdata. (most importantly UVs and vertex colors). 2012-10-20 17:31:07 +00:00
Sergej Reich
0a590aadf5 Add option to set object origin to the center of mass
This uses the weighted average of polygon centroids based on area
It work well in most cases but will be slightly wrong when polygons have 
many vertices.
2012-10-20 16:48:54 +00:00
Campbell Barton
d20128bbbc fix for BM_edge_other_loop() not working right (own error in recent commit), and add new function BM_vert_step_fan_loop() for stepping around the loops of a face fan with manifold edges. 2012-10-20 16:48:04 +00:00
Campbell Barton
29392dc2b4 don't print mousemoves with wm_handlers_do and --debug-events 2012-10-20 16:04:15 +00:00
Campbell Barton
18fa7589ef add comment about misuse of enum set function. 2012-10-20 14:16:56 +00:00
Ton Roosendaal
add48983ca Bugfix #32641
User preferences, keymap editor: it allowed to set any event for "key modifier", and not
even to NULL the option. Now it limits to keyboard events, on mouseclicks it clears,
on ESC it exits without changes.
2012-10-20 14:13:14 +00:00
Campbell Barton
1820d3529c add TIMEIT_VALUE_PRINT() macro for printing timing between start/end macros. 2012-10-20 10:37:15 +00:00