Commit Graph

66005 Commits

Author SHA1 Message Date
ed81ff405f Fix: buttons previewrender was re-rendering on scrolling a lot, this due
to rounding noise when trying to detect if previewsize changed. Made it
use a threshold now.

Fix: SHIFT+P in editmode is still push/pull, outside editmode it'll do
the preview render. (Note; editmode changes are not updated anyway!)
2006-01-30 19:39:05 +00:00
1c3ece9915 * Allow the Sequence editor to scale in Y axis too. Why was this never enabled? 2006-01-30 16:34:18 +00:00
6b7c992920 Bugfix: missing faces on edge of image
Yesterdays commit slightly extended clipping area for window, to ensure
no empty borders get rendered. Unfortunately it reveiled a case in code
that was never handled; clipping code was throwing away good faces. Old
bug... but apparently never showed up?
2006-01-30 16:23:14 +00:00
416329c477 small fix for wave drawing. Made trackview draw gradiants as background. Grid does not necessarly represent tracklines at the moment and this is a nice way to show tracks. 2006-01-30 12:41:33 +00:00
ba83c7ffeb The patch to pre-emptify the queues for 'clever numbuts' didn't check for
non-existant windows, causing crash for example in Action window for shapes
2006-01-30 11:30:37 +00:00
e193648595 Created threadsafe MEM_malloc versions in BLI_threads.h, now in use
for compositing code.

Officially malloc/calloc/free is threadsafe, but our secure malloc system
requires all memory blocks to be stored in a single list, so when two
threads write in this list you get conflicts.
2006-01-30 11:09:50 +00:00
18ab7c468f P back to Play Game :)
<shift>P = preview toggle.
Don't know what the previous <shift>P did, something like 'Transform'. Ton, can you look into this?
2006-01-30 05:43:07 +00:00
b9ce28fc37 revert to sane defaults in sconstruct for darwin
game engine and openal were disabled
2006-01-30 00:45:44 +00:00
b01b574656 When using Duplicated Objects (like vertex dupli) the original isn't
rendered anymore, to prevent overlapping situations. This worked before.

Note; group dupli stuff will test later. :)
2006-01-29 23:45:11 +00:00
38cafa3009 adding needed entries to stubs.c after orange branch commit
so that player compiles.
2006-01-29 23:41:15 +00:00
07cde494c1 reduced dithering on sequence wave redraw. 2006-01-29 23:28:50 +00:00
6dd3fd2a26 Two issues solved in render recode;
- the sub-pixel masks for applying correct filters (gauss and friends)
  accidentally were y-flipped, causing bad looking results.

- zbuffer was clipping extremely narrow, causing border pixels to miss
  samples, and reveiling alpha that way (was in old render a prob too)
2006-01-29 23:01:33 +00:00
130c1dcb31 ==SConscript fix for cygwin==
cygwin build environ was missing the path for libtiff
2006-01-29 22:58:58 +00:00
aa3aaaa9b6 == interface ==
Two new mouse cursors (paintbrush and text I-bar) made by basse (he even made the patch!), inspired by Bart's page.

I also changed screenmain() ever so slightly, so that the standard cursor is always used when the mouse is over a window header.
2006-01-29 22:25:53 +00:00
24446906bc Use ALsizei/GLsizei to fix compile errors on mac / gcc 4.x. 2006-01-29 21:29:14 +00:00
48fc07716a Scripts:
Small typo (or so it seems) in bevel center, preventing it from working.
2006-01-29 21:04:30 +00:00
c23aadd1e4 Bug #3837
A commented if in toets.c for flipping the render buffer prevented the propagation of the keypress to handler in space.c

Ton: I added a temporary check for no qualifier but it's missing a test for an opened render window.
2006-01-29 19:38:52 +00:00
4b01aa7aa5 Scripts:
The orange -> HEAD merge reverted some scripts to older versions. This only
affected the ones that already existed before the orange branch.
Minor issue, easy to fix.

