Chris Want [Wed, 31 Dec 2003 04:00:26 +0000 (04:00 +0000)]
A fix for the missing pad1 bug: henceforth, world->pad1 shall be known as
world->gameEngine (a la tuhopuu).
Ton Roosendaal [Tue, 30 Dec 2003 18:03:37 +0000 (18:03 +0000)]
Added improved exposure calculation
- based at 1.0-exp(-color) trick in Yafray. But to guarantee backwards
compatibility, and some more control, Stefano Selleri hacked a useful
formula for it.
- We now have 2 values to set:
- "exp": the exponential correction value (0-1)
- "range": the light range that maps on color 1.0 (0-5)
- Using exp(x) (is e^x) we can much better prevent overflows from render,
which are currently hard-clipped in Blender. Setting a small 'exp' value
wil efficiently smooth out high energy and map that back to a color for
display.
- total formula:
newcol= linfac*(1.0-exp(col*logfac))
col, newcol are colors
linfac= 1.0 + 1.0/((2.0*wrld.exp +0.5)^10)
logfac= log( (linfac-1.0)/linfac )/wrld.range
wrld.exp and wrld.range are the button values
- default setting: exp=0.0 and range=1.0 give results extremely close to
previous rendering.
- graph: http://www.selleri.org/Blender/buffer/Image1.png for 'exp' setting
ranging from 0-1, and with 'range'=2
Thanks Stefano for the help!
Ton Roosendaal [Tue, 30 Dec 2003 16:00:38 +0000 (16:00 +0000)]
- fixed switching contexts... the previous commit about this was too
rigurous. Now it only switches context when selecting a new object
type, also "invisble", when shading buttons are not drawn.
What I committed changed context always when pressing the 'shading
context' icon button. This was annoying when you were editing textures
or radiosity, world, etc. In such cases it should just draw the old
settings.
Ton Roosendaal [Tue, 30 Dec 2003 00:04:22 +0000 (00:04 +0000)]
- fix for area light versus oren-nayer shading.
oren-nayer was of course of not built for area-lights... so probably
Cessen will kill me for this hack. Nice challenge for him to come with
better solution. Visually it works & looks fine.
Ton Roosendaal [Mon, 29 Dec 2003 21:32:03 +0000 (21:32 +0000)]
- forgot to clip negative values coming from arealight formula.
- excluded 'dist' factor calculus from arealamps, which caused too much
distance sensitivity
Ton Roosendaal [Mon, 29 Dec 2003 20:12:21 +0000 (20:12 +0000)]
- since the Object Transform panel in 3d window has sufficient space,
made all buttons display 3 digits after dot, instead of 2.
Ton Roosendaal [Mon, 29 Dec 2003 20:05:15 +0000 (20:05 +0000)]
- fixed crashing texture plugin, caused by not checking the tex->nor
pointer.
Now variables are localized, this is not always set anymore.
Ton Roosendaal [Mon, 29 Dec 2003 16:52:51 +0000 (16:52 +0000)]
Area lights and more...
- New lamp type added "Area". This uses the radiosity formula (Stoke) to
calculate the amount of energy which is received from a plane. Result
is very nice local light, which nicely spreads out.
- Area lamps have a 'gamma' option to control the light spread
- Area lamp builtin sizes: square, rect, cube & box. Only first 2 are
implemented. Set a type, and define area size
- Button area size won't affect the amount of energy. But scaling the lamp
in 3d window will do. This is to cover the case when you scale an entire
scene, the light then will remain identical
If you just want to change area lamp size, use buttons when you dont want
to make the scene too bright or too dark
- Since area lights realistically are sensitive for distance (quadratic), the
effect it has is quickly too much, or too less. For this the "Dist" value
in Lamp can be used. Set it at Dist=10 to have reasonable light on distance
10 Blender units (assumed you didnt scale lamp object).
- I tried square sized specularity, but this looked totally weird. Not
committed
- Plan is to extend area light with 3d dimensions, boxes and cubes.
- Note that area light is one-sided, towards negative Z. I need to design
a nice drawing method for it.
Area Shadow
- Since there are a lot of variables associated with soft shadow, they now
only are available for Area lights. Allowing spot & normal lamp to have
soft shadow is possible though, but will require a reorganisation of the
Lamp buttons. Is a point of research & feedback still.
- Apart from area size, you now can individually set amount of samples in
X and Y direction (for area lamp type 'Rect'). For box type area lamp,
this will become 3 dimensions
- Area shadows have four options:
"Clip circle" : only uses a circular shape of samples, gives smoother
results
"Dither" : use a 2x2 dither mask
"Jitter" : applys a pseudo-random offset to samples
"Umbra" : extra emphasis on area that's fully in shadow.
Raytrace speedup
- improved filling in faces in Octree. Large faces occupied too many nodes
- added a coherence check; rays fired sequentially that begin and end in
same octree nodes, and that don't intersect, are quickly rejected
- rendering shadow scenes benefits from this 20-40%. My statue test monkey
file now renders in 19 seconds (was 30).
Plus:
- adjusted specular max to 511, and made sure Blinn spec has again this
incredible small spec size
- for UI rounded theme: the color "button" displayed RGB color too dark
- fixed countall() function, to also include Subsurf totals
- removed setting the 'near' clipping for pressing dot-key numpad
- when you press the buttons-window icon for 'Shading Context' the context
automaticilly switches as with F5 hotkey
Please be warned that this is not a release... settings in files might not
work as it did, nor guaranteed to work when we do a release. :)
Martin Poirier [Sun, 28 Dec 2003 21:28:35 +0000 (21:28 +0000)]
Alex Mole's patch for END and HOME
http://www.blender.org/pipermail/bf-committers/2003-December/004691.html
Makes HOME and END keys work in text space and text
edit boxes.
I've tested it for some time now and I haven't had any problem or spotted any irregularities of some sort.
One think though. It doesn't update the panning of the text window if the cursor gets out of the screen. I guess someone (more familiar with the code) could look into this.
Really nifty when coding scripts.
Martin Poirier [Sun, 28 Dec 2003 21:16:11 +0000 (21:16 +0000)]
Bugfix for bug #760
http://projects.blender.org/tracker/index.php?func=detail&aid=760&group_id=9&atid=125
When using numerical input with scaling, axis that did not have any input scaled to 0 (it defaults to 1 now). Fix inspired by Koryo's patch (it was easier to recode it than to apply the patch and then run through the code to see if he didn't forget anything).
Also fixed some other stuff (the variables didn't reset correctly at some point).
Martin Poirier [Sun, 28 Dec 2003 20:24:32 +0000 (20:24 +0000)]
Function without a return (warning)
This function just calls another function which returns a success value, so I'm just passing that value directly as a return value.
Slap me with a trout if I wasn't suppose to fix this.
Martin Poirier [Sun, 28 Dec 2003 19:59:06 +0000 (19:59 +0000)]
bjornmose's UV mapping patch
two new options to uv auto calculation:
"from window to shere", "from window to cylinder".
the differences to sphere/cylinder mapping as is:
1. the around settings of the 3D view sets the projection center
2. the origin of the polar/spherical coordinate system always points out of the screen.
so the rotation of the view affects mapping.
3. in the cylinder case the radius of the projection cylinder is read by a popup button.
Basicly what you need to do is rotate the viewport until the cylinder/sphere is aligned with the depth (Z axis) of the view, as if you where looking through the mesh from one end to another (makes more sense in the case of a cylinder), and choose the From window to cylinder/sphere mapping option.
Robert Wenzlaff [Sat, 27 Dec 2003 17:29:25 +0000 (17:29 +0000)]
Another bad flag. Mea Culpa.
Robert Wenzlaff [Sat, 27 Dec 2003 16:52:51 +0000 (16:52 +0000)]
Accidently committed local flags. Bad coder.
Robert Wenzlaff [Fri, 26 Dec 2003 23:01:47 +0000 (23:01 +0000)]
More cursor port bugs.
Robert Wenzlaff [Fri, 26 Dec 2003 22:41:51 +0000 (22:41 +0000)]
Bugfix: Error in cursor port, only showed up under cygwin.
Roel Spruit [Fri, 26 Dec 2003 20:29:11 +0000 (20:29 +0000)]
added Robert's cursor stuff to the msvc 6.0 project files
Robert Wenzlaff [Fri, 26 Dec 2003 20:12:42 +0000 (20:12 +0000)]
Commit of cursor framework. Cursors now defined in source/blender/src/cursors.c and
source/blender/include/BIF_cursors.h. Allows large cursors on Win32 and X11.
See cursors.c for documentatioin on how to use.
Ton Roosendaal [Wed, 24 Dec 2003 19:05:38 +0000 (19:05 +0000)]
- improved filling in faces in octree, resulting in less nodes and
branches. Especially larger faces give result. Rendering times go down
with an average of 10%. My reference testfile went down from 30.4 to
27.9 seconds.
Kent Mein [Wed, 24 Dec 2003 16:44:24 +0000 (16:44 +0000)]
Dan Sinclair's patch to add --version or -v to blender's command line options.
Kent
Ton Roosendaal [Wed, 24 Dec 2003 16:18:13 +0000 (16:18 +0000)]
- fixed bug in shaded view mode (SHIFT+Z) when it tried to calculate
reflection normals... NULL pointer reference.
(thanks Desoto!)
Ton Roosendaal [Wed, 24 Dec 2003 11:44:57 +0000 (11:44 +0000)]
- only cosmetic stuff; result of going over the output of mipspro cc
compile round. Wrong prototypes, unused variables, zealot const usage,
and in action.c fixed insane & unreadable function call syntax.
Ton Roosendaal [Tue, 23 Dec 2003 22:31:48 +0000 (22:31 +0000)]
- Fresnel V4.0
Based on feedback (thnx phase!) I found a big disadvantage of the 'real'
fresnel formula. It doesnt degrade to 0.0, causing 2-3 times too many
rays being fired compared to the previous one. So; a lot slower.
Now committed is a hybrid which allows (close to) real, and nice artistic
freedom, *and* it really goes to 0.0 and 1.0, assisting nicely in optimal
render times.
A real doc how it works (with pics) will be made before real release.
- Fixed bug in raytrace: the first renderpass didn't use fresnel for mirror.
- Fixed bug in previewrender, now it closer matches how fresnel renders
Martin Poirier [Tue, 23 Dec 2003 19:03:30 +0000 (19:03 +0000)]
Fixed bevel width preview drawing which draws the correctly with higher recursion level (it was incorrect for anything higher than 2).
Also commented out a couple of unused variables that were shouting warnings (and we all love the lack of warning and the couple of extra free bytes) :)
Ton Roosendaal [Mon, 22 Dec 2003 22:27:51 +0000 (22:27 +0000)]
- another fresnel improvement. :)
At last irc meeting, eeshlo pointed to an error in the code. It didn't
use the IOR value correctly. This has been solved. So how it works now:
- the IOR button value influences (very subtle) the fresnel effect.
Only for realism diehards.
- the Fresnel value (slider) now denotes the power in the function
rf + (1-rf) * (1-c)^5
where rf= rf = ((ior-1)/(ior+1))^2
and c the dot-product ray/normal.
- so, set the slider at '5' and you have real fresnel. Lower values
for interesting artistic effects.
- put back the forgotten code for gaussian corrected sampling during
antialising render. Normally, each sub-pixel sample in Blender counts
equally, and together make up the pixel color.
With 'Gauss' option set (F10 menu) each sub-pixel sample creates a small
weighted mask with variable size, which (can) affect neighbouring pixels
as well. The result is smoother edges, less sensitive for gamma, and
well suited to reduce motion-aliasing (when things move extreme slow).
This is result of *long* period of research in NeoGeo days, and based on
every scientific sampling/reconstructing theory we could find. Plus a
little bit of our selves. :)
- I should write once how blender constructs Jitter tables for sub-sampling.
this is a very nice method, and superior to normal block filter or random
jittering... time!
Ton Roosendaal [Sun, 21 Dec 2003 23:38:41 +0000 (23:38 +0000)]
- fixes for the stubs, to make sure blenderplayer compiles.
error was caused by moving render calls to render module... but some
are still called in blender kernel...
Ton Roosendaal [Sun, 21 Dec 2003 22:57:02 +0000 (22:57 +0000)]
- globals were defined double... showed up thanks to warning of irix
compiler!
Roel Spruit [Sun, 21 Dec 2003 22:43:10 +0000 (22:43 +0000)]
updated msvc projectfiles: added texture.c and removed some others..
Ton Roosendaal [Sun, 21 Dec 2003 22:38:29 +0000 (22:38 +0000)]
- moved render.h struct back to beginning of file...
Ton Roosendaal [Sun, 21 Dec 2003 22:31:03 +0000 (22:31 +0000)]
- brought back to render.h includes... ifdef SGI and Windows...
Ton Roosendaal [Sun, 21 Dec 2003 22:23:20 +0000 (22:23 +0000)]
- removed render.h from this file.
Ton Roosendaal [Sun, 21 Dec 2003 21:52:51 +0000 (21:52 +0000)]
Phew, a lot of work, and no new features...
Main target was to make the inner rendering loop using no globals anymore.
This is essential for proper usage while raytracing, it caused a lot of
hacks in the raycode as well, which even didn't work correctly for all
situations (textures especially).
Done this by creating a new local struct RenderInput, which replaces usage
of the global struct Render R. The latter now only is used to denote
image size, viewmatrix, and the like.
Making the inner render loops using no globals caused 1000s of vars to
be changed... but the result definitely is much nicer code, which enables
making 'real' shaders in a next stage.
It also enabled me to remove the hacks from ray.c
Then i went to the task of removing redundant code. Especially the calculus
of texture coords took place (identical) in three locations.
Most obvious is the change in the unified render part, which is much less
code now; it uses the same rendering routines as normal render now.
(Note; not for halos yet!)
I also removed 6 files called 'shadowbuffer' something. This was experimen-
tal stuff from NaN days. And again saved a lot of double used code.
Finally I went over the blenkernel and blender/src calls to render stuff.
Here the same local data is used now, resulting in less dependency.
I also moved render-texture to the render module, this was still in Kernel.
(new file: texture.c)
So! After this commit I will check on the autofiles, to try to fix that.
MSVC people have to do it themselves.
This commit will need quite some testing help, but I'm around!
Alexander Ewering [Sat, 20 Dec 2003 13:46:50 +0000 (13:46 +0000)]
Fixed the call to CalcNormFloat to use neweve[]->co.
Goofster: The difference between you and Ton reporting the problem was
that he actually took the time to analyze the warning and pin down the
problem, while your "hahaha, your code has a warning!" didn't really
help me a lot in the first place.
Ton Roosendaal [Fri, 19 Dec 2003 15:23:12 +0000 (15:23 +0000)]
More render stuff:
- added 'Mapping to" channel "RayMirror", to control mirror with texture
- fixed bug in using mirror-rgb as texture channel... this is cumbersome
because it is abused by Envmap in a not nice way. Fixing the abuse will
cause compatibility errors, which can be fixed when we up release # to
2.32.
- added "Translucency", which is nothing else than allowing another
shading pass for the backside of a face (with normal inverted). This
is interesting for all kinds of situations where you want light from
behind to 'shine through'. Also works to reduce dark areas in
unlighted parts of rendering transparent faces. Light from behind on
transparent red window should make it glowing some, right?!
- added texture channel for this as well
- Reorganized Material Panels to reveil some consistancy where buttons
can be found. Not perfect yet, but at least all options for Shaders and
options for Mirror & Transparency now are together.
This gives some space in Shader Panel for nice expansion.
Matt Ebb [Fri, 19 Dec 2003 12:07:24 +0000 (12:07 +0000)]
Updated the Mac OS X blender file icon with standard background and xype's nice shiney blender logo
Jacques Guignot [Thu, 18 Dec 2003 21:45:15 +0000 (21:45 +0000)]
Bug fixes (sigh...)
Ton Roosendaal [Thu, 18 Dec 2003 21:34:48 +0000 (21:34 +0000)]
another trace commit
- implemented tracing of transparency for shadows. This is a material
option, in the new RayTrace panel.
it only traces color and alpha, not shading. So the results of some
transparant colored unlit faces can look odd. I will look onto that.
- changed fresnel formula (got hint from eeshlo!). this simplifies the UI,
now only one button needed. The fresnel value "should" be identical as
the refraction index, but that is booooring! So i added a special fresnel
refraction slider for both mirroring and transparency. By setting all 3
sliders equal, you get 'realism'.
- fresnel for transparancy works for Ztra rendering too. Same for transpa-
rent shadow. But then you need to set 'ray' on in F10 menu.
- uploaded new monkey_glass blend in download.blender.org/demo/test/
Next stage: killing the globals from render, and implement "translucency"
which is effectively allowing faces being lit from behind, as paper or
cloth.
Martin Poirier [Thu, 18 Dec 2003 01:37:50 +0000 (01:37 +0000)]
Yay! Bevel is back in business. Thanks to intrr for pointing out the problem (flag check missing).
Jacques Guignot [Wed, 17 Dec 2003 14:15:14 +0000 (14:15 +0000)]
Modification of the function getCurvecurval suggested by Jiba. This function can take an integer argument (the position of the curve) or a string (the name of the curve)
Updated documentation in doc/Ipo.py
Martin Poirier [Wed, 17 Dec 2003 04:27:29 +0000 (04:27 +0000)]
Nathanael Law's fix to make numerical input more compatible with axis constraints.
I thought this was a nice addition, so I'm commiting it.
To Ton for easier changelog creation: When constraining to an axis, numerical input is limited (and will switch automaticly) to that axis.
Original e-mail
-------------------------------
I was playing with the axis constraints for grab and scale transforms
and I thought that the behavior was slightly illogical. Without axis
constraints, I think everything is great, but once a constraint is used
some irregularities show up. (Note, this is not a bug, it's more of a
possible improvement)
When you enter grab or scale mode, then constrain the transformation to
a
particular axis, then enter numeric entry mode by hitting a number or
'n', there is no reason for you to try and edit the numeric value of a
non-constrained axis which is the current behavior.
E.g. You grab an object and want to move it along the z-axis, so you
enter grab mode and either hit 'z' or the middle mouse button and you
move the mouse to get an idea of how it looks. You decide that you
want to use a value of +4.2 with numeric entry; now you have to enter
the following sequence: 'g', 'z', 'move mouse', 'tab', 'tab', '4.2',
'enter'. However, you're already constrained to the z-axis, so you
should not have to enter 'tab', 'tab'.
The included patch changes the behavior of grab and scale transforms so
that if you are constrained to an axis, and enter numeric entry mode
via
'n' or by hitting a number, you will immediately begin editing the
appropriate axis, and will not have to hit 'tab'.
This may not seem like a big improvement (because it's not), but I feel
that it improves the workflow of a commonly used task slightly and does
not negatively impact any other aspects of the program.
I welcome feedback on this idea.
--
- Nathanael Law <njlaw@xyrodian.com>
Martin Poirier [Wed, 17 Dec 2003 04:16:32 +0000 (04:16 +0000)]
Fix for the bevel wrapping face detection algorithm. Still some case where quad will wrap. From the test I did, this seems to happen most of the time with MAJORLY non-coplanar faces. Still trying to find a final fix that would work all the time.
Ton Roosendaal [Tue, 16 Dec 2003 16:07:46 +0000 (16:07 +0000)]
- shadeless rendering fixed!
error was due to new localized render result code... and of course only
shading and tracing was tested :)
Ton Roosendaal [Tue, 16 Dec 2003 14:12:01 +0000 (14:12 +0000)]
Another commit for raytracing, now with glass refraction & fresnel!
Changelog:
- enable refraction with button "Ray Transp" in Material buttons.
- set "Angular Index" value for amount of refraction.
- use the "Alpha" value to define transparency.
- remember to set a higher "Depth" too... glass can bounce quite some
more than expected.
- for correct refraction, 3D models MUST have normals pointing in the
right direction (consistently pointing outside).
- refraction 'sees' the thickness of glass based on what you model. So
make for realistic glass both sides of a surface.
- I needed to do some rewriting for correct mirroring/refraction,
especially to prevent specularity being blended away.
Solved this with localizing shading results in the rendercore.c.
Now specularity correctly is added, and reduces the 'mirror' value.
- Localizing more parts of the render code is being planned. The old
render heavily relies on struct Render and struct Osa to store globals.
For scanline render no problem, but recursive raytracing dislikes that.
- done test with gamma-corrected summation of colors during tracing, is
commented out still. But this will give more balanced reflections. Now
dark reflections that are reflected in a bright surface seem incorrect.
- Introduced 'Fresnel' effect for Mirror and Transparency. This
influences the amount of mirror/transparency based at viewing angle.
Next to a new Fresnel slider, also a 'falloff' button has been added to
define the way it spreads.
- Fresnel also works for Ztransp rendering
- created new Panel for Raytrace options
I have to evaluate still where it all should be logically located.
- material preview shows fake reflection and fake refraction as well.
Chris Want [Tue, 16 Dec 2003 01:27:37 +0000 (01:27 +0000)]
OK, My turn to break things ...
The maximum vertex count for a mesh has been raised from 65000 to
2000000000L (yep, 2 billion!).
Please test!
Chris
Chris Want [Tue, 16 Dec 2003 01:15:52 +0000 (01:15 +0000)]
The final piece to make blender build with the new python stuff
using the Makefiles (an #include was #excluded). Thanks
for doing the rest of it, Willian!
Willian Padovani Germano [Tue, 16 Dec 2003 00:17:59 +0000 (00:17 +0000)]
Trying again to fix build problems with traditional makefiles.
I took a look at how other BPY_* functions were working in blenkernel/
and got to bad level calls (ah, so this is what that is for...).
As a test, I added BPY_clear_script to the "stubs", argh. If this works,
I'm curious: are these bad level calls needed only by some targets (irix)
because of peculiarities in compiler linkage?
Thanks again, Chris, if this doesn't work, I'll move or copy the function to
script.c, probably, also adding Python.h to it.
Willian Padovani Germano [Mon, 15 Dec 2003 18:18:09 +0000 (18:18 +0000)]
Chris reported build errors w/ traditional makefiles.
This commit moves the 2 undefined references to BPY_interface.c and
changes things a little, hopefully fixing the problem. I had to add a new dir,
source/blender/include/ to auto*'s Makefile.am in source/blender/python/.
Thanks Chris for the report, and Jiri, for adding a missing declaration.
Jiri Hnidek [Mon, 15 Dec 2003 16:06:00 +0000 (16:06 +0000)]
- added declaration SpaceType *spacescript_get_type (void);
Ton Roosendaal [Mon, 15 Dec 2003 14:18:37 +0000 (14:18 +0000)]
- fix for particle duplicators:
when an object has an Ipo, the timing for each duplicated Object is
corrected for the lifetime of particle. Looks great!
Remark: this won't work for object location (is at particle) or for
particle type 'Vect' which gives a rotation already. But now you can
scale an object small, and let it grow over time.
Martin Poirier [Mon, 15 Dec 2003 04:38:30 +0000 (04:38 +0000)]
BEVEL FOR MESH **** LONG LOG WARNING ****
The interesting part:
Bevelling functions for meshes.
Accessible through the Wkey menu.
You then have to enter the recursivity level (Warning, don't use 3 on a big mesh) and interactivly set the bevel width by moving the mouse. It draws the new faces in yellow. Ctrl constraint to 0.1 multiples, Shift switches to low gear, Space to type a value directly.
Support for selective bevelling isn't really working yet, so be sure to select all the vertices beforehand.
The less interesting part:
Code done by intrr (logical stuff, how the algorithm works) and me (math stuff and the interactive bevel width code).
The splitting and bevelling algorithm is not yet fully optimized, and the face shrinking math still doesn't like too big bevel width values. So this will have to be cleaned too.
Selective bevel is on the list next.
If you have any questions about how the code works, send the questions regarding the logic of the method to intrr and math questions to me.
This is very much testing code (or should I say teasing code), so please don't flood me with bug reports. (This excludes OFFICIAL Blender developpers who were there at the meeting and pretty much know what the limitations of the code is and what it should do.)
Martin Poirier [Mon, 15 Dec 2003 03:24:47 +0000 (03:24 +0000)]
Projectfiles fixes for new script space code thingy
Martin Poirier [Mon, 15 Dec 2003 03:13:22 +0000 (03:13 +0000)]
Some fix for local axis translation in edit mode. Sorry, I've fixed that weeks ago but never commit, so I really don't remember what the actual bug was. :o(
It wasn't from the bugtracker though.
Matt Ebb [Sun, 14 Dec 2003 13:25:38 +0000 (13:25 +0000)]
Updated some pulldown menus to be more consistent within themselves, and with the new guildelines.
Willian Padovani Germano [Sun, 14 Dec 2003 01:18:09 +0000 (01:18 +0000)]
BPython - first step for better integration of Python in Blender:
- add a new space: Space Script
- add a new dna struct: Script
- add these two properly everywhere they are meant to
It's not a tiny commit, but most of it is ground work for what is still to be done.
Right now the benefits should be: freeing the Text Editor to be used in a window even while a script w/ gui in "on" and letting more than one currently running script w/ gui be accessible from each window
Some files are added, so some build systems (not autotools) will need updates
Jacques Guignot [Sat, 13 Dec 2003 17:15:15 +0000 (17:15 +0000)]
support for curve objects.(the code was ready, but commented out)
modified functions : New and Object_shareFrom
Roel Spruit [Sat, 13 Dec 2003 13:41:29 +0000 (13:41 +0000)]
I'm not quite awake yet. commiting wrong things all over the place... part3 of a simple commit, see my previous 2 commits...
Roel Spruit [Sat, 13 Dec 2003 13:04:41 +0000 (13:04 +0000)]
Merge at center and at cursor update vertex-counter in the header.....
I will try to remember this stuff for my new stuff :)
Martin Poirier [Fri, 12 Dec 2003 23:44:07 +0000 (23:44 +0000)]
By adding undo capability to the Mkey event calling for mirrormenu, I accidentilly disabled it for all other object type. Fixed now.
Ton Roosendaal [Fri, 12 Dec 2003 23:40:35 +0000 (23:40 +0000)]
- another fix, to make sure radio colors work local during tracing...
this will be quite a lot of reconstruction, if i want to go for
refraction, caustics, pathlights, etc... :/
Ton Roosendaal [Fri, 12 Dec 2003 23:04:05 +0000 (23:04 +0000)]
- fix for error caused by last commit... colors changed by textures
during raytracing were 'hanging' and showing up in the first rendered
material.
Roel Spruit [Fri, 12 Dec 2003 20:54:12 +0000 (20:54 +0000)]
Numpad - . (dot) now centers on selected vertices/controlpoints in editmode.
It already centered on selected objects outside of editmode, so this is just a consistency feature.
Simon Clitherow [Fri, 12 Dec 2003 20:21:35 +0000 (20:21 +0000)]
Removed an '#ifndef FREE_WINDOWS' statement that prevented
a gcc/cygwin built Blender from showing the Blender app icon in the
main window title bar.
Only a minor issue, but it annoyed me long enough to want to fix it!
Ton Roosendaal [Fri, 12 Dec 2003 20:00:15 +0000 (20:00 +0000)]
- fixed tooltips for new 'ray' buttons in material buttons.
Ton Roosendaal [Fri, 12 Dec 2003 15:03:01 +0000 (15:03 +0000)]
- fix for AA of mirroring.
It appeared that the Osa vectors for view vector, and for rendered coord
had an opposite sign...
Ton Roosendaal [Fri, 12 Dec 2003 11:28:33 +0000 (11:28 +0000)]
- removed call to bzero, replaced with memset
(bzero seems to be old, not supported anymore, also not for windows)
- think I fixed the error compiling in Irix, for a correct cast now
(added parentheses around the subject for cast)
- changed call to ray_mirror, now included in the shading loop, just
before the addition happens for specular. That way specular is added
over mirroring. This changes the appearance quite some!
Ton Roosendaal [Thu, 11 Dec 2003 16:28:04 +0000 (16:28 +0000)]
- fix for error in octree traverse code, as appeared in sample provided
by Ztonzy. Error happened when:
- ray intersects in first node of traversal
- next ray should intersect in same first node as well
- no other nodes were accessed inbetween
It's a bit hard to explain! But the reason is in the optimize code
in top of ocread() function, where binary XOR magic speeds up. Here
some static variables needed a reset.
Martin Poirier [Thu, 11 Dec 2003 04:08:49 +0000 (04:08 +0000)]
Fixes in ray.c for linking under windows (seems lie bzero doesn't exist).
Shouldn't affect other platform if I did it correctly.
Martin Poirier [Thu, 11 Dec 2003 04:00:52 +0000 (04:00 +0000)]
Fixed bug #794
The displist needed to be updated
Kent Mein [Wed, 10 Dec 2003 21:19:09 +0000 (21:19 +0000)]
Update the build systems to include ray.c
Kent
Ton Roosendaal [Wed, 10 Dec 2003 20:41:53 +0000 (20:41 +0000)]
- Xmas special: shiny mirroring bells & whistles!
This is a revision of the old NeoGeo raytracer, dusted off, improved quite
a lot, and nicely integrated in the rest of rendering pipeline.
Enable it with F10-"Ray", and set either a 'ray-shadow' lamp or give the
Material a "RayMirror" value.
It has been added for 2 reasons:
- get feedback on validity... I need artists to play around with it if it's
actually useful. It still *is* raytracing, meaning complex scenes will
easily become slow.
- for educational purposes. All raytracing happens in ray.c, which can be
quite easily adjusted for other effects.
When too many disasters pop up with this, I'll make it a compile #ifdef.
But so far, it seems to do a decent job.
Demo files: http://www.blender.org/docs/ray_test.tgz
An article (tech) about how it works, and about the new octree invention
will be posted soon. :)
Note: it doesn't work with unified render yet.
Ton Roosendaal [Wed, 10 Dec 2003 19:01:26 +0000 (19:01 +0000)]
- Bug fix: lamp axis was not drawn at correct location. Was already wrong
since a long long time... :P
Ton Roosendaal [Wed, 10 Dec 2003 16:22:30 +0000 (16:22 +0000)]
- committed fixes for tooltips as provided by Bischofftep. Thanks!
Kent Mein [Tue, 9 Dec 2003 19:25:30 +0000 (19:25 +0000)]
Fixed error messages for saving jpeg files so its quite again.
(before I simplified it to return the result of the call to
imb_savejpeg turns out that makes it a little more verbose)
Kent
Ton Roosendaal [Tue, 9 Dec 2003 17:46:40 +0000 (17:46 +0000)]
- fix: SHIFT+CTRL+P didn't work (make parent without inverse)
- added: when start blender in debug mode (blender -b) it prints the depth
of framebuffer.
Ton Roosendaal [Mon, 8 Dec 2003 17:39:54 +0000 (17:39 +0000)]
- bug report #761
Subsurf, rendered in Wire, always displayed the 'optimal edges' version.
Added check for 'optimal' flag here, now it renders as it draws in 3d win
Ton Roosendaal [Mon, 8 Dec 2003 17:24:28 +0000 (17:24 +0000)]
- and another fix needed due to the change in view3d matrices...
This one is the UV coord calculate function for FaceSelect mode.
Ton Roosendaal [Mon, 8 Dec 2003 16:53:44 +0000 (16:53 +0000)]
- bug #766
the toolbox, editmode curve, 'edit' submenu had the wrong 'show/hide'
sublevel. Was more of a typo...
Ton Roosendaal [Mon, 8 Dec 2003 16:46:36 +0000 (16:46 +0000)]
- bug report Theeth, #772
When joining 2 unconnected control points in Curve/Surface (FKEY) Blender
crashed.
Was just assuming in this code that a knots vector array was there...
simple fix!
BTW: I think Theeth discovered here the oldest Blender ever, I could
track it back to old Traces code from 1992. :)
Rob Haarsma [Mon, 8 Dec 2003 15:13:00 +0000 (15:13 +0000)]
Corrected function name.
Jiri Hnidek [Mon, 8 Dec 2003 13:48:20 +0000 (13:48 +0000)]
- some warning removed
Jiri Hnidek [Mon, 8 Dec 2003 13:30:04 +0000 (13:30 +0000)]
- bug of hidden MetaBalls removed :-) (some problems with old TubeX/Y/Z can occured)
- MetaBalls/MetaElems with too small stiffness are not polygonized, but still can influence others MetaBalls/MetaElems
- better behavior of negative MetaBalls/MetaElems
Rob Haarsma [Mon, 8 Dec 2003 13:08:24 +0000 (13:08 +0000)]
Prints current blend filename in windowheader.
Matt Ebb [Mon, 8 Dec 2003 10:51:24 +0000 (10:51 +0000)]
* Renewed the constraints panel's design
Matt Ebb [Mon, 8 Dec 2003 10:48:28 +0000 (10:48 +0000)]
* Further general tweaking to UI controls drawing
* Improved TOG3 buttons to communicate functionality better
Chris Want [Mon, 8 Dec 2003 05:07:36 +0000 (05:07 +0000)]
A fix so that verts can be added or removed from a mesh with vertex keys
in editmode without damaging the mesh. Please test.
Ton Roosendaal [Sun, 7 Dec 2003 19:20:10 +0000 (19:20 +0000)]
- Solution for fixing plugins, which now runs without -ldl at OSX 10.2/3
Code from Peter O'Gorman <ogorman@users.sourceforge.net which has
been credited in the source.
Basically the dlopen() and dlerror() calls have been recreated wrapping
the standard OSX methods.
Names used are osxdlopen() and osxdlerror(). So no naming conflict will
occur.
Chris Want [Sun, 7 Dec 2003 19:03:43 +0000 (19:03 +0000)]
Introducing the 'quicky' make.
Sick of waiting for make to traverse all of those directories
when you only modified one little file? Well, enough of that nonsense!
Doing "make quicky=dir" (e.g. "make quicky=source/blender/src")
goes to that directory, compiles the stuff in there (and the
subdirectories), then instantly links blender afterwards.
Also has support for more than one directory using quotes, e.g.,
1 dir: make quicky=source/blender/src
2 dirs: make quicky="source/blender/src source/blender/blenkernel"
Ton Roosendaal [Sun, 7 Dec 2003 18:44:47 +0000 (18:44 +0000)]
- fixed texture paint mode... and that all caused by fixing another bug!
again - reminder to self - the 3d window leaves in ortho mode default,
and for evaluating it in 3d view you have to call persp(PERSP_VIEW)
Ton Roosendaal [Sun, 7 Dec 2003 12:55:18 +0000 (12:55 +0000)]
- committed in the 'hack' as mailed to committers list by Douglas B, which
he got from Nicolas Zinovieff, to solve the struct ID conflict with
AIFF. By including a #define __AIFF__ in the top of the files, the
blender includes won't get frustrated by an already defined struct ID.
should still be tested for 10.3 and other OSX installs!
Matt Ebb [Sun, 7 Dec 2003 06:05:08 +0000 (06:05 +0000)]
Default buttons drawing update
* Big code cleanup and re-organisation, cleaner drawing
* Button alignment now enabled for default theme
* Sliders tweaked and improved
* Tooltip shadow cleaned up
Todo: Alignment looks pretty, but at this stage, what it *means* is not clear or consistent. Need to work out some UI guidelines for when to and when not to use the alignment code.
Martin Poirier [Sun, 7 Dec 2003 03:44:36 +0000 (03:44 +0000)]
Fixed error in Face Normals toolbox. All the menu entries called the function to Recalculate Inside.
Michel Selten [Sat, 6 Dec 2003 19:17:13 +0000 (19:17 +0000)]
Added the qhull sources to the repository.
These files are needed by Solid.
I left out the generated Windows .exe files. If needed later on, I'll add
them.
Michel Selten [Sat, 6 Dec 2003 19:02:42 +0000 (19:02 +0000)]
Added the Solid 3.5 sources to the blender source tree.
This is a direct copy from the CD-ROM contents except for the generated
libraries for the Windows platform. If needed, I can add those later on.
(Those take up over 800 kb).
All files, including license files, documentation, examples and sources are
committed.
Martin Poirier [Thu, 4 Dec 2003 23:45:47 +0000 (23:45 +0000)]
Projectfile fix for new png.c file
Kent Mein [Thu, 4 Dec 2003 18:18:05 +0000 (18:18 +0000)]
This looks like a lot but its a few small changes.
Summary: standardized imageformat functions(make function names similar, and
parameters in same order where relavant), small code cleanups, and
added a description of how to add an image format to blender.
Kent
Specifics:
merged png_decode.c and png_encode.c to png.c and cleaned function calls.
fixed some spacing in IMB_imbuf_types.h
casting cleanups:
intern/amiga.c
intern/ham.c
intern/iris.c
Modified switch statements to have a default type to insure values are set:
intern/antialias.c
Initalization of some vars and make types similar.
intern/bitplanes.c
cleaned function calls, and changed if else to if's with return:
intern/jpeg.c
added {}'s in multidemensional arrays.
intern/matrix.h
Made a little cleaner to read, and matched above changes.
intern/readimage.c
intern/writeimage.c
Ton Roosendaal [Thu, 4 Dec 2003 11:37:39 +0000 (11:37 +0000)]
- added wire color theme usage for drawing edges in editmode.
Ton Roosendaal [Wed, 3 Dec 2003 16:13:58 +0000 (16:13 +0000)]
- fixed matrix conversion to make rgb -> bw images.
somehow this was mixed up, or forgotten to fix when endian issues were
solved in the past (1998)...
To check: red color should be 30% grey, blue 10%. This was switched,
making B&W images look unnatural.
Ton Roosendaal [Wed, 3 Dec 2003 15:44:11 +0000 (15:44 +0000)]
- another oldie! Bug 475, which was wrongly categorized by me as OpenGL
error... Jesterking report helped me finding the mistake! We found out
that pressing F12 while rendering is in progress, crashes...
Hi Yamyam,
I beg you to forgive me! Totally misread the report... the error was only
in pressing F12 *during* rendering, it even restarts a render then. This
happens always, no matter what is being rendered.
I found the code for renderwindow doesn't use queues to store events, like
in the rest of Blender, but immediately executes incoming events. This
means you can even press ZKEY (zoom) or F11 (hide) while rendering.
In CVS I've committed a patch that checks if Blender renders, before
allowing to execute the F12 event. Also now blocked is F3 (!) during render.
The other options (zoom, push window) still work.
-Ton-
Ton Roosendaal [Wed, 3 Dec 2003 15:39:19 +0000 (15:39 +0000)]
- fixed ridiculous old bug that didn't allow weightpainting with the
option "Area" in paint buttons set.
Apparently reevan forgot to check on some old vertexpaint globals
hanging around, preventing the routine from sampling the backbuffer.
Now weightpaint works identical to vertexpaint for 'area' or 'no area'.
Ton Roosendaal [Tue, 2 Dec 2003 18:39:32 +0000 (18:39 +0000)]
- fixed vertexpaint and weightpaint, which stopped working because of
previous fix for Transform Panel...
the convention that 3d window has to leave in 2d ortho mode also applies
on backbuffer now, which left painting routine confused.
A single call to persp(PERSP_VIEW) fixes this.