Commit Graph

3749 Commits

Author SHA1 Message Date
Campbell Barton
84b58df85a svn merge ^/trunk/blender -r42742:42757 2011-12-20 08:09:46 +00:00
Dalai Felinto
32b23b9f74 Cucumber, first batch of merge - UI changes and custom exit key
---------------------------------------------------------------
This was a test drive to see how painful the merge will be.
Next batches are:
- use desktop option for fullscreen
- multisampling option
- bullet collision mask
- python
- storage (vbo, dl, ...)
- lighting

[lighting still needs review]
[python could use review, although it should be straightforward]
[storage should be tested more I think]


Merged /branches/soc-2011-cucumber:r
36991,37059,37157,37416,37497-37499,37501,37522,39036,40593

36991:
==UI==
* Made some options available in Blender Game that were only available in Blender Render (camera resolution, animation fps)
* Created a panel for the embedded player
* Renamed the FPS option for the standalone player to Refresh Rate
* Moved framing options to display
* Made a button to launch the blender player from within blender (only tested on windows for now)

37059:
==UI==
* Added the option to change the exit key for the BGE. The UI currently just sets a number, and this feature most likely does not work for blenderplayer yet. More work on this to come.
* Removed the physics settings from the scene panel for the BGE.
* Added an Add menu in the logic brick header.

37157:
Making the bake options available in Blender Game

37416:
Making the exit key UI element accept key presses instead of numbers. It still does not work for the Blenderplayer, and it does not limit the input to key presses (other events don't work for exiting)

37497:
Some more work on getting the exit key to work in the Blenderplayer.
Input is now restricted to keyboard events only for the exit key UI.
37498:
Some clean up from the last commit.
The exit key setting affects the Blenderplayer now.
37499:
Cleaning up some duplicate code. Now the reverseTranslateTable for converting blender key codes to ketsji key codes is only defined in BL_BlenderDataConverter.
37501:
Centralizing the exit key methods to the keyboard devices. This should make it easier to get exit key control to the python API.

[37517: committed previously]

37522:
Moved control of the exit key away from the keyboard devices, and moved it to ketsjiengine.
Added setExitKey and getExitKey to the python API

39036:
A couple of the doversions were in the wrong spot. This should fix some issues with the exit key not being set.
[not committed entirely, see below]]

40552: space_logic.py (* fixed an error in space_logic.py *)

40593:
launch blenderplayer from ui not working in OSX fix - by Daniel Stokes and me



########################################################
code left behind (to be included in next commit):
########################################################
		{
			/* Initialize default values for collision masks */
			Object *ob;
			for(ob=main->object.first; ob; ob=ob->id.next)
				ob->col_group = ob->col_mask = 1;
		}
