Commit Graph

392 Commits

Author SHA1 Message Date
9b9c4184c8 misc nodes & editors: floats were being implicitly promoted to doubles, adjust to use floats.
+ minor update to demo_mode
2011-03-28 17:08:33 +00:00
6bc3b99016 Forgot to add to log of previous commit:
The purpose was to set a wait-cursor draw on 3d windows. I tried for
but it keeps failing... inside threads you can't do UI stuff. Needs
further thinking, probably something via jobs system.
2011-03-25 17:16:22 +00:00
11920f7880 Bugfix #26195
When rendering, during processing scene data, drawing in 3d window
is now locked. Can get extended to more areas in UI easily.

At least this solves all crashes with conflicting memory access in
render && 3d drawing. Deleting objects via operators or delete 
modifiers isn't locked yet.

Also fixed: crash on quitting a renderwindow when it was rendering.
2011-03-25 17:11:32 +00:00
e9005b985e remove some redundant vars, assignments & checks. 2011-03-19 05:06:06 +00:00
6559209dbf [#26482] Solidify / Animation Opengl render. no texture.
workaround for view3d datamask not being correct on opengl render.
2011-03-13 02:44:25 +00:00
44692c70ae Bugfix, irc report:
Pressing ESC on material icon preview changes made it stop updating
the icons. Was caused by default 'break' callback testing ESC and
not resetting it. Now it uses same break callback as other previews.
2011-03-11 17:59:40 +00:00
627c764e3c bug [#26329] Project Paint not working
we cant ensure that a requested buffer can be allocated so report opengl errors when failing to allocate the buffer (rather then printing to console).

this is common enough and generic error isn't too helpful to users.
2011-03-06 23:12:12 +00:00
c7fccc84bf use NULL rather then 0 for pointer assignments & comparison, modifier, imbuf & editors. 2011-03-05 10:29:10 +00:00
24fa1d1f04 Two additional fixes for node-tree + texture paint:
- "need exec" flag was cleared in wrong tree for preview renders
  (it should clear it in the copy, i did in original).
  This fixes projection paint on images with previews open
- Previews for nodes were copied always, now only for previews 
  invoked by node editor itself.
2011-03-04 12:59:09 +00:00
18afcbcb7d bugfix #26267
ImageWindow + 3D view texture paint + texture preview render + texture nodes.
Threading hell! But it works now :)
2011-03-03 18:53:07 +00:00
Nathan Letwory
95100afc12 doxygen: blender/editors tagged. 2011-02-27 20:29:51 +00:00
f01261d040 merge with/from trunk at r35190 2011-02-27 06:19:40 +00:00
38bd8dcf05 Bugfix #26221
Two bugs in one:

- Lukas commit monday for new group/socket handling accidentally removed
  to set socketype in stacks, which as used by (texture) nodes to detect
  whether value, color or vector had to be read.
  Result was that all texture nodes were rendering as B&W

- Old 2.5 bug: preview renders for texture nodes didn't call a 
  NodeEndExec function, which gave crashes on deleting nodes.

The change in interface_hanlers.c is only a comment to explain
how keymaps are being found.
2011-02-26 13:53:15 +00:00
962a4386bc Bugfix #26188
Having 2 or more windows open, a render in another window made the
other (active) window fail badly on F11 key (show render).

Now things should go smoothly. If a render is being shown in 
inactive windows, they get popped to the front nicely.
2011-02-23 15:52:05 +00:00
Nathan Letwory
5b607701a7 doxygen: prevent GPL license block from being parsed as doxygen comment. 2011-02-23 10:52:22 +00:00
d7bee4ce2c bugfix [#26156] Opening .blend files through OS ignores "Load UI" flag 2011-02-21 02:40:48 +00:00
2ef296dc4c bugfix [#26118] Getting 'Error Totblock' when using sub-properties from a PointerProperty
blender wasnt freeing ID-Properties when freeing the material copy.
Checked that this isnt a problem for other preview types - texture/world/lamp.
2011-02-21 02:07:26 +00:00
c30149991c Experimental option to build blender as a python module, rather then blender embedding python.
CMake build option WITH_PYTHON_MODULE, will build ./bin/bpy.so

This allows 'bpy' to be imported from python or other applications/IDE's which embed python, eg:
   python -c "import bpy ; bpy.ops.render.render(write_still=True)"

This runs in background mode and has similar restrictions to running a script:
   blender --background --python test.py

TODO:
 - install to site-packages with blender scripts
 - add support for imp.reload()
2011-02-20 23:39:29 +00:00
e3cc8f00cc From the todo:
New render output option "No Output", which renders without
forcing an editor to show an image. Nice for people who
prefer to setup composites with background image view.
2011-02-19 16:55:01 +00:00
8cbdf89695 OpenGL playblasts now respect Preview Range, making it easier to
render out short segments of shots to be previewed with accurate
timing.
2011-02-17 10:18:14 +00:00
8b7482892b made most variables which are only used in a single file and not defined in header static for blenlib, blenkernel and editors. 2011-02-14 17:55:27 +00:00
7eb51a012b Some more fixes for particle textures:
* Moving a texture slot didn't keep the moved slot active.
* Copy & paste for particle textures didn't work.
* New textures weren't freed properly.
2011-02-13 12:35:26 +00:00
496a78a593 bugfix [#25969] GLSL missing an update on texture slot change
what did I learn from this?
"if at first you don't succeed..
   you're not kaito." ;)
2011-02-08 14:33:08 +00:00
c8be8a7c6d Bugfix 25965
New "auto render" now prevents calling anim-updates, that's
not needed (and popped back transformed keyed objects).
2011-02-07 18:09:27 +00:00
5c421c328e Todo/feature request
When using masks or other simple 3D elements in composites, doing
a layer re-rendering on a node is a bit clumsy all the time.

This commit does two things to help:
- new hotkey "Z" in node editor automatically finds render layer
  that changed and re-renders it + composites
- option "Auto Render" does same, but then after every transform
  edit in 3D window

The latter is experimental; real & proper system for this requires
full threaded render support (like previews). But it works!

Demo file:
http://download.blender.org/demo/test/auto_composite.blend

Important fix:
After any render, all the render layers were tagged "changed", which
caused any edit to first totally recomposte everthing. Now it only
composites changes.

Implementation notes

- DAG scene flush now sets 'changed' flags in render layer nodes
- Added notifier for 'transform finished' to trigger the update,
  this is temporarily.
2011-02-07 16:41:57 +00:00
89c617a116 remove nan-makefiles 2011-01-30 15:29:22 +00:00
8227b3d463 remove/comment unused vars
also removed unnecessary NULL checks (where the pointer was used later without checking).
2011-01-13 04:53:55 +00:00
8f21a43535 split BKE_utildefines.h, now it only has blender specific defines like GS() MAKE_ID, FILE_MAXDIR, moved the generic defines to BLI_utildefines.h.
no functional changes.
2011-01-07 18:36:47 +00:00
b067a85aa3 Todo item:
Object color option now is incorporated in preview render, and
in display in 3D window.

Note that Object-color is "modulating" the render result, it just
multiplies... which is very limited for practical use. This was
added for Apricot game project. The original meaning however was
to replace diffuse only... so specular and light work still correct.

ALso made header for properties editor start on top, to reflect
default (report in tracker).
2011-01-05 15:10:35 +00:00
5db20b512e Todo item:
New option to start threaded wmJobs, with flag WM_JOB_SUSPEND.
This makes the job wait 1 timer step before running. 

Used now for Material Icon render renders, which makes the
big preview to be always rendered first while using UI.
2011-01-04 14:59:55 +00:00
2ad8175597 Todo: Material nodes
- On each re-render, the node image was cleared. Skipping this gives
  nicer pictures
- Node render was using AA, but unfortunately only 1 sample for Nodes
  is being stored. Disable AA render for now, nice speedup too.
2011-01-03 15:50:08 +00:00
22b97743ef avoid int/float comparisons within a number of for loops in deep shadow map compression.
gives minor overall speedup.
2011-01-03 06:13:50 +00:00
05cfe50436 Bugfix #25446 (and todo item)
The icons for materials were always lagging or not updating
at all. I also found it suspicious slow... 
It appeared that the icons now store a "mip level", where for
every change in Materials 2 render jobs for icons were started,
one for 32x32 pix, one for 96x96. The latter was cancelling out
the first job almost always.

Also made preview renders detect size, to set amount of tiles
to be rendered. Small icons use 1 part, larger previews 16 now.

All in all, behaves much smoother now! But, will also update
the thread Jobs manager to allow "delayed jobs" like for icons,
these are aggressively put as first in the jobs list.
2011-01-02 19:46:32 +00:00
ae51e1c683 reverting part of Ton's commit r33911.
The bug was 'write_still' was incorrectly being initialized to 'view_context'.

'write_still' should always write an image, so failing silently here is bad behavior.
Also, opengl render and internal render engine operator should use this option the same way.
2010-12-31 04:48:56 +00:00
1a8cc0a8f0 Small fixes:
- OpenGL still render failed when output format was set to Movie.
  Now it just doesn't save a file and renders anyway.
- Bone heat weight was missing 'wait cursor'.
- Waitcursor for Mac Cocoa is back! Made all OS's use the same
  nice hourglass cursor.

(Note: this violates Mac UI guidelines, we should rely on the 
spinning wheel of death instead. Highly disputable that.)
2010-12-27 18:54:43 +00:00
b1b22e928d Usability fix:
OpenGL render now first opens render window.
It used to render first, save file, and then open window to show result.
2010-12-27 18:00:35 +00:00
490c0758cb Bugfix #25357
Having 2 windows open, rendering to image editor, activate other
window and press F11 -> UI went haywire. Simple fix prevents
render output to be closed in this case.
2010-12-24 13:24:26 +00:00
5e382eb8e5 rename blenderlib to blender_add_lib 2010-12-22 23:09:30 +00:00
0db7bdf00a IRC fix: removing material slot from Object didn't refresh 3D correct.
Missing ID tag update.
2010-12-22 17:38:08 +00:00
6b1258f5b8 Bugfix #25301
Material Node trees:
SSS wasn't displaying in Nodes.

Implementation notes:
- Currently copying local data for preview render, only copies
  the base material. Node materials are re-used.
- This causes data to be in 2 "main" databases... complex.
- To make it work for preview, I had to add another loop in the
  SSS code that checks the original Main dbase. That's marked
  as warning in code to be fixed up.

Another bug:
- Material properties "SSS presets" copied settings to the
  active material, not to the displayed one. Added RNA call 
  to retrieve this from Objects.

(Next commit will fix preset scripts)
2010-12-20 13:02:33 +00:00
88b2955564 Bugfix #25307
Node shaders + textures, showing in Texture properties, with option
"show both previews" had bad ID checking.
2010-12-20 11:33:52 +00:00
b8e47fd160 Bugfix #25301
Preview render for node shaders broke, caused by localizing 
materials last week, to prevent thread crashes. Fixed now.
Also added a temp fix to draw color-management corrected
node previews default. Will follow scene setting tomorrow.

Also: SSS in nodes doesn't render yet. Was issue in 2.4 too...
2010-12-19 20:12:12 +00:00
7507a5f959 Bugfix #25288
SSS preview render didn't happy.
Was caused by using a Material copy for preview renders (to prevent
crashing in other cases). There were actually 2 errors:
- material copy should be added to preview-main database
- the render was invoked using wrong main database even!
2010-12-19 11:39:55 +00:00
7bca6bcf1f Bugfix #25259
Compositor: using the icon "render only this layer" now shows
progress in header, allows it to stop, and signals composite in
end.
2010-12-17 17:06:36 +00:00
fef0549ea5 SVN maintenance.
Plus some typo fixes in comments.
2010-12-16 19:05:47 +00:00
d2f84e0f79 Bugfix #25191
F11 pushed a render window to back, but not popped it.
This also works for user prefs btw, not bad ;)
2010-12-13 17:40:06 +00:00
afacd18498 use lowercase for cmake builtin names and macros, remove contents in else() and endif() which is no longer needed. 2010-12-08 08:43:06 +00:00
b110c7c8f2 Dependency graph: changed DAG_id_flush_update to DAG_id_tag_update. Now it
only tags the ID and does the actual flush/update delayed, before the next
redraw. For objects the update was already delayed, just flushing wasn't
yet.

This should help performance in python and animation editors, by making 
calls to RNA property update quicker. Still need to add calls in a few
places where this was previously avoided due to bad performance.
2010-12-05 18:59:23 +00:00
263830f000 Enabled GCC -Wwrite-strings warning for CMake and replaced many 'char's for 'const char's,.
Only one functional change where Transform orientations passed "" to BIF_createTransformOrientation() which could then have the value written into.
2010-12-03 17:05:21 +00:00
52edaae9c5 Bugfix #20565
Material Node shaders: displaying GLSL + rendering previews crashed.
Reason was non-safe threaded access to material nodes. Now, on a preview
render, a full copy of Material is being made.
2010-12-03 14:26:03 +00:00