Commit Graph

99 Commits

Author SHA1 Message Date
Tamito Kajiyama
a8a2782d34 Merged changes in the trunk up to revision 51985. 2012-11-07 22:12:19 +00:00
Sergey Sharybin
759ea40787 Render engines: replace number of x/y tiles with tile size
Now tile size is setting up explicitly instead of using number of tiles.

This allows better control over GPU performance, where having tiles aligned
to specific size makes lots of sense.

Still to come: need to update startup.blend  to make tiles size 64x64.
2012-11-05 08:05:14 +00:00
Tamito Kajiyama
dd8e836067 Merged changes in the trunk up to revision 51853.
Conflicts resolved:
source/blender/blenloader/intern/readfile.c
source/blender/bmesh/operators/bmo_utils.c

This commit also includes a fix of a bug identified during the merge and committed in revision 51853.
Thanks Thomas (dingto) for the timely fix!
2012-11-04 02:22:56 +00:00
Thomas Dinges
61bc63799e UI Tweak:
* Use alignment for thread buttons in BI, same as in Cycles.
2012-11-04 01:05:25 +00:00
Tamito Kajiyama
5acd5d1497 Improvements of Freestyle GUI controls - Part 1.
This commit makes a set of fixes and improvements based on the results of
Freestyle branch review by Brecht.  The discussion thread is:
http://lists.blender.org/pipermail/bf-committers/2012-October/037927.html

* The Layers panel and Freestyle-related panels in the Render tab of the
Properties window were moved to the newly created Render Layers tab.
The idea is to separate per render layer rendering options into a distinct
Properties window tab, and use the existing Render tab to accommodate
per scene rendering options.

* The new Freestyle panel was added in the Render tab.  The panel header
contains a toggle button for globally enabling Freestyle, with the aim of making
Freestyle easier to find.  Those Freestyle options in the Post Processing panel
were also moved to the new panel. 

* GUI code was updated so that UI controls will be greyed out (instead of
being hidden) when Freestyle is disabled.  Additional UI changes were also
made to reduce space consumption.

* The list of line sets was moved from the Freestyle panel to the Freestyle:
Line Sets panel.

* Old ray-casting algorithms were removed from the UI.  Now only two
algorithms (culled and non-culled cumulative visibility detection algorithms)
are available, and the selection is done by the new "Culling" toggle button
within the edge detection options.
2012-10-28 16:09:51 +00:00
Tamito Kajiyama
55015daa43 Merged changes in the trunk up to revision 51448.
Conflicts resolved:
source/blender/blenkernel/CMakeLists.txt
source/blender/blenloader/intern/readfile.c
source/blender/editors/mesh/editmesh_tools.c
source/blender/makesrna/intern/rna_main_api.c
2012-10-20 16:48:48 +00:00
Campbell Barton
9fa36b12cc style cleanup: pep8 2012-10-08 08:28:05 +00:00
Tamito Kajiyama
e91f33101f Merged changes in the trunk up to revision 50956.
Conflicts resolved:
source/blender/editors/interface/resources.c
2012-09-30 13:16:55 +00:00
Brecht Van Lommel
e116d3a7be Color Management: move "Color Unpremultiply" option to Color Management panel
from the Shading panel, since it's about color space conversion for renders.
2012-09-27 12:44:52 +00:00
Tamito Kajiyama
a42ba82f63 Merged changes in the trunk up to revision 50829.
Conflicts resolved:
source/blender/blenloader/intern/readfile.c
source/blender/render/intern/source/convertblender.c
source/blender/render/intern/source/pipeline.c

Also addressed code inconsistency due to changes in the trunk revision 50628 (color
management with OCIO) and 50806 (UV project material).  OCIO-related changes are marked
OCIO_TODO as in some other files modified in revision 50628.
2012-09-23 18:50:56 +00:00
Brecht Van Lommel
bd4de709fd UI: cosmetic tweak to render/animation/play buttons, align, change icon. 2012-09-17 10:54:50 +00:00
Sergey Sharybin
a73dd3476e Color Management, Stage 2: Switch color pipeline to use OpenColorIO
Replace old color pipeline which was supporting linear/sRGB color spaces
only with OpenColorIO-based pipeline.