2011-12-20 03:11:56 +00:00
Campbell Barton
efb4eff353 svn merge ^/trunk/blender -r42722:42742 2011-12-20 01:33:14 +00:00
Campbell Barton
71ce197bbb patch [#28094] New equirectangular world texture mapping option 2011-12-19 23:52:17 +00:00
Campbell Barton
2457d4f5ab svn merge ^/trunk/blender -r42680:42722 2011-12-19 10:40:48 +00:00
Lukas Toenne
5f6bd44c82 Generalized node groups for Cycles.
This allows group nodes inside other group nodes in cycles and makes the
code more generic for all possible cases, like direct group
input-to-output links and unused group sockets.

Previous code tried to connect external nodes and internal group sockets
by following links until a "real" node input/output. This quickly
becomes complicated in corner cases as described above and can lead to
unexpected behavior when the group socket is of a different type than
the internal/external sockets, but that conversion is skipped.

The new code uses the concept of "proxy nodes" similar to what the new
compositor does. Each group socket is replaced with a proxy node with a
single input and output, to which other nodes in the same tree and
internal nodes can link to. After all groups have been expanded in the
graph, these proxy nodes are removed again, adding converter nodes if
necessary.
2011-12-18 15:34:06 +00:00
Campbell Barton
8ed5fdde1d - remove rna access to deprecated sequencer attributes x/y offset & zoom.
- Object.to_mesh was still using deprecated colbits variable (object material wouldnt work for any material after 16)
- dont set colbits when setting material slot anymore.
2011-12-18 09:36:47 +00:00
Campbell Barton
5c6ee6b523 svn merge ^/trunk/blender -r42670:42680 2011-12-17 02:41:53 +00:00
Campbell Barton
db6cb30941 svn merge ^/trunk/blender -r42669:42670 2011-12-16 23:50:55 +00:00
Dalai Felinto
2a6fdbcccd Cycles Gamma Node
Node specially useful for Texture correction.

This is also a nice example of a simple node made from scratch in case someone wants to create their custom nodes.
Review by Brecht.
2011-12-16 20:35:06 +00:00
Brecht Van Lommel
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
Campbell Barton
862dc635ed svn merge ^/trunk/blender -r42617:42655 2011-12-15 23:59:02 +00:00
Antony Riakiotakis
6ccc605660 Bicubic bump map filtering.
This commit introduces bicubic bump map capabilities for the viewport for OpenGL 3.0+ capable GPUs. 

To use the functionality change the bump mapping method to "best quality"
Previous "best quality" setting becomes "medium quality" now.
For non OpenGL 3.0 GPUs this becomes the same as "medium quality"

Also:
* added tooltip descriptions to the bump method settings.
* modified the shader to ommit extraneous matrix multiplications for matrices already provided by OpenGL.

Bicubic shader by Morten Mikkelsen. Thanks a lot!

Oh...and FIRST!
2011-12-15 13:58:09 +00:00
Sergey Sharybin
3f81d010e3 Free run no gaps time code implementation
This commit adds new timecode type which counts frames in gapless mode (counting
actually decoded frames instead of using pts to find frame number) which might
resolve issues with files which have got broken or incorrect base time value stored
in the header.

This timecode allows to deal with movies from #29388: Abnormal frame length on MP4 files
2011-12-15 12:18:09 +00:00
Campbell Barton
3d5330f789 vertex group changes,
use more api functions more (some vertex group editing functions were copied about), also make some functions int oapi calls.

- remove defgroup_find_index(), use BLI_findlink instead since they both work the same way.
- move static function getNearestPointOnPlane() to BLI_math api function closest_to_plane_v3()
- ED_vgroup_give_parray() added option to return an array where unselected verts are NULL (simplifies code & works for lattice when it didn't before).
- more consistant error checking of ob->actdef.
2011-12-14 21:08:08 +00:00
Campbell Barton
a3bdb2d825 svn merge ^/trunk/blender -r42586:42617 2011-12-14 00:30:31 +00:00
Joshua Leung
ccd916e100 Small typo fix for tooltip of FModifier.blend_out
Cheers to "Lockal" for finding this one!
2011-12-13 10:15:14 +00:00
Campbell Barton
6254cc1c70 2 new bevel options for the operator and the modifier.
* even offset, uses same shell distance method as solidify to give even with beveled faces.
* distance offset, this is mostly for compatibility with the modifier in trunk which uses the bevel width as a distance rather then a percentage. at the moment this is awkward for the operator since it makes percent act differently where the 0-1 range doesnt make sense.

still need to bring back more options from trunks bevel modifier.
2011-12-13 09:57:19 +00:00
Campbell Barton
8115753fd2 svn merge ^/trunk/blender -r42564:42586 2011-12-12 21:01:39 +00:00
Sergey Sharybin
2a426d3eff Fix #29574: Strange crash using translated Blender
Description can be NULL for properties like enum items. Just added NULL-check here
2011-12-11 15:42:39 +00:00
Dalai Felinto
2da7066caa SCA: Scene Actuator text error
copy+paste bug when creating the rnas
2011-12-11 10:39:41 +00:00
Campbell Barton
5f6ff0f412 svn merge ^/trunk/blender -r42550:42564 2011-12-11 01:06:43 +00:00
Campbell Barton
3998e2878b delta scale default was still left at 0.0 2011-12-11 00:01:04 +00:00
Sergey Sharybin
e9a0a42dd3 Fixed for movieclips tag function which was tagging wrong list
Pointed out by Lockal, thanks!
2011-12-10 13:54:51 +00:00
Campbell Barton
65f3b93f14 svn merge ^/trunk/blender -r42521:42550 2011-12-10 05:38:00 +00:00
Campbell Barton
2ba8b81949 remove redundant cases. no functional change. 2011-12-09 01:27:59 +00:00
Campbell Barton
980e68175b svn merge ^/trunk/blender -r42495:42516 2011-12-08 17:32:37 +00:00
Brecht Van Lommel
edcc68b3d0 Fix #29547: missing units for some curve properties, patch by M.G. Kishalmi. 2011-12-08 14:26:46 +00:00
Campbell Barton
ea6de7626e removed some bmesh todo comments which are not needed and minor edits on previous commit. 2011-12-08 00:28:42 +00:00
Campbell Barton
7bc3eeb707 bmesh todo, add UV loop flags pin & select 2011-12-08 00:18:57 +00:00
Sergey Sharybin
5310ee5e2c Reorder options in refine menu + fixed typo
Patch by Sebastian Koenig, thanks!
2011-12-07 18:51:43 +00:00
Campbell Barton
b245dfbc06 svn merge ^/trunk/blender -r42466:42495 2011-12-07 18:29:21 +00:00
Sergey Sharybin
d0c327c81c Fix #29432: Marquee Select Bug
Moved tweak threshold value to user preferences

This threshold might be needed to be tweaked when working with tables, i.e.
to prevent tap+slight movement be treated as tweak event.
2011-12-07 09:55:37 +00:00
Campbell Barton
35e80c5544 svn merge ^/trunk/blender -r42439:42466 2011-12-06 18:50:45 +00:00
Brecht Van Lommel
b8cc575ee3 Fix related to #29513: materials using nodes will output passes from the active
material node. This is a confusing system, but two features were missing from
2.4x that made this at least a bit more clear:

* The top right icon in the node now shows brighter again for the active node.
* Setting a material datablock in a node makes that node active.
2011-12-06 16:04:45 +00:00
Campbell Barton
26db98293f Quiet annoying warning:
Warning! Tesselation uvs or vcol data got out of sync, "had to reset!

This would happen on every editmode edit with UV's and wasn't too reassuring that blender was handling uvs/vcols correctly.

From looking into the problem I found that creating the undo mesh would act as if it was tessellating the existing mesh each time and complain that the data was out of sync, when infact the mesh was just created and being filled in.

Also, allocating uv and vcol customdata arrats for tessfaces isn't needed for undo mesh, so save some memory and dont allocate these in the first place.
2011-12-06 09:28:25 +00:00
Campbell Barton
d97f88d278 svn merge ^/trunk/blender -r42426:42439 2011-12-05 17:54:33 +00:00
Brecht Van Lommel
72827ee531 Fix #29507: cycles rendering of metaball animations not working. 2011-12-05 15:57:57 +00:00
Campbell Barton
22a1ad61f9 svn merge ^/trunk/blender -r42372:42416 2011-12-04 18:39:19 +00:00
Bastien Montagne
937c5494c4 A (hopefully last) bunch of fixes and tweaks to UI label and messages (found while translating in french). 2011-12-04 17:36:13 +00:00
Sergey Sharybin
d261623800 Camera tracking: merge hybrid tracker from tomato branch
Comment from Keir's commit:

Add a new hybrid region tracker for motion tracking to libmv, and
add it as an option (under "Hybrid") in the tracking settings. The
region tracker is a combination of brute force tracking for coarse
alignment, then refinement with the ESM/KLT algorithm already in
libmv that gives excellent subpixel precision (typically 1/50'th
of a pixel)

This also adds a new "brute force" region tracker which does a
brute force search through every pixel position in the destination
for the pattern in the first frame. It leverages SSE if available,
similar to the SAD tracker, to do this quickly. Currently it does
some unnecessary conversions to/from floating point that will get
fixed later.

The hybrid tracker glues the two trackers (brute & ESM) together
to get an overall better tracker. The algorithm is simple:

1. Track from frame 1 to frame 2 with the brute force tracker.
   This tries every possible pixel position for the pattern from
   frame 1 in frame 2. The position with the smallest
   sum-of-absolute-differences is chosen. By definition, this
   position is only accurate up to 1 pixel or so.
2. Using the result from 1, initialize a track with ESM. This does
   a least-squares fit with subpixel precision.
3. If the ESM shift was more than 2 pixels, report failure.
4. If the ESM track shifted less than 2 pixels, then the track is
   good and we're done. The rationale here is that if the
   refinement stage shifts more than 1 pixel, then the brute force
   result likely found some random position that's not a good fit.

svn command used: svn merge -r 42375:42376 -r 42377:42379 ^/branches/soc-2011-tomato
2011-12-04 13:26:11 +00:00
Campbell Barton
3fdc28b736 add a new object member to store the dsize, since with my recent commit broke forward compatibility. now the new values are copied into 'dscale' and existing ones remain.
this is annoying since now we have dsize and dscale, will look into a way to deprecate struct members next.
2011-12-04 03:35:54 +00:00
Campbell Barton
15ad39e684 svn merge ^/trunk/blender -r42303:42329 2011-12-02 01:01:07 +00:00
Dalai Felinto
1936b31cd0 renaming BooleanProperty to BoolProperty (rna structs shouldnt affect scripters)
Talked with Brecht and Campbell and they both agreed that bpy.types should match bpy.props
In the ideal world we would rename bpy.props to BooleanProperty. This would break scripts though. So we go for a compromise and at least have some consistency.
2011-12-01 22:08:42 +00:00
Andrew Wiggin
fbdff29c7e Fix for RNA_warning crashing on MSVC release builds
MSVC is not C99-compliant, but with the macro as it was, the "args" part was consuming and dropping one of the params, so the format string wanted N extra args, and there were only N-1... boom, crash! Without "args" this works correctly (checked on MSVC10 release build)
2011-12-01 18:38:03 +00:00
Andrew Wiggin
5983bbe3c9 Fix for [#29472] ctrl F in edition causes crash
MSVC is not C99-compliant, but with the macro as it was, the "args" part was consuming and dropping one of the params, so the format string wanted N extra args, and there were only N-1... boom, crash! Without "args" this works correctly (checked on MSVC10 release build)
2011-12-01 18:35:45 +00:00
Campbell Barton
9e5b28cd42 svn merge ^/trunk/blender -r42261:42290 2011-11-30 09:31:11 +00:00
Sergey Sharybin
377d5232d4 Rename Movie to Movie Clip source for background image 2011-11-30 05:34:32 +00:00
Brecht Van Lommel
db29fd4cd1 Fix #29393: operator preset compatibility issue due to renaming property to
avoid c++ keyword conflict. Added property back now duplicated, code generator
will avoid the conflict and this should keep things compatible.
2011-11-29 21:23:58 +00:00
Dalai Felinto
5763e6ce85 option to disable/enable individual background images
*** use-case:
"I have 10 reference images that overlap each other and every time I want to see one, I need to change the transparency of all the others.
therefore it would be nice to have a little button by each menu to allow enable/disabling individual background images"

To avoid subversioning bump I created a define that is negative (DISABLED) and of course a rna that is a boolean_negative.
Talked with Campbell and he actually prefers this way over do_version, so there it goes.
2011-11-29 21:05:18 +00:00