All in all, kudos to kaito, Hos and others for all the hard work in
bringing (coding, merging) all these changes to the main branch.
2006-01-29 19:17:53 +00:00
282fbcc763 Previous fix was in wrong part of code... not alpha adding was wrong, but
there was an error in the zbuffer code!

This should fix combinations of using Ztransp and Solid faces.
2006-01-29 18:04:15 +00:00
eee7393e1c 1. making RenderData, xrect, yrect parameters in AviCodec calls
2. fixing MSVC6 projects to build
2006-01-29 17:46:19 +00:00
a4f05a17c3 Accidentally mixed up addAlphaUnder and addAlphaOver in merging solid and
ztransp layers, for OSA renders. :)
2006-01-29 17:40:06 +00:00
Ken Hughes
ef981e1321 Bugfix #3797: 24-bit BMP images weren't read properly. Standard apparently
assumes each raster line is padded to a multiple of 4 bytes.
2006-01-29 15:23:26 +00:00
e544723e63 Fix some of Stealth Apprent's warnings/errors and some extra little stuff.
here is a quick summary...

Kent

intern/bsp/intern/BSP_CSGMesh_CFIterator.h
removed tri_index (unused variable)

intern/bsp/intern/CSG_BooleanOps.cpp
removed extra ;

intern/string/intern/STR_String.cpp
added <ctype.h>

source/blender/blenkernel/BKE_writeavi.h
moved things around so not doing forward declarations

source/blender/renderconverter/intern/convertBlenderScene.c
changed render.h to render_types.h

source/blender/src/blenderbuttons.c
source/blender/src/editgroup.c
source/blender/src/meshtools.c
added newline

source/gameengine/Ketsji/KX_KetsjiEngine.cpp
commented out include "PIL_time.h" code that requires it is commented out

reading blender/src/writeavicodec.c
(struct keyword to a couple of lines that needed it)
and added:
extern struct Render R;

blender/renderconverter/intern/convertBlenderScene.c
added extern Render R;
added #include "rendercore.h" to get rid of undeclared shade_material_loop
        (Not sure if this is right but it fixes it.
Did not fix this problem, is it alright to just pass NULL here or should we chan
ge it to something else:
        init_render_materials' : too few

gameengine/Physics/BlOde/OdePhysicsEnvironment.cpp
removed argument to dHashSpaceCreate
commented out dWorldQuickStep since it does not exist
2006-01-29 15:15:34 +00:00
160239ea73 Fixed a few problems with wave drawing-
Optimized so only samples inside the screens bounds are drawn.
Wave display detail is based on zoom - so you can view realy large wave files as well as indervidual samples.
Changed logic so an approximation of the wave is displayed rather then just the symetrical amplitude of the sound.
Triangles at start and end were annoying and obscured the start of the sound. made them alpha 0.7 for sound clips only.
a whole CD of music should display well and zoom smoothly now.
2006-01-29 14:58:41 +00:00
9f5a58aeff Compositing: the "RGB Curves" node now has an optional 'factor' input as
well. It currently only is active when you input a mask (alpha, z).
Nice to do grading on certain parts of image only :)
2006-01-29 14:37:17 +00:00
d334ac0963 Fix: theme color version patching should start with 2.41 too. 2006-01-29 13:12:42 +00:00
e63dbac5d2 The preview.blend file, which is datatoc'ed in blender/src 2006-01-29 13:11:05 +00:00
2d12365f7c Previewrender (buttons) now supports Lamp, Texture and Sky previews
again. One exception I didn't solve yet... for the Stucci texture.

In a next commit I will add the preview.blend, so people can play with it!

The rules for preview.blend are pretty primitive still... might become
a bit more advanced later. Here's what it uses now:

- If Object has name starting with 'p' it will get the to-be-previewed
  Material or Lamp assigned
- If Object has name starting with 't' its Material gets the texture
  assigned for Texture previews

The layer codes for current preview options are in DNA_material_types.h;