This introduces two configurable color spaces:

- Input color space for images and movie clips. This space is used to convert
  images/movies from color space in which file is saved to Blender's linear
  space (for float images, byte images are not internally converted, only input
  space is stored for such images and used later).

  This setting could be found in image/clip data block settings.

- Display color space which defines space in which particular display is working.

  This settings could be found in scene's Color Management panel.

When render result is being displayed on the screen, apart from converting image
to display space, some additional conversions could happen.

This conversions are:

- View, which defines tone curve applying before display transformation.
  These are different ways to view the image on the same display device.
  For example it could be used to emulate film view on sRGB display.

- Exposure affects on image exposure before tone map is applied.

- Gamma is post-display gamma correction, could be used to match particular
  display gamma.

- RGB curves are user-defined curves which are applying before display
  transformation, could be used for different purposes.

All this settings by default are only applying on render result and does not
affect on other images. If some particular image needs to be affected by this
transformation, "View as Render" setting of image data block should be set to
truth. Movie clips are always affected by all display transformations.

This commit also introduces configurable color space in which sequencer is
working. This setting could be found in scene's Color Management panel and
it should be used if such stuff as grading needs to be done in color space
different from sRGB (i.e. when Film view on sRGB display is use, using VD16
space as sequencer's internal space would make grading working in space
which is close to the space using for display).

Some technical notes:

- Image buffer's float buffer is now always in linear space, even if it was
  created from 16bit byte images.

- Space of byte buffer is stored in image buffer's rect_colorspace property.

- Profile of image buffer was removed since it's not longer meaningful.

- OpenGL and GLSL is supposed to always work in sRGB space. It is possible
  to support other spaces, but it's quite large project which isn't so
  much important.

- Legacy Color Management option disabled is emulated by using None display.
  It could have some regressions, but there's no clear way to avoid them.

- If OpenColorIO is disabled on build time, it should make blender behaving
  in the same way as previous release with color management enabled.

More details could be found at this page (more details would be added soon):
http://wiki.blender.org/index.php/Dev:Ref/Release_Notes/2.64/Color_Management

--
Thanks to Xavier Thomas, Lukas Toene for initial work on OpenColorIO
integration and to Brecht van Lommel for some further development and code/
usecase review!
2012-09-15 10:05:07 +00:00
Tamito Kajiyama
44e4c5f831 Merged changes in the trunk up to revision 49797. 2012-08-12 00:09:57 +00:00
Campbell Barton
db6c4ba11e bring back the play option from 2.4x 2012-08-06 16:07:11 +00:00
Tamito Kajiyama
8a340981be Added the functionality to make a copy of the active modifier in the Parameter Editor mode.
Code contribution by flokkievids.  Thank you!
2012-08-02 20:30:23 +00:00
Tamito Kajiyama
40e3dfd3bd Fix for Freestyle-related UI components showing up in the Render buttons when Cycles is selected. 2012-08-01 20:14:27 +00:00
Tamito Kajiyama
9d2a957a0d Sphere radius and Kr derivative epsilon (removed in revision 43902) were recovered in the Parameter Editor mode.
Several users requested the recovery as the removal of the two parameters was considered over-simplification for advanced users.
As in the Python Scripting mode, the two parameters are in the "advanced edge detection options" section and disabled by default.

Also the lower limit of Kr derivative epsilon was changed from 0 to -1000 so as to permit a negative value.
2012-07-15 22:30:02 +00:00
Tamito Kajiyama
1f7ae143a2 Merged changes in the trunk up to revision 48227.
Conflicts resolved:
source/blender/blenloader/intern/readfile.c
source/blender/editors/space_file/filelist.c
2012-06-24 10:29:26 +00:00
Campbell Barton
98e6912480 style cleanup 2012-06-19 22:17:19 +00:00
Tamito Kajiyama
5f02b167d1 New options for specifying unit line thickness.
The Post Processing tab in the Render buttons has new Line Thickness options for
defining unit line thickness in two different modes as follows:

1. Absolute mode: The unit line thickness is given by a user-specified number
in units of pixels.  The default value is 1.

