Commit Graph

2052 Commits

Author SHA1 Message Date
deec4ce0bc Code Cleanup: avoid double promotion. 2012-02-04 06:55:29 +00:00
5c9ad8653a Fix #29921: render rasterization error in a corner case, only happened on 32bit
builds because of extended float precision, slightly tweaked code to avoid that,
so that it works the same as on 64bit.
2012-02-02 21:46:11 +00:00
01d0e279db Fix related to #30053: crash rendering scene strips without a scene (due to missing library). 2012-02-02 13:21:38 +00:00
40beecea8f Fix #30026: errors rendering material with ambient 0 and AO/env/indirect light.
It would skip rendering the latter if ambient was 0, however this is not actually
used in adding the contribution from these.
2012-01-30 19:47:30 +00:00
2e9ae40aaf Fix #29960: fields option should not be used for external engine rendering. 2012-01-26 14:55:46 +00:00
f99343d3b8 Cycles: Render Passes
Currently supported passes:
* Combined, Z, Normal, Object Index, Material Index, Emission, Environment,
  Diffuse/Glossy/Transmission x Direct/Indirect/Color

Not supported yet:
* UV, Vector, Mist

Only enabled for CPU devices at the moment, will do GPU tweaks tommorrow,
also for environment importance sampling.

Documentation:
http://wiki.blender.org/index.php/Doc:2.6/Manual/Render/Cycles/Passes
2012-01-25 17:23:52 +00:00
cd4123e1db use inline BLI_math functions for dot product and length calculation. 2012-01-22 17:20:37 +00:00
f0fc8c22bb Fix #27120: Bake to image used for rendering glitch (bake feedback loop)
Detect feedback loop and do not bake to images detected in this loop and show
nice warning message in such cases.

It's a way which wouldn't overcomplicate code trying to duplicate images and so
without real benefit.
2012-01-20 07:43:46 +00:00
a87c5eb52c use color conversions functions in more places.
also add rgba_float_to_uchar, rgba_uchar_to_float
2012-01-19 10:04:51 +00:00
4786541285 add utility functions linearrgb_to_srgb_uchar4,
linearrgb_to_srgb_uchar3, was being done inline.
2012-01-19 08:22:23 +00:00
7162ca5be7 Fix #29922: NaN pixels due to bump map in degenerate case. 2012-01-18 22:36:19 +00:00
0d5595befb add utility function to BLI_math_color - rgb_to_luma, rgb_to_luma_byte, also use rgb_to_grayscale in more places. 2012-01-14 17:14:23 +00:00
0863575816 tag unused function args in raytrace code. 2012-01-14 10:08:47 +00:00
74aede4d71 Fix #29824: Error writing frame if 3D scene starts after first frame of animation and output is H264
Issue was caused by incorrectly set PTS value frames came form Scene strip renderer.
This value used to be calculated from RenderData current and start frame which
lead to non-uniformuly counting which totally confuses encoder.

