Commit Graph

2049 Commits

Author SHA1 Message Date
Ton Roosendaal
448d89ef76 Added edges in Mesh undo.
Note; whether or not edges are created is derived from original Mesh, the
one still residing in obedit->data while modeling.
2004-07-10 13:11:22 +00:00
Ton Roosendaal
73d4500517 Changed weird line in add_primitiveMesh() that caused cursor to flip back
to normal mousepointer while in editmode.
Was in code since 2.25...
2004-07-10 12:04:03 +00:00
Martin Poirier
ce4c291f42 Made effector strenght as big in the negative as in the positive. 2004-07-10 10:33:02 +00:00
Martin Poirier
2a8abfc143 Compressed the two particles effectors loop into one. It was rather stupid of me to do it as two at first, but it was the first thing that came to mind. Fixed now, so it will calculate much faster. 2004-07-10 09:17:25 +00:00
Martin Poirier
6c15a98e76 Fix metaball update bug when mirroring in object mode 2004-07-09 15:23:49 +00:00
Martin Poirier
c2a5da5cf7 Fixed for forcefield. It needed to add half of the acceleration as speed on each frame it affected.
Cleaned the GUI for effectors: Widen the panel and the buttons. Made the button text more conformed.
Added vortex field for particles.  Particles swirl around z-axis of the object. Little hackish, could be made better.
2004-07-09 14:39:06 +00:00
Ton Roosendaal
7ba95846ca Typing values in color picker got a mixup in but->func() usage... caused
weird values to be set after entering a value. Nicely solved now.
2004-07-09 09:21:37 +00:00
Ton Roosendaal
ec64e0d743 Two little fixes in administrating new Mesh edges. Solves crash when
joining newly created (Added) Mesh with others...
2004-07-09 08:15:57 +00:00
Ton Roosendaal
f77bc7eb7d Quite a large one this time... but now we have:
Edges in Mesh
- adds automatic when you use creases. For other situations; call the
  void make_edges(Mesh *me) in mesh.c. Of course, once in editmode the
  edges are automatically recreated.
- in F9 buttons you can add/remove edges too
- both for Mesh and DisplistMesh, so it speeds up drawing quite some in
  wireframe
- render for edges can't work... edges have no material nor tface nor col..
  so here still the faces are rendered in wire

Creases in Subsurf
- based on the code by Chris McFarlen
- main changes is that now edges are used, saving quite some data in file
- use SHIFT+E in editmode to set edges-sharpness. values go from 0-1
- in F9 buttons you can set draw-crease mode. It draws now blended from
  wire color to edge-select color (as provided in Theme)

Known issue: setting sharpness on 1 cube (subdiv 2) gives weird results
with some values... Chris, can you check?

Further; code cleanups, changing 0 in NULL when needed, no warnings, etc etc
2004-07-08 20:38:27 +00:00
Nathan Letwory
6757a8159b * fixed bug in rainbow color for material and world ipoview
* removed 32 channel limit (can now have 50, or of you know what number to change, 999 ;)
* added new IPOs: mirror fresnel and fac, transparency fresnel and fac, and glow factor transparent materials (add)
2004-07-07 08:49:33 +00:00
Brecht Van Lommel
2388cada01 Fix compile error: the 'log' function takes only one parameter: changed
log(xo, 2) to log(xo)/log(2).
2004-07-06 22:25:14 +00:00
Johnny Matthews
9c94728d89 This is the initial commit of a revamp of the sweep effects that goofster committed that was originally a sequence plugin from sirdude.
The changes from the original include the ability to add a blurred edge with a selectable width to the wipe and to rotate the effect.

Has these sweep types included already
-single
-double
-iris

These still need to be coded
-box
-cross
-clock
2004-07-06 19:07:13 +00:00
Ton Roosendaal
5b09bb1eb1 - Removed new outline drawing from vpaint/faceselect and other paint modes
- fixed tooltip drawing in color picker
2004-07-06 16:32:44 +00:00
Ton Roosendaal
181b970bf4 Fixes in colorpicker;
- click on palette didn't update button values
- the bottom 'palette' button now restores to old color
- H values scroll allways, also with black or white

Todo still:
- save in file (btw, i changed default colors to my pref :)
2004-07-06 12:49:57 +00:00
Ton Roosendaal
4321a8889e Colorpicker variant 2; One large field for S and V, and slider for H, like
Gimp has for example.

The previous picker is still as code there... ongoing experiments.
2004-07-05 22:15:27 +00:00
Ton Roosendaal
20dbb446ed Picker made slightly larger, and removed confusing "copy to" and "paste
from" buttons.

Now a click in palette is default: update the active color.
If you want to store in palette: hold CTRL while click.

This isn't optimal either, but at least better.
2004-07-05 20:45:41 +00:00
Ton Roosendaal
ba2081b21d Fixed NUM button code that it doesn't return halfway, but nicely proceeds
to end of the function to handle the exit requirements.
(returns where added for patch that makes NUM buttons into textbut on a
click in center)
2004-07-05 17:48:47 +00:00
Ton Roosendaal
fa86302aa3 Cleaned up pop-up menus for F10; edge settings and framing menu. 2004-07-05 10:56:13 +00:00
Ton Roosendaal
e804cf366a - oh, the protype for XORcircle... 2004-07-05 10:22:41 +00:00
Ton Roosendaal
a910ff343e - clipped selection circle in colorpicker to prevent it drawing outside
the color plane
- removed warnings from glutil.c, made circleXOR call become float instead
  of short