2. Relative mode: The unit line thickness is scaled by the proportion of the
present vertical image resolution to 480 pixels.  For instance, the unit line
thickness is 1 with the image height set to 480, 1.5 with 720, and 2 with 960.
2012-04-10 23:53:46 +00:00
Tamito Kajiyama
e94abda66d New options in the Parameter Editor mode for controling the position of stroke thickness.
The new options enable a better control on the position of stroke thickness with
respect to stroke backbone geometry.  Three predefined positions are:
* center: thickness is evenly split to the left and right side of the stroke geometry.
* inside: strokes are drawn within object boundary.
* outside: strokes are drawn outside the object boundary.
Another option called "relative" allows users to specify the relative position by a
number between 0 (inside) and 1 (outside).

The thickness position options are applied only to strokes of the edge types SILHOUETTE
and BORDER, since these are the only edge types defined in terms of object boundary.
Strokes of other edge types are always using the "center" option.
2012-04-07 17:28:09 +00:00
Tamito Kajiyama
910f04ca63 Merged changes in the trunk up to revision 44221.
Conflicts resolved:
release/datafiles/blender_icons.png
source/blender/blenkernel/intern/anim_sys.c
source/blender/blenloader/intern/readfile.c
2012-02-18 11:26:11 +00:00
Tamito Kajiyama
f1e3e0fff0 Rearranged the locations of edge type options within the Selection by Edge Type in the Parameter Editor mode.
A better use of screen space concerning this component was suggested by Light BWK through personal communications.
2012-02-16 22:08:11 +00:00
Campbell Barton
b765dd16e4 fix for typo 2012-02-13 12:57:46 +00:00
Tamito Kajiyama
b0d39d83b9 Unified "Ridge" and "Valley" into "Ridge & Valley" in the Parameter Editor mode.
The Valley edge type is merely an alias of Ridge in the present Freestyle implementation.
2012-02-05 12:50:01 +00:00
Tamito Kajiyama
29db9103e9 Reorganization of two view map construction parameters.
* Sphere radius and Kr derivative epsilon were removed from the
Parameter Editor mode.  Now sphere radius of 1.0 and Kr derivative
epsilon of 0.0 are used by default.  The rationale of the removal
is two-fold: little predictability and very minor artistic values.
The effects of these parameters are hard to estimate in advance,
which likely leads to a frustration of users due to repeated
trials and unpredicted results.  Therefore, the two parameters
are considered to have quite limited artistic values.  Proper
definitions of the two parameters more and less require the
knowledge of differential geometry and would not make sense to
most artists for which the Parameter Editor is intended.

