coordinate, only noticable in Panel versions of picker
- the fix to give Transform properties new name "Paint" can't
work with this code... this due to fact that panel positions are saved
in files or looked up on re-open based on their names. Giving the Panel
a new new name then causes it jump to another position, and back on end
of painting.
Needs to be solved in another way. Not feasible for 2.34...
that draws the XOR border as well, this prevents unnecessary updates, and
makes sure all drawing uses a single glFlush()
Should solve redraw errors as reported by Goofster
- making Blender not warn about 2.34 scripts, as Ton requested. Will turn this on again before release;
- small fix to the new helpwebsites and helpsystem additions in BPy_menus.c, should solve problem reported by Jean-Luc Peurière about empty menus on startup;
- updated version info of a few scripts to 2.34, since they use recently added bpython api functions.
Note to users: even when you only want reflection caustics (metals/mirrors)
you have to set a IOR value higher than 1, similar to glass materials.
The higher, the brighter the caustics.
That should be it...
Thanks to Willian for integrating the webbrowser module.
Some of the URLs (Python reference, Release notes) will
need to be updated upon release. These are contained in
http://www.blender3d.org/Help/index.php
So removed 'ray shadow' button for that case.
So what I said in the previous commit is not true, with halo for
spots enabled, shadows are always cast, and cannot be disabled, sorry...
Extended the range of the depth and cdepth parameters as reqested by leope.
Bumpmapping should now be a bit more similar to the Blender render.
Added support for all remaining lightsources in yafray, tried to make use of
as much of the existing Blender parameters as possible.
Blender Lamp: added switch to enable rendering with shadowbuffer ('softlight' in yafray).
All other parameters are similar to the Blender settings, for yafray both the
bias parameter and the shadowbuffer size can be lower than equivalent Blender
settings, since the yafray buffer is floating point. Remember that 6 shadowmaps
are created in this case, so can use quite a bit of memory with large
buffer settings.
When 'ray shadow' is enabled for this lamp type, it is possible to set a light
radius to create a spherical arealight source ('spherelight' in yafray),
when this is 0, it is exported as a pointlight instead.
Blender Spot: as in Blender now supports 'halo' rendering.
Halo spots always use shadowbuffers, so when enabled the buttons for shadowmap
settings will appear. The 'ray shadow' button can still be used to disable
shadows cast onto other objects, independent of halo shadows.
One thing to remember, halo's don't work with empty backgrounds, something must
be behind the spotlight for it to be visible.
And finally, the photonlight:
probably the most confusing (as more things related to yafray), the photonlight
is not a real lightsource, it is only used as a source to shoot photons from.
Since indirect lighting is already supported (and looks better as well)
only caustics mode is supported.
So to be able to use this properly other lightsources must be used with it.
For the photonlighting to be 'correct' similar lightsettings as for the 'source'
light are needed.
Probably the best way to do this, when you are happy with the lighting setup
you have, and want to add caustics, copy the light you want to enable for
caustics (shift-D) and leave everything as is, then change the mode to
'Photon'.
To not waiste any photons, the photonlight behaves similar to the spotlight,
you can set the width of the beam with the 'angle' parameter. Make sure
that any object that needs to cast caustics is within that beam, make
the beam width as small as possible to tightly fit the object.
The following other parameters can be set:
-photons: the number of photons to shoot.
-search: the number of photons to search when rendering, the higher,
the blurrier the caustics.
-depth: the amount of photon bounces allowed, since the primary use is for
caustics, you probably best set this to the same level as the 'ray depth'
parameter.
-Blur: this controls the amount of caustics blur (in addition to the search
parameter), very low values will cause very sharp caustics, which when used
with a low photonnumber, probably lead to only some noisy specks being rendered.
-Use QMC: Use quasi monte carlo sampling, can lead to cleaner results, but also
can sometimes cause patterns.
Since the photonlight has no meaning to Blender, when using photonlights and
switching back to the internal render, the light doesn't do anything, and no
type button will be selected. The lightsource can still be selected, but unless
switching to yafray, no parameters can set.
Apologies to Anexus, I had no time to really do something with your code,
I'll still look at it later, to see if I can improve anything in my implementation.
- Campbell Barton updated his sel_same.py script;
- Added to Mesh scripts a call to Window.EditMode(0) to leave editmode before changing meshes.
BPython:
- small doc fixes / updates;
- added a call to undo_push_mesh inside Window.EditMode(0).
Mesh scripts could change the mesh but not the editmesh -- that would then overwrite the changed mesh. Made all mesh scripts leave edit mode before changing a mesh.
Plus: moved particle interaction and effect buttons back to a single
Object context. The proposed solution (sub context) has workflow issues,
(adds another click (no hotkey) to view settings)
whilst almost all Object buttons nicely fit in single view still.
This was on todo since first particle commit, actually the idea was to
move particle related issues to a special sub-context, but leave the
effects themselves in the Object main menu. Splitting off Particles from
the Effect system isn't in the scope of what is feasible now.
Also note; the current panel 'particle interaction' actually should be
a generic 'forces and collision' panel, since it's also relevant for
soft body feature (WIP)... that can be changed later.
while working there added 3d cursor there as well.
I admit it isn't the best location ever, but let's do the threaded
discussions after 2.34 is out. :)
delays and lotsof redraw events for the desktop, it also made it impossible
to drag a renderwindow to a desired position.
Now it only re-opens on render size changes. Maybe enables to have the
window permanent on 2nd monitor for extended desktops?
Note; the 'pref position' preset in F10 still works, but only on window
open of course.
Caused by commit Kester 7 weeks ago, adding sound actuator always crashes
when no sounds have been loaded. He forgot to put a MEM_Free within the
brackets. :)
* Made the shaded ends of popup menus the right shape,
when the button is aligned, connected to another button.
Found by desoto, fix by desoto
* Made the icons inside icon buttons scale up with zoom,
rather than just sit down in the bottom-left corner. The
scaling up is rather ugly - consider this a temporary
measure until we can find a nicer solution, on the
backburner for 2.35. Found once again by Bugmaster
Desoto, fix by ton.
old files still use the old fast OSA, and when you want a specific
material to have specular/shader/texture AA you can set this individual.
When rendering ray_mir or ray_transp or ray_shadow the new OSA will be
effective by default however.
Still todo; make this switch work for transparant faces and unified...
if video card is open GL accelerated and has 16 Mo or more
start window in maximized mode wich is a full screen mode
but keeping access to other windows and sytem menu items
older comps start as usual
Problem was in calculation of oversampling vectors for correct AA. With
the new AA method, this is less necessary, so the code now doesnt use
mipmapped or filtered images when it is refracted. For reflected rays it
does still use the filter though, there the error is hardly noticable.
For all tests and report .blend files it looks much better.
However, a real mathematical solution is preferable still.
whether redraw was needed. This shows on (some) windows cards that the
button continuously keeps updating/flashing.
Since I can't test it here, please confirm :)
Important for everyone to know; buttons with event return code 0 pass on
the button event to other buttons. This was in yafray panels so, causing
buttons unwanted to be pressed when dragging sliders.
The official 'empty' event is B_DIFF, to denote that back and frontbuffers
are different, since the button was updated in front only with a press.
Alternative is B_NOP, which doesnt do anything.
This is another extreme old one; from before NaN days even!
Issue is that shadowbuffers have a bias to prevent faces shadowing itself.
To make bias smarter, code was added to adjust bias based on light angle.
This correction allowed a factor of 10 times smaller bias, being in many
cases much too strong, causing frontally lighted faces becoming too dark.
New correction only halves the bias on frontal light, which looks quite
more convincing and pretty.
Apparently appending or linking from other files didn't call a proper
do_version() patch to initialize new variables correctly. Was result of
the streamgluing stuff in NaN period... fixed.
- Ben Omari sent an update version of his DirectX8.py, Jean-Michel Soler updated his disp_paint.py and Campbell Barton contributed a new one: sel_same.py (for now it's in the UV menu). Thanks all, great scripts;
- small updates in some other scripts.
BPython:
- Finished wrapping radiosity functions for the Radio submodule;
- doc updates.
New objects were not created with correct 'ipowin' value, to denote the
default ipo to show. That caused sometimes wrong display with weird empty
menu button in header.
- now more than 31 channels possible for ipos
- added lotsa new channels all over
- Texture block has ipo now too
- recoded getname_ei functions
(Will ask nathan to give release log info when he's back!)