- fixed error in drawing text of buttons in pop-up menus, when zoomed small
2004-07-05 10:22:00 +00:00
Ton Roosendaal
3cade4dad6 Changed redraw of picker not to include the background, prevents flashing. 2004-07-05 09:21:22 +00:00
Nathan Letwory
0576268c22 * Added IPO for displacement, translucency and raymirror
* Cleaned out IPO #defines
2004-07-05 09:15:02 +00:00
Ton Roosendaal
cd47cfd3d1 New: color picker!
With a click on the 'COL' buttons (the ones showing RGB) a menu pops up
with three colorpicking fields and a palette.
The fields are the three planar intersections of a HSV cube, each allowing
choosing in the field without the field changing.

The palette is 'modal' unfortunately (couldn't find a simple working other
method) where the button "paste to color" denotes the state that click in
palette copies to edited color, and "copy to palette" means the active
color is copied into the palette...

Todo:
- saving of palette in file
- decide whether ESC leaves without changes...
2004-07-05 08:48:17 +00:00
Matt Ebb
c1ce82bd67 Directly edit number fields with a click instead of having
to use Shift-Click.

As before, clicking on the left side of a number field decreases, clicking on the right side increases, but clicking in the centre, on the text itself, starts editing the
value directly. Other behaviour like dragging left and right
is unchanged.
2004-07-05 07:52:32 +00:00
Joseph Gilbert
34ae24e37a - py docs update
- getMatrix(), properties for object class, some examples
2004-07-04 19:57:41 +00:00
Ton Roosendaal
b2d7f47b81 Made static particles working with a deformed Mesh, both for Lattice as
for Armature. Note: only works for subsurfed Mesh now!

Change in drawobject.c: Halo option on subsurf Mesh now draws points.
but using the original vertices...
2004-07-03 18:39:19 +00:00
Willian Padovani Germano
cbe7471905 Interface:
- added submenu "Scripts" in both View3D->Object and Mesh menus.
  Put them on top (it's better to follow some guideline, so users don't have to search for "Scripts" submenu in a different position in each menu), feel free to change.
- added button 'previous win' to SpaceScript, makes accessing buttons win, for example, much faster.  Maybe all spaces could have this button.

BPython:
- added Window.EditMode(), to check, enter and leave edit mode.  Scripts that change mesh data need this to leave edit mode before making changes to the active (G.obedit) mesh, of course.
- updated script bevel_center to use the above function and also popup an error msg if the active obj is not a mesh.
- doc updates, minor fixes.

Forgot to mention in my previous commit that I also updated the "-P" command-line option (for running script files) to be able to run already loaded Blender Texts, too.  So, if you have a script called 'Text' in foo.blend, you can run it with blender foo.blend -P Text .
2004-07-03 17:28:15 +00:00
Ton Roosendaal
5c543698c9 Three in one:
- textures: added support for new mixers (div, diff etc) to work on the
  other map-to channels too, like ref or spec
  Also it works on lamp and world textures
- brought back uncommented line of code that was removed by leon, to have
  particle motion based on textures
- recoded the glPylonOffset hack to be nice function, this for future
  testing.
2004-07-03 14:18:21 +00:00
Willian Padovani Germano
9282827720 New scripts:
- hotkeys, obdatacopier and renameobjectbyblock, all from Jean-Michel Soler (jms);
- bevel_center by Loic Berthe, suggested for inclusion by jms;
- doc_browser, by Daniel Dunbar (Zr)

  Thanks to them for the new contributions!

  (I included doc_browser at 'Misc' because only users interested in script writing would actually use it, but it could also be under 'Help'.  Opinions?)

BPython related:
- Added scriptlink methods to object, lamp, camera and world.
- Object: added object.makeTrack and object.clearTrack (old track method).
- sys: made sys.exists(path) return 0 for not found; 1 for file, 2 for dir and -1 for neither.
- doc updates and fixes.
- made ONLOAD event work.  G.f's SCENESCRIPT bit was being zeroed in set_app_data.
- Blender: updated functions Load and Save to support the builtin importers and exporters besides .blend (dxf, videoscape, vrml 1.0, stl, ...)
- Draw: added mouse wheel events.
- Scene: added scene.play to play back animations (like ALT+A and SHIFT+ALT+A).  Makes a good counter, too, when the 'win' attribute is set to a space that doesn't "animate".

The scene.play() addition and the fix to ONLOAD scriptlinks is part of the work for a Blender demo mode.  It already works, but I'll still add support for Radiosity calculations and fix a thing in main(): it executes onload scripts too early (BIF_Init), giving funny results in alt+a animations and renderings when firing up Blender.  Loading after the program is up has no such problems.  When I finish I'll post examples of demo mode scripts.
2004-07-03 05:17:04 +00:00
Ton Roosendaal
90d4f7a3c1 Added new operators for "MapTo" panel as suggested & partially coded by
Kent Mein. So next to the mix, mult, add, sub we have now:

- Div: divides by texture color
- Screen: is like Mult, but works opposite (makes lighter)
- Diff: the difference between texture color and material
- Light: if texture is lighter it shows (per component)
- Dark: if texture is darker it shows (per component)

Next step: add this for specular and mirror, and the other channels...
I commit it now because it also fixes error in previous commit.
2004-07-02 22:29:06 +00:00
Ton Roosendaal
326f3c3d6a Fixed rendering of image textures with alpha... it gave ugly dark outlines.
Please note the following:

- pictures need to be saved as 'premul' sky render if you want to use it
  in Blender as texture
- but for alpha-over in sequencer it has to be 'key alpha'...

This inconsistancy needs to be solved.. for example as option for both
texture as sequencer.
2004-07-02 20:49:08 +00:00
Ton Roosendaal
265450dcb5 Added new exported render calls in stubs... so player compiles again! 2004-07-02 13:51:33 +00:00
Ton Roosendaal
ef9fa4bf50 Bug #1411
"inserting keys in editmode didnt work on newly created Meshes"

Found out the error was in code committed by Hos in december, when
he added feature to copy newly added vertices (or remove) when editing
vertex keys. In his commit he already noted "please test" :)