* Sphere radius and Kr derivative epsilon are still available in
the Python Scripting mode, but now in an "advanced options" section
that is disabled and hidden by default.  This way new users are
properly warned, while expert users with specific technical needs
can enable these options if they want.  The same default values
mentioned above are used when the two parameters are disabled.
2012-02-05 11:37:39 +00:00
Tamito Kajiyama
68ae82bb47 Merged changes in the trunk up to revision 43585.
Conflicts resolved:
source/blender/editors/include/UI_resources.h
source/blender/editors/interface/resources.c
source/blender/makesrna/intern/rna_scene.c
2012-01-21 23:01:25 +00:00
Campbell Barton
391a214303 pep8 edits, also remove unused vars 2012-01-17 17:57:20 +00:00
Tamito Kajiyama
e0df491d1e Merged changes in the trunk up to revision 43404.
Conflicts resolved:
source/blender/python/SConscript
2012-01-15 23:13:12 +00:00
Campbell Barton
93cf1531d0 fix own bug [#29875] Due to operators now reusing there last-used settings, some UI options are more or less broken (esp. in shortcuts and menu entries)
also prefer *.select_all rather then *.select_inverse operators, since this is an option for select_all.
2012-01-14 06:30:27 +00:00
Sergey Sharybin
8197361f51 Move FFmpeg and QuickTime settings to own structure inside RenderSettings
rather than making all properties have ffmpeg_ and quicktime_ prefixes
2012-01-13 12:34:41 +00:00
Sergey Sharybin
8dcb1f4d12 Added Lossless Output option for h264 codec.
This will fix #26943: render image to video problem
2012-01-13 12:34:23 +00:00
Tamito Kajiyama
76a211d809 Merged changes in the trunk up to revision 43219.
Conflicts resolved:
source/blender/blenkernel/intern/scene.c
source/blender/blenloader/intern/readfile.c
source/blender/render/intern/source/pipeline.c
2012-01-08 11:57:53 +00:00
Thomas Dinges
33ba505ef4 Properties Window UI:
* Some tweaks to the stamp panel to make it more compact. 
* Remove "Stamp" Prefix for the color values, redundant info.
2012-01-05 23:49:57 +00:00
Tamito Kajiyama
f88501a44d Added two stroke geometry modifiers:
- 2D Offset: Adds two-dimensional offsets to stroke backbone geometry.
- 2D Transform: Applies two-dimensional scaling and rotation to stroke backbone geometry.
2012-01-04 00:23:34 +00:00
Tamito Kajiyama
cc3adc2202 Merged changes in the trunk up to revision 43038.
Conflicts resolved:
source/blender/makesdna/DNA_material_types.h
source/blenderplayer/bad_level_call_stubs/stubs.c
2011-12-31 21:09:26 +00:00
Brecht Van Lommel
d7d856a23d Color management: add "Color Unpremultiply" option for images and render settings.
For premultiplied alpha images, this makes any color space conversion for the image
or render output work on color without alpha multiplied in.

This is typically useful to avoid fringing when the image was or will be composited
over a light background. If the image will be composited over a black background on
the other hand, leaving this option off will give correct results.

In an ideal world, there should never be any color space conversion on images with
alpha, since it's undefined what to do then, but in practice it's useful to have
this option.

Patch by Troy Sobotka, with changes by me.
2011-12-30 14:17:11 +00:00
Tamito Kajiyama
0896a22723 Merged changes in the trunk up to revision 42902.
Conflicts resolved:
source/blender/editors/space_view3d/drawobject.c
source/blender/makesdna/DNA_mesh_types.h
source/blender/python/intern/bpy.c
2011-12-27 22:12: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
Tamito Kajiyama
32db495e50 Updates on the Parameter Editor mode:
* Added a new chain splitting option for dividing chains into pieces having
a given curvilinear 2D length.

* Rearranged the UI controls of chain splitting options according to the
actual order of processing.

* Made changes for converting each view edge into a chain in the case of
not using chaining.
2011-12-11 23:41:15 +00:00
Tamito Kajiyama
efc4341ee4 Merged changes in the trunk up to revision 42556.
Conflicts resolved:
source/blender/editors/space_view3d/drawobject.c
2011-12-10 20:54:43 +00:00
Campbell Barton
04464c6cf9 more minor py edits 2011-12-05 23:05:16 +00:00
Tamito Kajiyama
b6569ee4e7 Merged changes in the trunk up to revision 42116. 2011-11-26 13:11:55 +00:00
Campbell Barton
6e28ac2d7b pep8 edits and avoid naming conflicts with python builtins 2011-11-24 19:36:12 +00:00
Campbell Barton
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
Thomas Dinges
04fe6fc764 * UI Improvements for the uiTemplateImageSettings. 2011-11-22 17:14:47 +00:00
Campbell Barton
30fd1ab523 replace ImBuf.depth with ImBuf.planes to match ImageFormatData.planes & to avoid confusion with ImageFormatData.depth 2011-11-21 20:47:19 +00:00
Campbell Barton
0e2c8cdcdd move image settings into their own structure so the interface can be shared where image saving settings are needed.
currently file out node and render output share this struct & UI.
2011-11-21 20:19:58 +00:00
Tamito Kajiyama
1b8c14b453 Replaced the changes in revision 41810 with a better implementation
of copy/paste functionality.  Instead of making a copy of the active
line set, now the settings of the active line set are copied to and
pasted from a buffer.  This allows for copying and pasting line set
settings among different scenes and render layers.
2011-11-20 23:44:50 +00:00
Tamito Kajiyama
caeeb37601 Added a new operator in the Parameter Editor mode to make a copy
of the active line set.
2011-11-13 21:55:13 +00:00