Commit Graph

3607 Commits

Author SHA1 Message Date
b12f801681 updates to the OS X build system :
- XCode project
- Scons :
    scons stopped working for Os X in the last month (dont know when) :

     * the '.' and '..' keywords in CCPPATH
          are not recognized anymore for sconscripts compiling files at
          a sub level
     * when doing a scons clean, the 3 subdirs in build dir are removed
      and scons then fail to recreate them (exten, intern, source)

this commit solve the first problem as a temp workaround
for the latter simply recreate the dirs manually

I will investigate that further when on vacations,  which i should already
 be.
 ;(

all 3 build systems are now working on Os X
2005-08-04 16:05:28 +00:00
cd1430db46 finally have the diagonal springs in lattices too 2005-08-04 10:41:47 +00:00
8319b3d1fa - modifier UI update (aka, find the modifier buttons!!)
- moved back to editing buttons, where life is now cramped... switched
   to constraint style foldout panes, still a WIP. In particular not
   sure what buttons should be in header (and if current toggles stay
   in header if they should also be in an expanded pane). Also need
   new icons for move up/move down (and drag and drop would of course
   be nice). Finally current plane is to make it so modifiers will
   expand out in modifier pane for horizontal orientations instead of
   just going down down down to goblin town.
 - added error field to modifiers that is displayed in UI, need to have
   some way for modifiers to return errors back to interface (esp. important
   for python)
 - tweaked cage determination and handling, currently the editmode cage
   is determined by last modifier with OnCage set that is preceeded completely
   by modifiers that support mapping or are disabled in editmode. it is
   kinda confusing, but the interface only lets you toggle OnCage for modifiers
   that support it - it just might not be clear all the time why you can't
   toggle a certain modifier OnCage.
 - update displistmesh_copy to only copy edges if non-NULL

There is a display bug that already existed but is more obvious with
new modifiers where parts of the pane get drawn in a different area
after toggling editmode. It has to do with drawing parts of the interface
using GL instead of 100% buttons. I try to keep my grubby little toes
out of the interface code so this can wait for Ton to return.
2005-08-04 07:25:43 +00:00
85704d6ef9 first try on lattices having springs 2005-08-03 21:38:02 +00:00
74820841df - removed BLO_findstruct_offset (obsolete)
- remove python access to Optimal and Subsurf flags (they don't
   work this way anymore, I suppose need to replace with python
   access to modifiers but not going to do right now).
 - removed interface access to OPTIMAL mode, needs to be rethough...
   this means at the moment subsurfs outside editmode always draw
   and render all edges
2005-08-03 19:56:27 +00:00
1db88bd065 - modify CCG to not crash when passed invalid faces, just ignores
that face... this situation should still not happen with well
   written modifiers but at least it won't crash now
 - bug fix in mirror modifier, calculation during editmode did not
   check to make sure built mface's had valid indices... grr the
   ==0 tagging system is really a pain.
 - convert a few uiDefBut calls to use explicit type
2005-08-03 19:27:19 +00:00
45386aeb3c Made the screen redraw on loopcut cancel 2005-08-03 19:23:56 +00:00
b03a20d272 - got rid of silly #define ..._BIT, #define ... (1<<..._BIT) stuff
- switched almost all uiDefBut(..., TOG|BIT|..) to use UiDefButBit and the
   name of the actual bit define instead of just a magic constant, this makes
   searching the code much nicer. most of the credit here goes to LetterRip
   who did almost all of the conversions, I mostly just checked them over.
2005-08-03 18:48:22 +00:00
8a58197cf3 - change modifier applyModifier[EM] function to not free derived argument
- added modifier_supportsMapping function
 - update CCG to set actual vertex normal (and not just
   interior face vertex normal, bla bla bla no one knows
   what this means nevermind).
 - renamed modifierType_get_info to modifierType_getInfo for
   consistency and to increase my commit line count.
 - update EditMeshDerivedMesh to calculate (and use new) normals
   when given deformed vertices
 - added
 - update editmode modifier calculation to also calculate a cage,
   not working 100% atm, in particular if a deformer follows a modifier
   that returns a DerivedMesh the cage is not accurate.
 - added ccg derivedmesh drawMapped{Vert,Face]NormalsEM functions
 - currently UI for selecting the cage mesh is rather irritating,
   will be updated
2005-08-03 04:04:05 +00:00
280e976044 A little feature for Broken...
When choosing Subdivide from the w menu or Confirming the number of cuts in a subdivide multi, hold down the CTRL key and
instead of getting the original selection recreated on the new edges, get the "inner edges" as you would get if doing a loopcut. UI for this may change before release (perhaps a toggle button in edit buttons)
2005-08-02 18:20:36 +00:00
208da2a5d0 Added support for compiling BULLET with scons on windows
using bandoler's patch as a basis (thanks!).

A couple of notes:

-  This is for windows only, I did not have a chance to try linux yet.

-  SConscript for PHY_Bullet may need tweaking (plus support
 for other platforms), but at least it's in there :)

Any problems, shout :)
2005-08-01 21:19:41 +00:00
bc865d6d20 Make Loopcut in Faceselect mode able to enter Edgeslide and not get 'loop crosses itself' message. Still need to work on selection out of this condition 2005-08-01 19:12:29 +00:00
7d63a1f277 This patches adds support for Font, Curve, Surface and Meta Objects in
Blender.NMesh.GetRawFromObject through a displist conversion method as used by
Blender when converting them in the UI.

