Commit Graph

3553 Commits

Author SHA1 Message Date
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
71ce197bbb patch [#28094] New equirectangular world texture mapping option 2011-12-19 23:52:17 +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
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
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
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
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
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
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
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
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
3998e2878b delta scale default was still left at 0.0 2011-12-11 00:01:04 +00:00
e9a0a42dd3 Fixed for movieclips tag function which was tagging wrong list
Pointed out by Lockal, thanks!
2011-12-10 13:54:51 +00:00
2ba8b81949 remove redundant cases. no functional change. 2011-12-09 01:27:59 +00:00
edcc68b3d0 Fix #29547: missing units for some curve properties, patch by M.G. Kishalmi. 2011-12-08 14:26:46 +00:00
5310ee5e2c Reorder options in refine menu + fixed typo
Patch by Sebastian Koenig, thanks!
2011-12-07 18:51:43 +00:00
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
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
72827ee531 Fix #29507: cycles rendering of metaball animations not working. 2011-12-05 15:57:57 +00:00
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
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
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
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
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
377d5232d4 Rename Movie to Movie Clip source for background image 2011-11-30 05:34:32 +00:00
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
6a99ebcc72 Fixes and tweaks to RNA messages (found while translating in french).
Also moved traditional chinese to "almost done" part of translation menu.
2011-11-29 14:49:47 +00:00
424acd9676 Fixes and tweaks to RNA messages (found while translating in french).
Also setting better default values in WeightVGProximity modifier
2011-11-28 15:41:32 +00:00
7baaa08211 Fix #29389: cycles viewport render not updating on frame changes. This sort of
worked by accident before, because of flags that weren't cleared properly. Now
moved the call to update render engines into scene_update_* itself.
2011-11-28 14:55:35 +00:00
a3623a046b Camera tracking: merging tracking presets stuff from tomato branch
This commit implements:

- Configurable settings for newly creating tracks
  Now it's possible to set tracking algorithm and it's settings for
  all newly creating tracks including manual tracks creation and
  tracks creation by "Detect Features" operator.
- Moves margin, frames limit and adjust frame inside per-track
  settings.
  Was request from Francois for this.
- Adjust Frames replaced with menu called Pattern Match where it's
  possible to choose between matching pattern from keyframe frame
  or from previously tracked frame.
  Didn't see somebody used adjust frames values differ from 0 and 1,
  and this menu should make things more clear here/
2011-11-28 13:26:46 +00:00
985e77b723 accessing rna 'default_flag' attribute of a non enum-flag could crash. eg.
bpy.types.Modifier.bl_rna.properties["type"].default_flag

now check the default/default_flag match the enum property they are used with.
2011-11-27 14:13:10 +00:00
fdfd7045eb A bunch of fixes and tweaks in RNA messages, found while translating them in french... 2011-11-26 12:30:01 +00:00
6736576f6d replace FILE_MAXDIR + FILE_MAXFILE with FILE_MAX 2011-11-26 04:07:38 +00:00
a044f532ab Image save as operator 'BW' option wasnt working on some formats, now only show when its supported. 2011-11-25 03:47:34 +00:00
8651e6fba7 Fix part of #29310: secondary point caches for cloth did not get steps
set to correct default, was 10 when supposed to be 1.
2011-11-24 20:46:00 +00:00
fc77949b5d 2.6 Code removal:
* Deleted some #if 0 code, which was either already replaced or won't come back.
2011-11-24 17:19:38 +00:00
c62d33c540 patch: [#29382] Arbitrary Length Array Function Additions and Modifications
from Andrew Hale (trumanblending), with some edits to use these in mathutils.Vector added.

Added Functions:
- dot_vn_vn - Dot product of two arrays
- normalize_vn_vn - Normalize an array and store the result in a second array
- normalize_vn - Normalize an array inplace

Renamed Functions:
Some functions have been renamed to make them consistent with the naming conventions used by fixed length array functions.
- fill_vni to fill_vn_i
- fill_vn to fill_vn_fl
2011-11-24 04:12:16 +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
28fb329419 minor changes
- avoid duplicate image enum definitions.
- move image UI format & bw/rgb/rgba onto 1 line.
- add 'make config' convenience target to run ccmake or cmake-gui
2011-11-23 17:14:29 +00:00
85497e35d0 Added method clear to most of collections which supports new/remove.
This method not added to animation-specific structures yet/
2011-11-23 16:12:11 +00:00
0f3b1d23de MSVC 2005 and higher supports variable length macroses, so RNA_warning can report
warnings in nicer format even on msvc now.
2011-11-23 15:39:29 +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
44076963ff Some Dynamic Paint ui message fixes.
Thanks to Lockal (irc) for noticing these.
2011-11-22 18:18:16 +00:00
470cfd4aeb 2.6 Various code cleanup:
* Removed some old code for image packing, done via Operators now.
* Removed some comments.
2011-11-22 17:43:32 +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
743d2f8c0f rename image type defines to be less ambiguous, also set BMP as not supporting alpha (it reads but cant write) 2011-11-22 00:35:26 +00:00
6bab3b0179 More UI messages fixes and tweaks (found while translating in french). 2011-11-22 00:14:59 +00:00
6d6f1b0b4d display quality for avijpeg, name BKE_imtype functions more sensibly 2011-11-22 00:06:54 +00:00