#define MA_SPHERE		0
#define MA_CUBE			1
#define MA_FLAT			2
#define MA_MONKEY		3
#define MA_SPHERE_A		4
#define MA_TEXTURE		5
#define MA_LAMP			6
#define MA_SKY			7

(SPHERE_A is sphere with alpha for icons)
2006-01-29 13:10:20 +00:00
abe7e7bc72 Bugfix; version patching for new armature layers and Node editor themes
had to check 2.41 files too. Orange branch was still in 2.40...
2006-01-29 12:53:57 +00:00
2f8708da02 Three-in-one commit:
- Compositor now is threaded
Enable it with the Scene buttons "Threads". This will handle over nodes to
individual threads to be calculated. However, if nodes depend on others
they have to wait. The current system only threads per entire node, not for
calculating results in parts.

I've reshuffled the node execution code to evaluate 'changed' events, and
prepare the entire tree to become simply parsed for open jobs with a call
to   node = getExecutableNode()
By default, even without 'thread' option active, all node execution is
done within a separate thread.

Also fixed issues in yesterdays commit for 'event based' calculations, it
didn't do animated images, or execute (on rendering) the correct nodes
when you don't have Render-Result nodes included.

- Added generic Thread support in blenlib/ module
The renderer and the node system now both use same code for controlling the
threads. This has been moved to a new C file in blenlib/intern/threads.c.
Check this c file for an extensive doc and example how to use it.

The current implementation for Compositing allows unlimited amount of
threads. For rendering it is still tied to two threads, although it is
pretty easy to extend to 4 already. People with giant amounts of cpus can
poke me once for tests. :)

- Bugfix in creating group nodes
Group node definitions demand a clear separation of 'internal sockets' and
'external sockets'. The first are sockets being linked internally, the latter
are sockets exposed as sockets for the group itself.
When sockets were linked both internal and external, Blender crashed. It is
solved now by removing the external link(s).
2006-01-29 11:36:33 +00:00
9ccdad0d13 Made mesh align to face/verts also align to an edge and a verts normal, existing functionality was not changed.
usefull for rotating about an edge.
2006-01-29 08:36:01 +00:00
904e298dc1 Small edit so undo+redraw is only done when removeDoubles actually does somthing.
Would anyone have a problem with me going through and making functions like triangulate, flip normals tri2quad etc all return how many changes made? - then undo+redraw can be done only when needed.
2006-01-29 08:01:04 +00:00
5953857f92 ==warnings cleanup==
killed off some newline warnings in bullet
2006-01-29 06:04:13 +00:00
36e993a06f Two missing declarations in this include file. 2006-01-28 20:23:53 +00:00
240e25ab65 Cleanup of blender/ module; Makefiles now compile this warning free.
Mostly was unused variables, unused functions, missing prototypes and
missing include files.
2006-01-28 20:17:48 +00:00
2fbef6f9c9 ==compiling==
need this version to compile with cygwin...
2006-01-28 19:57:09 +00:00
8347dd2560 Put back the -O2 default for compiling with makefiles in OSX.
I disabled it for testing in orange...
2006-01-28 19:48:29 +00:00
Chris Want
1ba1fc0c0f composit, composite, compose ... what's the diff? You sconz0rs need
filename globbing!

Added 'e' to renamed file.
2006-01-28 19:25:43 +00:00
9ce8944a05 Wow! bugfix in bf-blender again!
Simon C. gave me a nice crash.blend, in zbuffered transparent render.
Was a malloc that should become calloc... :)
2006-01-28 19:05:49 +00:00
Chris Want
0d0255f3f5 The code from the orange branch has now been copied into HEAD.
Here are some notes written by Ton:

There's several areas I still have to work on, so don't immediately
report bugs!

- Preview renders in buttons window only supports materials now (no
lamp, texture or world)
- Yafray code has to be checked, it might not work
- unified render doesn't work, might not come back even
- lens flares dont work yet
- motion blur and field render doesnt work yet
- exr libraries are static linked still, we look at making it dynamic
loadable
- the compositor is fully in development still

I really advise people to check on the orange cvs logs too (in case you
ignored it), this has most of the information in it.