Notes:	Objects with only edges (3D curves/polyline without bevel) do not have
		normals, so they are all initialised to (1, 0, 0) on conversion

		Converting from meta objects only work on the "mother ball". That is,
		the object with the lower base name.
		Example: "meta" for all the "meta.*" objects.

		Meshes extracted from curve based objects (Font/2D filled curves)
		contain	both the filled surfaces and the outlines of the shapes.

		Materials are taken from the object's material list. Material handling
		in NMesh is incorrect anyway, as it always uses the materials from the
		mesh, ignoring the setting in ob->colbits.

This patch also makes the include order a little clearer.
A couple of warnings have been fixed by using better types:
	-	Using char instead of short when parsing color values.
		The "constructor" expects and uses char anyway.

	-	Explicit casting to short when storing normals back in mvert.

	-	Changing constant doubles to floats with "f" to make compiler happy.

The only warning left regards NMFace.flag which is stored as a short but is
used to fill in TFace.flag which is a char. I didn't want to change the
object's structure so I left it like that. I didn't add an explicit cast when
putting it back in TFace so that the warning can remind us that there might be
something to change there.
2005-08-01 06:01:24 +00:00
55720d20de Work for fix of #2256 "something weird with some buttons":
NUMSLI buttons with retval of 0 can be used to trigger other buttons. Not
sure if this is best course of action but will investigate more. Until then
buttons_shading.c is clear of NUMSLI buttons with retval of 0 and now use
B_DIFF as retval argument (which happens to be 1).
2005-08-01 03:36:46 +00:00
f6ff9ec608 Scripts updated:
- Jean-Michel Soler: 1) paths import -- ai module; 2) tex2uvbaker;
- Campbell Barton: obj exporter.

BPython:
- Campbell also provided a patch (+docs) to add shader data access to Blender.Material.

Again, thanks guys and sorry for the long delay.
2005-08-01 03:06:24 +00:00
3f9d13c119 Moved some theme-related defines to BIF_space.h from space.c 2005-08-01 01:46:10 +00:00
3624c1278d Just a little cleanup, removed an extra redraw....move along :) 2005-07-31 20:56:20 +00:00
01436513dc Some more loop fixing, this time in loopcut 2005-07-31 20:40:27 +00:00
1d2dd4ce75 Adding a little idling to Edgeslide loop, 2005-07-31 20:18:38 +00:00
3509a7239a yo bassam, here it is
Action editor UI tweaking:
PageUpKey moves action up one row ( shift == move to top )
PageDownKey moves action down one row ( shift == move to bottom )
multiple selections allowed
2005-07-31 20:01:15 +00:00
3b7d40cfdb For edgeslide control rail there are 2 options:
Scroll Up/Down and Left/Right arrow key will cycle through the control edges in either direction.

I got rid of SHIFT for the time being.
2005-07-30 19:50:51 +00:00
9da7ec89ed Edgeslide Mouse Movement Fix
Edgeslide movement is now controlled by a line drawn between the endpoints of the 2 control rail edges. Edgeslide will
try to pick a control rail pair (will color green ATM) if you don't like the edge it picked, use the mouse wheel up to change it.
have to code mouse wheel down to go other direction still. Just ran out of time ATM and wanted to get this in for movement testing.