Switch append_avi and append_ffmpeg to use current frame from rendering scene
(which was already passing to this functions and was used mostly for logging)
and start frame of rendering scene (it's new parameter added). This allowed to
calculate correct PTS value easily and get rid of global static sframe variable
in writeavi.c file.
2012-01-13 09:20:13 +00:00
c4473dc51c added comment; zbuffillGLinv4 and zbuffillGL4 are identical except for a 2 lines.
no functional changes.
2012-01-12 07:10:44 +00:00
e26cd10b7a Fix #29836: stress not working as input for displacement texture. Previously it
would be computed after displacement, but I don't think this made much sense.
2012-01-11 16:21:17 +00:00
51bada696f Longer names support for all ID and other object names
This commit extends limit of ID and objects to 64 (it means 63 meaning
characters and 1 for zero-terminator). CustomData layers names are also
extended.
Changed DNA structures and all places where length constants were hardcoded.

All names which are "generating" from ID block should be limited by MAX_ID_NAME-2,
all non-id names now has got own define called MAX_NAME which should be used all
over for non-id names to make further name migration stuff easier.

All name fields in DNA now have comment with constant which corresponds to
hardcoded numeric value which should make it easier to further update this
limits or even switch to non-hardcoded values in DNA.

Special thanks to Campbell who helped figuring out some issues and helped a lot
in finding all cases where hardcoded valued were still used in code.

Both of forwards and backwards compatibility is stored with blender versions newer
than January 5, 2011. Older versions had issue with placing null-terminator to
DNA strings on file load which will lead to some unpredictable behavior or even
crashes.
2012-01-11 08:51:06 +00:00
0239333f0c fix error building without openexr 2012-01-05 23:36:03 +00:00
f6620d0097 Fix #29723: wrong IOR for raytraced refraction after reflection inside mesh,
patch by Juha Maki-Kanto.
2012-01-05 22:41:56 +00:00
de4befb075 Code refactoring: split render result related functions into separate file. 2012-01-05 17:50:09 +00:00
829216325d Fix #29764: Crash when border rendering in sequencer. (Not Cycles related)
Sequencer render context should be as large as the whole frame when rendering
using border without clipping.

Can be implemented in more clear way but it'll require more global refactoring.
2012-01-04 15:28:03 +00:00
3b8404ac53 derivative maps must take into account that texture scales can be negative 2012-01-03 22:27:30 +00:00
aa1325ef55 calculate factor before using MAX2 macro 2012-01-03 22:18:52 +00:00
5fbd6223c5 derivative maps were not working correctly with UV scale (the texture setting size) 2012-01-03 22:09:22 +00:00
dcdcaf25ba fix [#29761] Texture painting with interpolation ignores use alpha
reporter - Shawn Zilbert (enigmatic) included patch.
2012-01-03 02:26:32 +00:00
1fc26516ea Fix #29746: cycles crash with border render. 2012-01-02 16:20:18 +00:00
6c10080d24 Fix: Material "Vertex Color Light" option didn't apply vertex alpha. 2011-12-31 10:46:21 +00:00
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
5ed0cd4ad7 possible fix for [#29708] Crashes when Rendering Cross Dissolve + XVID Codec
was calling memcpy with both src and dst args were the same pointer.
2011-12-29 13:12:40 +00:00
b9ff5840a6 Code refactoring: add unified image buffer functions for doing float => byte,
byte => float, float => float, byte => byte conversions with profile, dither
and predivide. Previously code for this was spread out too much.

There should be no functional changes, this is so the predivide/table/dither
patches can work correctly.
2011-12-28 13:29:33 +00:00
397d7d949f remove unneeded casts from 'unsigned int' to 'int' 2011-12-27 03:54:23 +00:00
4d7c44717a Code cleanup: fix some clang static checker warnings. 2011-12-22 20:29:44 +00:00
81c635a3bb Fix #25775: crash using border render from external render engines, merging
back the tile used wrong offsets.
2011-12-20 12:25:18 +00:00
71ce197bbb patch [#28094] New equirectangular world texture mapping option 2011-12-19 23:52:17 +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
490536561d reenabled auto scale for derivative maps 2011-12-15 15:48:44 +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
82b9e4d16f verify existence of dm 2011-12-10 01:00:12 +00:00
965c287630 fixes scale on derivative maps 2011-12-09 23:26:06 +00:00
f8ccc111cf Tweak related to #29545: show info message if no frames are written in animation
render due to disabled Overwrite option.
2011-12-08 14:21:55 +00:00
9c5ad4fb60 remove old renderer struct member, was only used for setting yafray but was still being checked in a few places, 2011-12-04 16:22:53 +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
06c3d5bd09 de-duplicate dominant axis calculation, exact same checks were in 6 different places.
added function:  axis_dominant_v3(...)
2011-12-02 22:14:20 +00:00
6403858ad9 fix [#29111] Wrong application of delta scale
apply delta scale as a multiplier & do-versions on existing files.

- bumps subversion to 2.60.6
2011-11-29 21:13:37 +00:00
8c01369935 Fix #29028: dupli objects missing speed vectors. Check for avoiding creation of
speed vectors was checking object instead of object instance layer, which is the
one that is actually used for render layer checks.
2011-11-29 15:46:33 +00:00
93f455dab6 Fix #29411: displacement texture not working anymore, seems part of delta
scale patch got accidentally committed in revision 41485, reverted now.
2011-11-29 12:12:12 +00:00
53b8c63904 Superficial changes for bmesh bevel to sync with bmesh branch, also noticed length comparison can be done without sqrt for baking. 2011-11-28 03:01:06 +00:00
6f1473fb7c Fix #29406: show Sequence as render layer when rendering from sequencer, to make
it more clear what was rendered.
Fix #29407: external engine api doesn't support full sample yet, would give too
dark render result.
2011-11-26 18:33:31 +00:00
af7288c407 minor edit - weight_to_rgb() and ramp_blend() now take a float vector rather than 3 float pointers.
also make particle draw use a float vec.
2011-11-26 03:13:54 +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