At this moment I still have to code for Orange deadlines, that defines
my priority listing mostly. And since we don't use Windows there, doing
testing and bugfixing for that platform would be of great help!

Best features of this commit to checkout:

- Grouping
- full fixed library linking system
- custom bone drawing
- bone layers
- Material/Shading nodes
- recode of render engine
- preview renders
- Compositing options

When the work pressure is a bit lower, I'll make nice docs for all of
this!

-Ton-
2006-01-28 18:33:28 +00:00
Chris Want
635224802e The extern/bullet from HEAD is needed to compile the gameengine in
orange
2006-01-28 17:25:03 +00:00
b71130ca80 Orange: missing sync for game engine in orange, compiles now again! 2006-01-28 17:19:21 +00:00
4270cc96bc Orange: replaced obsolete IMB_rectop() with IMB_rectcpy() in game engine. 2006-01-28 16:43:00 +00:00
Chris Want
c8b48e70e6 Final merge of HEAD (bf-blender) into the orange branch.
Here are my notes on things to look out for as potential problem
spots:

source/blender/blenkernel/intern/displist.c:
+ is initfastshade(void) supposed to be empty? I had
to make it empty to get the merged tree to compile.

source/blender/python/api2_2x/Armature.c:
+ went with the version that had Armature_getLayers()

source/blender/python/api2_2x/Object.c
+ went with the version of Object_getPose() from bf-blender.
(#ifdef 0-ed the other version)

source/blender/python/api2_2x/Pose.[ch]
+ had problems linking due to no Pose_Init() ... copied these
two files straight from bf-blender.

source/blender/src/drawview.c:
+ view3d_panel_properties() had things shifted a few things shifted
a few pixels, otherwise, things were painless

source/blender/src/splash.jpg.c:
+ went with bf-blender version (orange is dead)

source/gameengine:
+ went with bf-blender version -- does not compile due to IMB_rect* stuff,
Ton should look into this.
2006-01-28 16:35:18 +00:00
45c7b2c5c2 Orange: made Compositing more interactive. It now has an event based
system tracking changes in nodes, making sure only these nodes and
the ones that depend, are executed.

Further the 'time cursor' now counts down to indicate which node is being
done.

Also: you now can disable the "use nodes" button in the header, edit all
changes, and when you press that button again it nicely executes the
changes.

Still on the todo:
- make compositing threaded
- find a way to nicely exit compositing on input events... so the UI
  keeps being responsive
- idea; a 'percentage' menu in header to enforce calculations on smaller
  images temporally
2006-01-28 15:21:04 +00:00
80bd3a1e98 Orange: fix for threaded rendering. Discovered that for some reason the
threads didn't seem to free allocated memory... while rendering an long
sequence, the 'virtual memory' size grew with about 20 meg per frame.
This appeared to be not related to using malloc in threads (works
properly), but just because threads were not closed properly.

I assumed that the call to SDL_CreateThread() also closes the thread
when finished... but that seems to be not the case. By using a call to
SDL_WaitThread() after the thread was finished the memory heap is stable
again.

This is something I've seen not documented anywhere... the SDL man
pages are horrible sparse; Take for example the official page:

http://manuals.thexdershome.com/SDL-1.2.5/html/sdlcreatethread.html
2006-01-28 10:30:16 +00:00
bb2e2b9ec8 Orange: previous commit for render-layers didn't update the case for
3d window preview-render.
2006-01-28 08:27:29 +00:00
db5f7bd8da Fixed a stupid bug when exporting meshes with empty material slots. 2006-01-27 14:55:12 +00:00
0a5c995458 Minor optimization- mainly lists and dicts - use iterkeys instead of keys try/except rather then has_key()/else (1 less dict lookup)
Also discovered a bug in meshtools... not sure how relevent this is with the new api on the horizon.
2006-01-27 13:37:02 +00:00
no-author
e8afec9f9a This commit was manufactured by cvs2svn to create branch 'orange'. 2006-01-26 22:47:31 +00:00