movement is in 1% per edge (so 1% out of -1 to 1)
CTRL makes it 10%
SHIFT makes it .1%

Se what you think and give me some feedback on functionality :) Code needs cleanup and comments, so don't crit that too much yet.
2005-07-30 16:37:04 +00:00
a2eefbd7c7 Fixed some warning shenanigans 2005-07-30 01:44:15 +00:00
Alexander Ewering
7de4b17263 Fixing (hopefully) a stupid issue with rendering text objects:
cu->curinfo.mat_nr appearently didn't get initialized to 0 when creating
a new curve / text object, thus assigning random material indices to
characters, which crashed when rendering.

I'm still not sure if this was the actual issue, though I'd hope so :)

For old files that crash on rendering, just enter editmode on EACH text
object, select all text, and assign a material to it.

I hope this fixes.
2005-07-30 01:14:59 +00:00
d44e6153d1 Flush Edge selection down to verts in subdivide if you are in Vertex select mode 2005-07-29 20:07:01 +00:00
60dc7730f4 Commented out some debug printfs 2005-07-29 18:54:48 +00:00
0d90195d17 Another UV tweak for subdivide, It seems to work better now, still not perfect 2005-07-29 18:45:40 +00:00
7d797797c8 A Small change on Edgeslide while I try to come up with a better mouse interaction.
Move mouse  - 5%
SHIFT modifier - 1%
CTRL modifier - 10%
2005-07-29 14:20:48 +00:00
0f3303b7c5 Fix for zlib with MSVC/SCONS. Should compile now. This does not fix the bullet issues yet. But with this Blender should compile without the gameengine. 2005-07-28 18:11:10 +00:00
d501f56e96 Bugfix #2875
Removed old code that was used when the global undo still saved files. It
was restoring pointers in the UI based on names, which gave confusing
results when loading the quit.blend file (actually undobuffer).
Instead it should treat the quit.blend same as "Load without UI" option.
2005-07-28 11:05:21 +00:00
4cc96528b8 Nice time saver for Armatures: Introduced Bone type "Hinge", which doesn't
inherit pose rotation/scale from its parent pose-channel.
Button is available in Editing Buttons for PoseMode as well as EditMode.

Aim is to reduce overhead of Constraint usage (copy location).

(in object.c I removed old code for IK)
2005-07-28 10:01:10 +00:00
28bd71602d Killed some warnings. No please.. hold the applause. 2005-07-28 03:20:21 +00:00
539a9ad08f Part of a fix to the makefiles for compiling the new ZLib stuff. This
seemed to do the trick for me, however a game engine error has prevented me
from compiling to test. Anyone who has time to test compiling it would be
appreciated.
2005-07-28 00:13:18 +00:00
8828aa060a - move zlib.h around to make windows happy
still having linking issues with zlib, grumble grumble
2005-07-27 21:31:44 +00:00
4b1588e277 - update storage.c to use standard time codes (should fix issue
with MSVS 8)
 - broke mesh_create_shadedColors out of shadeDispList, used to
   build vertex colors for mesh in vpaint as well (also fixed
   bug where they were not initialized correctly for subsurfs)
 - added modifier_copyData and modifier_findByType functions
 - change editmode modifiers to only calculate if Realtime and
   Editmode bits are both set, makes more sense for copying
   modifiers
 - update object_copy to correctly copy modifiers
 - removed duplicate redefinition of ME_ attributes in python,
   this is a horrible idea, why was it done in the first place?
 - update armature auto vertex group code to check for subsurf
   in modifier stack
 - fixed flip_subdivision to work with move to modifier stack
 - added copymenu_modifiers, can copy all modifiers or just
   data from first modifier of a certain type (not sure how
   to deal with multiple modifiers of same type... not
   a big issue though I think)
2005-07-27 20:16:41 +00:00
410512e265 Patch provided by Shaul Kedem: Compressed files are back!
He even made a nice doc in wiki:
http://wiki.blender.org/bin/view.pl/Blenderdev/Blendgz

Usage: set the option "Compress File" in the main "File" pulldown menu.
This setting is a user-def, meaning it is not changed on reading files.
If you want it default, save it with CTRL+U.

The longest debate went over the file naming convention. Shaul started
with .blend.gz files, which gave issues in Blender because of the code
hanging out everywhere that detects blender files, and that appends the
.blend extension if needed.