Error was that newly created meshes didn't give a correct first key.  For keys
to work in 2.32 and 2.33 you have to leave editmode at least once, or
insert keys outside of editmode.

The fix was fairly simple, just checking for an empty first key.
2004-07-02 12:44:32 +00:00
Ton Roosendaal
ea7e5c9f41 Forgot to add code for copying/paste functionality Materials. With new
ColorBand data added in Material that needs to be tackled corectly.
2004-07-01 18:06:27 +00:00
Ton Roosendaal
30251dbc13 Report #1401
Division by zero in calculating render coords... only happens for
Wire material AND having face-less edges. Then the normal is zero, and
some calculations can't happen correctly.

(error in rendercore.c, other files committed was because of removed and
cleaned up enters)
2004-07-01 16:15:22 +00:00
Matt Ebb
7fc5114408 Corrected a misleading confirmation message when deleting a bone ("Erase selected bone", not "Erase selected armature") 2004-07-01 09:31:12 +00:00
Ton Roosendaal
d4755e8c5c Fixed draw error in panels, the header was overdrawn with panel background.
Only visible when panels are not transparent.
2004-06-30 21:59:12 +00:00
Ton Roosendaal
a8ef804146 NEW: Ramp shades for diffuse and specular
http://www.blender3d.org/cms/Ramp_Shaders.348.0.html

Material color and specular now can be defined by a Colorband. The actual
color then is defined during shading based on:
- shade value (like dotproduct)
- energy value (dot product plus light)
- normal
- result of all shading (useful for adding stuff in the end)

Special request from [A]ndy! :)
2004-06-30 18:54:09 +00:00
Kester Maddock
c9b4585618 Switch to using floats instead of shorts for normal data - they're supposed to be faster.
Also use shorts instead of ints for the index data, since index arrays are limited anyhow.
2004-06-30 13:41:19 +00:00
Kent Mein
09d3007b71 Two stupid fixes for warnings:
First one was for drawview.c I gave some types to things that didn't have them
example
-static void view3d_panel_background(cntrl)     // VIEW3D_HANDLER_BACKGROUND
+static void view3d_panel_background(short cntrl)       // VIEW3D_HANDLER_BACKGR

For edit.c I added a newline to the end of the file.

Weee

Kent
2004-06-29 20:34:10 +00:00
Jiri Hnidek
7000bebc4b - added octal tree node optimalization of MetaBall polygonisation
polygonization of 512 MetaBalls:
   - version 2.33a:      76 s
   - current cvs version 8 s

- button "Never" is added in button window: Metaballs are polygonized only during render time (it is useful for particle animation) http://e-learning.vslib.cz/hnidek/misc/bowl_metaballs.blend
2004-06-29 17:10:13 +00:00
Ton Roosendaal
b460748777 Metaball normals were flipped again... thanks jiri for pointing me to it... 2004-06-28 11:14:58 +00:00
Alejandro Conty Estevez
7febd4547d Finally, fixed the evil dll problem. It works now
on my win32 box with my tests without crashing.
But be aware! There may be more of them watching
us, waiting for a moment of distraction, nobody
is safe.
2004-06-27 20:10:20 +00:00
Ton Roosendaal
b8f73db964 added fflush(stdout) for printf updates while calculating particles 2004-06-27 14:05:08 +00:00
Ton Roosendaal
e750478ce3 The revised patch from Leon for new particle effects.
New is that objects can have a force field, and Meshes can even deflect
(collide) particles. This is in a new sub-menu in Object buttons F7

The full instructions where on the web, Leon mailed it me and I will put
it in CMS tomorrow. For those who like to play with it now, here are demo
files:

http://download.blender.org/demo/test/

Quite some changes where in the integration though... so previous created
particle deflectors will not work. Changes to mention now are:
- gravity is renamed to 'force field'
- force field and deflector options are in Object now, not in Mesh
- the options also have its own struct, doesnt add to Object by default
- force fields are possible for all object types, but only work on center.
  So empty objects are typical for it.

Work to do:
- add draw method in 3d win to denote forcefield objects
- check on the UI (panel with different size?)
- add 'recalc' button in deflector panel
2004-06-26 18:18:11 +00:00
Ton Roosendaal
263d0823d3 Changes in code to allow double sided energy, but it's not possible
to activate it. Added comment in code how to enable it for those who
like to play (search for translu)

What doesnt work - according to me not satisfying - is fact that radiosity
hemicubes alias badly on short distances, so interior light doesn't spread
well.
2004-06-26 18:03:57 +00:00
Joseph Gilbert
2a6c8a2797 - added support for getting worlspace and localspace matrices from objects through python. Add cvars matrixWorld/matrixLocal.
- credits to Campbell Barton
2004-06-26 14:38:56 +00:00
Kester Maddock
4c53f38756 Minor Fixes:
Better use of booleans for python
#include fixes for Windows
Python Doc fixes
Use the farthest vertex as the face position when z sorting faces. (Camera is on -z axis!)
2004-06-26 09:15:41 +00:00
Alejandro Conty Estevez
f69cc652e2 minor changes to sync with yafray cvs interface, getting closer
to the clean msvc build.
2004-06-24 21:17:52 +00:00
Ton Roosendaal
855c6861ef The other fix for drawing XOR lines, now for dragging window edges too.
Main 'improvement' is it not using the gl_util function, but drawing it all
itself, and thus minimizing the amount of flush calls (factor 4).
2004-06-24 15:12:45 +00:00
Willian Padovani Germano
d5b4fb5736 Scripts:
- Added KlopUtils by Carlos Lopez and Batch Object Name Edit by Campbell Barton (thanks both!)