Daniel Dunbar proposed to just save it as .blend, and not bother users
with such details. This is indeed the most elegant solution, with as
only drawback that old Blender executables cannot read it.
This drawback isn't very relevant at the moment, since we're heading
towards a release that isn't upward compatible anyway... the recode
going on on Meshes, Modfiers, Armatures, Poses, Actions, NLA already
have upward compatibility issues.
We might check - during the next month(s) - on a builtin system to
warn users in the future when we change things that make a file risky
to read in an older release.
2005-07-27 19:46:06 +00:00
cd6cbda7db Bug fix #2870
Wire material doesn't work with raytrace, but the wire faces were still
trace-able, giving weird results.
Now the wire faces are excluded from the octree.
2005-07-27 18:53:59 +00:00
2da63a1ad7 Added Name flip for
_L
_l
_R
_r

Also added if suffix == 001, do not re-add suffix. So allows the following procedure

 bone named Bone_R is copied, becomes Bone_R.001
Bone_R.001 is Flipped, becomes Bone_L

Currently only works for 001, could be extended later
2005-07-27 18:48:08 +00:00
59672145a9 Cleanup & goodies for rigging geeks! :)
- PoseMode: Wkey menu, "Flip Left/Right Names". On selected bones, it flips
  the L/R tags in names, and calls the proper code to rename everything
  that's related (constraint targets, bone-childs, etc).
- PoseMode: Shift+S snapmenu: snap cursor to selected now works
- Outliner: select bones now correctly sets 'active' flag for bones,
  updating the UI as well.
  Also made sure you cannot select hidden bones in outliner.
- 3DWindow: in PoseMode/EditMode draws name of active Bone too (with user
  option "Draw active object name" set.
- Added the new Armature/PoseMode options in View3D pulldowns.

Cleanup:

- moved Pose code from editaction.c to poseobject.c
- removed BSE_editaction.h and BSE_editaction_types.h, moved contents of
  it to BIF_editaction.h. One include per C file should be fine. :)
  I know the src/ structure would require more elaborated includes, but
  we don't have that now...
2005-07-27 10:37:20 +00:00
8f15f9805a got some "_1400 <= _MSC_VER" wrong, should be "_1400 < _MSC_VER"
Lets hope gcc doesn't define this :)
2005-07-27 09:47:08 +00:00
b8142515ce visual studio 8 crashes on this R argument, todo: find replacement 2005-07-27 09:09:36 +00:00
21e59fd927 Correct init_userdef_file to not overwrite CollectRate and Image TimeOut every time it loads. 2005-07-27 07:50:28 +00:00
2e73199ea7 Image memory garbage collection:
clock seemed to work weird on some machine, switching to PIL_check_seconds_timer.
It's more in line with the rest of Blender anyway.
2005-07-27 07:43:48 +00:00
fe30da1775 Image memory garbage collection wasn't working correctly due to a poorly constructed if clause (it was collecting only images marked as NO_COLLECT, which only happens with Python loaded images).
Another problem now is that the userpref values aren't correctly saved in .b.blend, they always reset to the default. Will look into that.
2005-07-27 06:21:50 +00:00
c25b7117d0 - decimator modifier was giving wrong # of verts when a previous
modifier was active
2005-07-26 23:38:26 +00:00
f253d4693a Fix in outliner. Renaming PoseChannels didn't call the routine that checked
all bones, other poses, constraints, actions, etc.

Also: for clarity, brought back the display of both Armature Bones as
Pose Channels. Renaming either works, but you can notice the constraints
are on Pose, not Armature.

Little bug still; the order of drawing (pose, armature) sometimes flips,
don't know why yet. Tomorrow!
2005-07-26 20:42:11 +00:00
b0065e3451 Added PoseMode CTRL+C copy menu. Does loc/rot/size and constraints. 2005-07-26 19:51:15 +00:00
eadfd13123 - missed in remove wave effect commit, option was still in effect menu 2005-07-26 19:27:56 +00:00
dacfebb115 Made do_versions() have proper arguments to do linked-library version
conversions as well, with proper check for each version of each linked
file.
2005-07-26 18:46:28 +00:00
913a1d657f In Vertex Select Mode
CTRL-Alt-RMB = Faceloop Select
2005-07-26 14:09:46 +00:00