BPython:
- Fixed things I recently broke in Blender.sys, added Blender.sys.join(dir, file)
- doc and other minor updates
2004-06-24 15:03:08 +00:00
Ton Roosendaal
e306beec04 Screen edge split routine now uses 4 times less glFlush calls.
Is a testing commit... might be removed or further worked out.
2004-06-24 14:53:00 +00:00
Willian Padovani Germano
61efb63b0c BPython:
- Added function Blender.Save(filename) to save .blend files.
- Added scriptlink-related methods (get, clear, add) to Scene and Materials.  Will still add method remove and add these methods to World, Object, Camera and Lamp.
- Updates and small fixes in docs.
2004-06-24 09:43:13 +00:00
Roel Spruit
8a0cd0bc97 Added another Sequence effect: the wellknown Glow effect. 2004-06-23 22:11:57 +00:00
Ton Roosendaal
eec72e3d4b Feature requests:
- usage of relative paths "//" now can be controlled with a button in the
  fileselect header
- relative path support added for linked Library files

Note: in oops window you can see the library file names, select the last
icon button in header to show the blocks.
2004-06-23 18:48:55 +00:00
Roel Spruit
629e526b25 - Added correct Writing/Reading of the new Sweep sequence effect (Thanks Ton, where would I be without you)
- Sweep effect updates after you change the type of sweep now.
2004-06-23 18:22:51 +00:00
Kester Maddock
9fa857b5c7 Fix a compile error in data conversion: double declaration of some vertex attributes. 2004-06-23 12:13:09 +00:00
Kester Maddock
38de9559bc Fix for reflection mapping unlit faces: normals were not being sent, hence reflection maps weren't being rendered properly (bf-bug #1385)
Set the diffuse material colour - lighting brightness should match blender better. (bf-bug #1385)
2004-06-23 01:12:11 +00:00
Ton Roosendaal
b506d93f0e Report 1387 (todo)
Added consistant zoom in ipo, oops, sound, sequencer, nla, action. This
conforming the new user setting too (cont, dolly, scale).
2004-06-22 14:35:35 +00:00
Ton Roosendaal
01bb620574 Fixed another oldie; when loading file the totals counter (as displayed in
info header) didn't update. Also removed convention it counts from active
window-layer, now it uses scene layer.
2004-06-22 12:59:53 +00:00
Ton Roosendaal
f2be1db99d Little feat request: the rendertime disappeared from header after a
rendering; now it's a permanent part of it.
2004-06-22 12:02:19 +00:00
Jacques Guignot
f89f32d420 added a new function to the World module : GetActive(), which returns the world associated to the scene, or None if no such world exists 2004-06-22 11:38:58 +00:00
Ton Roosendaal
59433aa42e Report #1391
The work i did end of may on render normals (displacemap especially)
caused refraction code to work wrong... took a while to find out, but
just removed a couple of lines too much.
Added clear comment there what it is, and what danger of removing is!
2004-06-21 17:58:53 +00:00
Ton Roosendaal
e26c5a7676 Report #1376
Rayshadow didn't use lamp option 'layer' correctly. Objects not in
lamp-layer now also don't get shadows (nor light).
2004-06-21 16:07:50 +00:00
Ton Roosendaal
52bf2db342 Fix: creating a Mesh primitive UV Sphere, used a remove doubles to get
rid of the seam (it's a Spin command!). The threshold value for remove
was set on 0.01, giving too easy errors. Now its 0.0001
2004-06-21 14:40:31 +00:00
Willian Padovani Germano
a41759cb8b - Scripts:
Campbell Barton updated his Wavefront OBJ scripts and Ben Omari updated his DirectX 7 and 8 ones (thanks both).  The other listed scripts had minor updates to accomodate the menu changes.
- Scripts in menus:
  renamed Tools to Object, Generators to Add, and Modifiers to Mesh (Metaball, Curve, Surface can be added later), to integrate better in the interface.
- Fixed a bug in Blender.sys.makename: last letter of file extension was being cut out.
2004-06-21 12:01:23 +00:00
Alejandro Conty Estevez
625e7fb12c These are changes sent by Luis_F who got this working on win32. Only applies
to that platform and fixes a problem findind yafray dll's
2004-06-21 08:17:05 +00:00
Ton Roosendaal
f778d83155 Bug fix 1326
When changing subsurf level, in shaded mode, and with Mesh that has more
users... the shaded displist of the other meshes are corrupt, potentially
causing crash.

And: small improvement in select-outline: when drawtype-extra Wire is set,
it skips it. Not needed, looked a bit ugly.
2004-06-19 18:23:22 +00:00
Ton Roosendaal
84caaf5aca Fixed error in previous commit, that skipped drawing non-basis Mballs.
Thanks Jiri for pointing me to it!

New: removed frontbuffer draw of selected object for solid/shaded mode.
It serves no purpose anymore.
2004-06-19 17:35:37 +00:00
Ton Roosendaal
830028560e Tooltips:
- lowered tooltip-update delay loop to 0.02 sec (was 0.05), which showed
  up 'trails' while going over pulldowns with tooltips
- changed tooltip calculation for size, it was drawing the labels far too
  large (height). Made sure text prints in middle too.
- by default tooltips print 12 pixels below button now
2004-06-19 14:37:25 +00:00
Ton Roosendaal
6fdea0ffe7 Popular request: the floating panels (NKEY) now close on a 2nd NKEY command.
This for all current NKEY menus by default. Can be standard for each hotkey
controlled Panel from now on; use toggle_blockhandler() for it.

Another popular request: hotkey enabled Panels now optionally reopen on
the previous location, instead of under mouse. This option "Pinned" is a
user option now. Optional for later; have it as per-panel option... dunno!

The last request, close on mouse-exit, won't be implemented, this intrudes
with Panel consistancy, and is pretty OK solved with NKEY-NKEY now.
2004-06-19 12:25:28 +00:00
Ton Roosendaal
8617ce5141 - added Font object to have outlines on Solid draw + selection
- Font object didn't support draw xtra wire yet
- removed drawing the circles from MBall object, except in editmode
- little cleanup in draw_object() call, it had a weird exception for
  mball drawing
2004-06-19 09:35:23 +00:00
Roel Spruit
a31dec3712 added a new Sequence Effect: Sweep.
this consists of 22 different ways to sweep from 1 strip to another. For you windows lovers: it's like "Blinds" in Powerpoint :)
- in the NKEY menu you can choose which type you want perform, vertical, horizontal, in/out etc. it's too much to decribe.

Credits for this go to Kent 'Sirdude" Mein who coded the sequence plugin I stole the code from.

To allow certain sequence effects to have settings, I also added a "varstr" void pointer to the Sequence DNA, that can point to a special struct for each effect. This is similar to how plugins are handles.

more neat effects to come....
2004-06-18 22:53:06 +00:00
Johnny Matthews
d222422c7f This patch makes the vertex loop select tool only select edges which are part of 2 faces, this cleans up some incorrect selections the tool was making around areas in the mesh where faces had been deleted.
closes bug 1343

guitarGeek
2004-06-18 20:04:39 +00:00
Johnny Matthews
ace24ac5b4 This is a bandaid for a logic error in select_vertex_loop() that prevents an infinite loop in some cases. A fix for the logic error will come when I find the error :)
guitarGeek
2004-06-18 17:50:49 +00:00
Roel Spruit
401d9ef738 Added the possibillity of naming sequence strips in the sequence editor. previously this was not possible for all types.
- Change the name of a strip in the NKEY menu of the strip.
- If a strip HAS a name, it will be displayed in the strip, instead of all that garbage that was previously there (image locations, lengths, whatever)

Still TODO: while adding new effects to the sequencer I will also add this for effect strips. at the moment it's not clear yet what should go in the NKEY menu.
2004-06-18 15:04:27 +00:00
Ton Roosendaal
4861dbbe50 Scene.c: added missing code to copy base to object flag
Drawobject.c: added wireframe outline for selected solid objects. needs
some feedback though, at my system it is quite slow.
2004-06-17 18:31:42 +00:00
Alejandro Conty Estevez
5fb7fbe391 NaN makefile fix for yafray dir and typo corrected on "xml" button tooltip 2004-06-17 16:34:27 +00:00
Alejandro Conty Estevez
cfbce399aa These are changes necessary for building with msvc in a near future.
Just making sure memory is always allocated and freed in the same
binary  object, which seems to be mandatory on msvc if you don't have
the comercial version. If you are using this code you need to
syncronize with yafray cvs also, or it won't work. Binaries for os x
are updated in the link I gave in my last commit.
2004-06-17 11:24:30 +00:00
Ton Roosendaal
b106d1b8b6 Added Panel support in Sequence window, and converted old Nkey menu for it. 2004-06-16 20:25:56 +00:00
Alejandro Conty Estevez
ed86852f7e New export through plugin scheme for yafray. It is working on linux and mac os x
Needs latest yafray, you can get it from cvs, but I have also binaries
for os x here:

http://www.coala.uniovi.es/~jandro/noname/downloads/yafray-0.0.6-3.pkg.zip

To use it, go to yafray panels (global settings) and uncheck the "xml" button.
That would tell the export code to avoid xml export and use the yafray plugin
instead. You'll see the render being draw while running and you can even stop it
with ESC key.

Since I'm sure problems will appear, expect updates soon.
Remember: does not work on win32
2004-06-16 18:44:12 +00:00
Ton Roosendaal
54f9086d3c Restored oldstyle zoom in/out, and added a new userpref for denoting zoom
types:

- Continue: is default, old style
- Dolly: is like previous, but not continuous
- Scale: is the new method. Name is based on fact it scales view
2004-06-16 13:31:32 +00:00
Kester Maddock
4091851043 Replace all glFinish() with glFlush().
This is supposed to fix gradual slowdown of Blender interface on ATI cards.
2004-06-16 11:34:45 +00:00
Willian Padovani Germano
ddec3db89d - New Blender.Draw method by Campbell Barton (Cam / ideasman):
PupStrInput, a wrapper for the Blender String popup (thanks!)
- Fixed bug #1374 reported by Gabriel Beloin (gabio, thanks too):
    http://projects.blender.org/tracker/?func=detail&atid=125&aid=1374&group_id=9
    There was a minor mistake in the import menu: vrml called dxf and vice-versa and shortcuts were wrong (removed them).
- Doc updates, minor updates elsewhere.
2004-06-16 01:18:57 +00:00
Jacques Guignot
23165676b7 updated documentation 2004-06-15 16:17:25 +00:00
Willian Padovani Germano
467311ad34 - New script:
Wim Van Hoydonck contributed the famous Knife script (put under Modifiers group) developed by Stefano Selleri and himself (thank to both!)
- Added helper function Blender.sys.makename, updated docs and script ac3d_export to use it (shall update other exporters too):
  this function is just a simple helper to format a filename as needed (change extension, strip dirname, it defaults to use G.sce as path).
- Added a test method: Blender.Scene.getScriptlinks(eventName):
  just testing, if this path proves useful other functions will be added and made general, for objects, etc.
2004-06-15 04:16:30 +00:00
Matt Ebb
73642b2a42 * Floating panel cosmetic tweaks
* Minor language/label cleanups I missed first time around.
2004-06-14 13:07:53 +00:00
Jacques Guignot
de9e455088 added a [get/set]Range function.
Updated documentation accordingly.
(suggested by Stephane SOPPERA, tks!)
2004-06-14 09:24:50 +00:00
Jacques Guignot
8e48c5c412 updated Metaball doc 2004-06-14 08:55:45 +00:00
Jacques Guignot
9b2626f232 added a new function to the Metaball module, (tks Jiri!) : getMetaElemList
added a new class : metaelem class
2004-06-13 21:26:50 +00:00
Ton Roosendaal
d56315aa18 Bug 1335
Displace mapping + Map-Input using Object wasn't working. This caused
by the inverse matrix of an Object potentially not being calculated when
displace was calculated.

Solved by moving imat calculus to the top of the main function.

Yafray note: the convention to hack out all transformations from
renderconverter could be implemented more elegant, by moving this to
the yafray section (and just matrix-transform back). Makes code less
unreadable, but also support displacement then (and might solve other
errors).
2004-06-13 19:30:56 +00:00
Ton Roosendaal
7f3dcd7c64 Bug 1349
Envmap render error; when no (f10) envmap option was used, it could give
a 'stripe' effect based on a non-initialized global value. Only happens
for transparant layers...
2004-06-13 17:40:25 +00:00
Ton Roosendaal
694ed26f8b Fix for #1355
Recalculate normals (mesh editmode) had some weak points, as demonstrated
in the bug report sample file. It appeared to be 2 aspects that could be
simply fixed:

- for calculation of the most outer face (to set normal outside) it used
  a manhattan distance. making it real distance helped quite some
- but most important: the routine only took triangles into account, which
  didn't work proper with very irregular quads, especially with non-flat
  quads. It now calculates both trias in a quad individually.
2004-06-13 10:18:32 +00:00
Joseph Gilbert
e18194d2ca - update to SCons for Property support 2004-06-11 13:17:36 +00:00
Joseph Gilbert
3a816f1c30 - new internal Property module
- Object support for add/remove/modify object Properties
2004-06-11 13:15:50 +00:00
Willian Padovani Germano
648a2d3819 Script menus:
-- new try so that scripts place their guis and file selectors in proper places:
     should be ok now for any but the really weirdest screen layouts, will be updated when scripts are added to other menus in the interface.
2004-06-11 09:17:49 +00:00
Matt Ebb
79c00d658e * Added a spot for scripts to register themselves in the Help menu
* Gave the spiffy new 'System Information' script a new home there
2004-06-11 02:39:22 +00:00
Matt Ebb
d34f89b755 * Edited and consistent-ified the File->Import menu item labels and fileselect button labels, as discussed on the forums.
* Added items for importing DXF, VRML, etc. in the File->Import menu, that just call the normal Open function. Most people don't even know that you can open these formats through the normal Open fileselect, so this will make it more obvious.

* Removed the 'Export Selected' menu, and put poor old lonely STL in the Import and Export menus too. Most of the exporters export only the selected object anyway, so it's not really a necessary distinction to make.
2004-06-11 02:12:37 +00:00
Willian Padovani Germano
a23c6a71da - small updates to scripts and bpython docs, also fixed two warnings;
- added function Blender.sys.exists(path) to check if a given file exists;
- forgot to mention: in my previous commit the blender.html file was also updated slightly.
2004-06-10 15:14:49 +00:00
Willian Padovani Germano
a6d077bae2 Scripts:
- tiny updates for better behavior, unix line endings, cvs Id tags;
- Updated DX7 exporter (thanks to author Ben Omari who's also working on a DX8 one);
- added sysinfo script;

Interface (scripts):

- changed behavior for which win is chosen for script guis:
    Now there's a smarter order, guis will use either:
    - Scripts win
    - Buttons win (if not a script from groups Wizards or Utils)
    - Text win
    - Closest bigger area
- Added a button to the scripts header so that it's faster to return to the buttons win (this can be made general), if that was the previous win used.
2004-06-10 03:27:46 +00:00
Kent Mein
7ff5c16a02 This fix is thanks to: hangman4 (Thomas Power)
Basically needed a fflush on the file after all of the writing.
This closes out 1080

Kent
2004-06-09 19:49:43 +00:00
Kent Mein
57fc443fe4 Fixed part of write a bmp file, its still truncating the image slightly
however this fixes another problem.  (Basically  the offset wasn't
being computed correctly.
This is for bug: 1080

Kent
2004-06-09 19:27:48 +00:00
Kent Mein
53e1b83f1e updated NAN_PYTHON_VERSION to 2.3 for all platforms...
Solaris and a bunch of the others were out of date....

I guess we should change them back for platforms that don't work out
with 2.3 but I'm guessing that things will get updated better this way
then asking everyone to update their own platforms.

Kent
2004-06-08 15:47:19 +00:00
Jacques Guignot
21580bf21c new function for the Metaball objects : addMetaelem, which allows users to create Metaballs from python.
modified doc/Metaball.py to add this function
modified Object.c to allow the creation of Metaball objects
2004-06-08 07:27:37 +00:00
Willian Padovani Germano
61bb158291 BPython docs: small formatting fixes, basically, so that epydoc can generate dvi, ps and pdf versions. 2004-06-08 04:41:02 +00:00
Kester Maddock
942a68da07 Add the separate spec colour definitions! 2004-06-07 11:57:10 +00:00
Kester Maddock
c16444e624 Python updates:
Added scene module
2004-06-07 11:03:12 +00:00
Kester Maddock
b468bf726c Lighting updates:
Added specular after texture.
Added Light properties: Negative, No Diffuse, No Specular, Quad, Quad2
2004-06-07 11:01:31 +00:00
Willian Padovani Germano
b82be27659 Bundled scripts:
-starting updates and new additions for Blender 2.34:
  Some of the new scripts require Python modules not builtin with Blender, so you either need a full Python install or the needed extra modules.  This is an ongoing work, there should be more scripts, better testing and also proper ways to tell users they don't have all expected modules.  It's expected that Win users won't need full Python installs, since we can provide a minimal zip with the needed modules from 2.34 on.

Thanks to Anthony D'Agostino (scorpius), Jean-Michel Soler (jms) and Campbell Barton (Cam / ideasman) for donating the scripts now added / updated.

BPython:
-added two new script menu groups: Tools and Utils.  We still need to find places elsewhere in the gui where the groups can be put.
2004-06-07 01:34:15 +00:00
Stephen Swaney
a703837179 Replace deprecated methods from old api:
PythonReturnErrorObject
  PythonIncRef

Fix some compiler warnings about missing initializers
in method tables.
2004-06-06 22:42:51 +00:00
Stephen Swaney
d97e3e5527 patch for bug #1347. IpoCurve.evaluate() missing/disappeared.
Contributed by Philip Wainwright.
2004-06-06 19:42:12 +00:00
Chris Want
37ac685951 Fixing something else broken broke: The fix for "no action == crash"
prevented rvk editing to work in the action window.

Please not that "if (act) {" (Does the object have an action? Currently
only true for some armatures) and "if (key) {" (does the object have
rvk's keys? Currently only true for meshes) are never both true at the
same time so in the following snippet, the function foo_key() never gets
executed:

if (act) {
  if (key) {
    foo_key();
  else
    foo_bar();
  }
}

Better is this:

if (key) {
  foo_key();
else if (act) {
  foo_bar();
}
2004-06-05 14:59:30 +00:00
Chris Want
7d6f4cd67f Fixing something broken broke: ICON_BLOCKBUT_CORNER is not defined
anywhere.
2004-06-05 14:46:38 +00:00
Matt Ebb
25c9dd464e * Fixed a crash in the action window when attempting to manipulate keys with no action loaded.
This addresses bug #1354 - Thanks to gabio for the report
2004-06-05 07:13:05 +00:00
Matt Ebb
3038507b1b * Better error checking with apply deformation / make duplis real in the toolbox (blame it on ugly apply_object() )
Addresses bug #1348, thanks wavk for the report
2004-06-05 06:52:14 +00:00
Matt Ebb
506b78bfbb * Big, mundane clean up and edit of (error/ok/etc)
messages and pupmenu()s. Edited spelling and grammar,
 stylistic consistency, etc.

I added the guidelines and rationale that I used to the
 CMS here:
http://www.blender3d.org/cms/Language_and_terminology.338.0.html

Next step is to get icons in there, to make it easier to see
 at a glance what sort of message (and how much attention
 should be paid to it, or if it can be dismissed with a flick
 of the mouse, eg. boring remove doubles notifications)

mockup: http://mke3.net:9000/blender/ui/controls/error_ok_icons.png
2004-06-05 05:55:15 +00:00
Kester Maddock
4b544c75c0 blenderplayer target for SCons.
Would someone on MacOSX please check the bundle creation.
2004-06-04 12:58:46 +00:00
Stephen Swaney
7bf6864360 In Object.select() make the selected object the active object.
Update by Campbell Barton to his previous patch.
2004-06-04 07:52:06 +00:00
Kester Maddock
44f45894c2 Miscellaneous Fixes:
Add Python Mapping method to CListValue
Fix Bernoulli bool distribution python method for random actuator
Fix Python IpoActuator methods setProperty and force acts local
Make data objects private
Better sort method for polygon materials - much easier to understand
2004-06-04 03:00:13 +00:00
Kester Maddock
4ff321d507 Fix bug #1334: Crash with Python/GameEngine when the script has syntax errors.
When Python compile fails (eg syntax errors) skip the execute stage.
2004-06-04 02:10:58 +00:00
Kent Mein
f41c926a12 deleted redefinition of var that is passed in.
Kent
2004-06-03 19:59:34 +00:00
Stephen Swaney
2b7e35b8e7 bugfix #1345. Curve.isNurb() segfault fixed. 2004-06-03 16:23:51 +00:00
Matt Ebb
630de827d7 * Tiny almost-insignificant tweak to the curvature of button drawing 2004-06-03 14:30:12 +00:00
Matt Ebb
5926231d12 * Added 'Transform' menus to Ipo, OOPS, Action, NLA, and
Sequence spaces

* And a few small tweaks
2004-06-03 14:29:14 +00:00
Kent Mein
94042b0fef Cam's patch to enable parenting in the OOPS menu.
Kent
2004-06-03 14:26:44 +00:00
Kester Maddock
bc329a57f9 Fix for MSVC compiler. ;-) 2004-06-02 13:34:58 +00:00
Kester Maddock
cce2180e4b Do a databrowse window for sound actuators when necessary. 2004-06-02 13:17:39 +00:00
Kester Maddock
976e3a1824 Updates to GamePython Reference.
Added Actuator documentation.
2004-06-02 12:43:27 +00:00
Stephen Swaney
474ec217ae new Object.select() and Object.isSelected() methods to manipulate the
selection state of Objects.
Contributed by Campbell Barton.
2004-06-02 06:19:56 +00:00
Chris Want
931b382d76 Fix for the IK Assertion bug when the IK constraint on a bone
points to the armature that owns the bone and the subtarget
bone for the constraint is invalid.

Thanks to Stephane Soppera for tracking this one down.
2004-05-31 13:21:33 +00:00
Kester Maddock
0dfc3a3b78 Use epydoc for generating game python reference (like the bpython guys) 2004-05-31 13:06:04 +00:00
Ton Roosendaal
4f457fa277 Limit for Normalise() call was 0.000000001 or so. This is still far too
big, since a float can go to 10^-37. And, this value is still squared, so
a square root will not frustrate it.

Limit now is 10^-35, fixing disappearing faces in extreme small object
thats extreme close to a camera. (thanks OOPz!)
2004-05-31 12:08:50 +00:00
Jiri Hnidek
2a41593932 - added some "Transform Properties" for MetaElem (Metaball in edit mode, N key). It is locx, loxy, locz, dx, dy, dz and stiffness 2004-05-30 14:12:14 +00:00
Kester Maddock
d38329b5aa Added Python module for Lights.
Added attributes to the vertex class.
2004-05-30 11:09:46 +00:00
Kester Maddock
b97c77df2b Check for zero normal vectors in the clip planes (if eg Python has set a strange projection matrix)
Fix the transformation of the frustum bound sphere to world coordinates.
2004-05-30 11:04:26 +00:00
Ton Roosendaal
62c333a562 report #1338
Switched order of routines for displacement and autosmooth, where the
autosmooth will be last now. This prevents displaced (loose) faces, and
might give attractive sharp edges in other cases too.
2004-05-29 19:46:46 +00:00
Ton Roosendaal
d2dbc96b81 bug #1340
Key alpha (render) set alph component at '1' for sky... this is an old
convention from NeoGeo days, and I have absolutely no clue whatfor...
maybe for some antique amiga iff format or so. Made it zero now.
2004-05-29 17:33:30 +00:00
Ton Roosendaal
690a430bcb Counter of mballs, before polygonize, had error in taking linked mball-
data into account, causing errors modeling.
2004-05-29 17:00:51 +00:00
Ton Roosendaal
dbfe3daec3 Oh, the fix is an addition of a OB_NEG_SCALE flag in ob->transflag, which
is calculated in where_is_object.
Negative scale is found by a cross product of first 2 rows in matrix, and
comparing that (dot product) with third row.
2004-05-29 16:22:07 +00:00
Ton Roosendaal
6b51c684f1 NEW! Blender now displays flipped (negative scaled) Objects correctly in
OpenGL draw.

(BTW: the previous commit also solves raytrace errors with negative scaled
objects...)

Further a cleanup of displaylist flags and object/base flags. The #define
ACTIVE is moved to filesel.c (only used here).
The GONNA_MOVE #define got a OB_ added in front.
2004-05-29 16:17:46 +00:00
Ton Roosendaal
59dad6aefc Recoded the methods how normals get corrected and flipped during render
conversion. Old method tried to solve it per object, detecting a flipped
matrix. Since we have displacemapping and raytracing this is too inaccurate.
Also, flipping normals should alsways result i correct flipped vertex-
normals too.

Solution is to completely recalcuate the 'puno' (vertex normal) flags in
renderHelp.c now (set_normal_flags). The face normals themselves are not
flipped until that stage.

Second major improvement involves the calculation of correct splitted
triangles, when a quad is not flat. It now creates triangles based on the
vertex normals, which have actual information on surrounding geometry, thus
resulting in much smoother results.
Without this you get errors in ray-shadow, with light shining almost
parallel to a face. But again, displacement mapping improves with it too.

Third fix is that by removing normal flipping from displace code the result
is much better now.
2004-05-29 16:14:34 +00:00
Ton Roosendaal
993a89e2a5 Bug fix 1332
EnvMap render now uses the percentage button for size (f10 buttons).
That wasn't implemented yet for saving envmaps....
2004-05-27 17:54:26 +00:00
Kent Mein
173ecf172a Panagiotis Papadakos's patch to fix the following:
Implicit declaration of swab in Linux, needs to define __USE_XOPEN at
source/blender/src:

I also added #includst <stdlib.h> to this file to fix it on solaris as well.

Kent
2004-05-27 14:54:14 +00:00
Ton Roosendaal
954e5546ea In drawing solid objects ("Solid" drawmode) there were material
switches (glMaterial) inbetween a glBegin and glEnd. Combined with a
switch of glShadeModel however, on recent Nvidia it caused faces not
to be drawn... dunno if this is official compliancy, but not too
complex just to correct.
2004-05-26 21:04:02 +00:00
Kester Maddock
8253d3e041 Python fixes:
Reenabled the setScript/getScript methods for python controller bricks.
Set the ray source point to MouseFocusSensor.getRaySource works.
Added: Python -> MT_Quaternion
MT_Matrix4x4, MT_Matrix3x3, MT_Vector3, MT_Point3 -> Python

Correct transform of frustum bound sphere centre point to world coordinates
2004-05-26 12:09:17 +00:00
Kester Maddock
3dd18c5c34 Added an UpdateTransform callback from SceneGraph -> Physics.
Profiling revealed that the SceneGraph updated every physics object, whether it moved or not, even though the physics object was at the right place.  This would cause SOLID to go and update its bounding boxes, overlap tests etc.
This callback handles the special case (parented objects) where the physics scene needs to be informed of changes to the scenegraph.

Added Python attributes (mass, parent, visible, position, orientation, scaling) to the KX_GameObject module.
Make KX_GameObject use the KX_PyMath Python <-> Moto conversion.
2004-05-26 12:06:41 +00:00
Kester Maddock
e5cc9abceb Fix Bug #1309 Disabling Actor leaves Ghost, Dynamic and Rigid Body etc enabled.
Depth sorting for Transparent polygons.  Use ZTransp in Material buttons to enable.
This will cause an object's polygons to be sorted (back to front for alpha polygons, front to back for solid polygons.)
2004-05-26 12:01:08 +00:00
Stephen Swaney
05e76c22b0 bugfix: #1322 minor tweaks to the documentation for Draw module.
Blender.Draw.Button() was not showing up.  Seems to be an epydoc
issue with Button() being both a module method and the name of a class.
I changed Button to Button_ and added a usage note.
Yes, this is lame.
2004-05-25 19:59:41 +00:00
Jacques Guignot
5e3a9c092a Changed parameters names in addCurve function (suggested by Paolo)
DLoc* --> dLoc*
DRot* --> dRot*
DSize* --> dSize*
updated doc (Ipo.py)
2004-05-25 19:31:13 +00:00
Brecht Van Lommel
f99099109f Fixed a potential bug in the uv editor transform function, a check if the tface
might be only an edge was missing in one of the loops.

Fix a crash that would sometimes happen when clicking the texture painting
button in the image window header. Made headerbuttons_packdummy a static
variable again. The uiDefBut call for the texture painting button stores a
reference to it, so it must be kept in memory.
2004-05-25 19:06:48 +00:00