Commit Graph

11742 Commits

Author SHA1 Message Date
6632745a25 Simple fix, args from the UI were out of allignment 2006-06-02 06:34:13 +00:00
68ca6eac61 Bit the bullet and put a py2.3 blender on my system :/ ro fix http://projects.blender.org/tracker/index.php?func=detail&aid=3959&group_id=9&atid=125
py2.4 set issue with bevel_center.py (use dicts for now) - set's commented.
2006-05-31 04:03:50 +00:00
a7c61f96f6 Braught back saveRenderedImage now I have a clue about what it does.
Cleaned up functions and optimized loops, extra checks and better defaults.
2006-05-30 10:15:01 +00:00
e7767e39bb saveRenderedImage is broken? - isnt working anymore for some resion. switched back to renderAnim.
More efficient texture usage, packer now rotates the convex hull of the UV's for each image to fit the most image into the smallest rectangle.
2006-05-28 10:48:50 +00:00
98b2e98c79 Added a 2d convex hull function to BPyMathutils
Added a 2D Line intersection function
Added a function to BPyMesh that gets the mesh space vertex location of a Faces UV Pixel.
2006-05-28 10:44:29 +00:00
e47719d253 comments on how edge weighting for collapsing works.
uv_auto_layout_tex now uses the recently fixed saveRenderedImage - I needed to make clean and make to get it working.
2006-05-28 02:12:49 +00:00
83105911bf Use Kens hide/sel mesh props to save some python looping. 2006-05-28 01:52:16 +00:00
8baa88da9b Poly reduction fixes
Added remove doubles as a keyword option,
Fixed Triangulate (need to select the faces first)
Fixed boundry weighting (defaults reduced boundries first more then
non boundry verts!)
Made face area weighting give better results.
2006-05-27 14:27:52 +00:00
222844b87c ==md2 export update==
[ #4237 ] MD2 export Light Normal is rotated incorrectly fixed by Bob Holcomb
2006-05-26 00:21:02 +00:00
ab38a1c317 ==md2 export update==
centers object to export correctly by Bob Holcomb
2006-05-25 11:59:35 +00:00
55755954ed optional reuse list for meshCalcNormals, which makes decimation abt 5% faster.
Workaround for a problem where badly predicted positions are further then half the edge length, on these cases just collapse to the weighted middle of teh edge.
Added docs for "PolyReduce" (Uses BPyMesh_Redux) and WIP Docs for AutoTex Layout.
http://mediawiki.blender.org/index.php/Manual/PartXIII/Modelling_Scripts
2006-05-20 23:24:26 +00:00
Chris Want
62420c88fd Hrmm, this is a bit nasty: I am now using a different call to get a mesh
for export depending on whether the object containing the data has
modifiers or not. For an object without modifiers, things are nice since
the mesh can be properly instanced and reused. For an object with
modifiers there are problems, since a new Mesh has to be created,
akin to doing an Alt-C on the mesh, and we end up using more memory
after the use of the script than we used beforehand. (I wonder if
I would be better off porting the thing to C.)
2006-05-19 17:28:17 +00:00
4475c4211a From __bpydoc__
This script makes a new image from the used areas of all the images mapped to the selected mesh objects.
Image are packed into 1 new image that is assigned to the original faces.
This is usefull for game models where 1 image is faster then many, and saves the labour of manual texture layout in an image editor.

- Realy needs an image example to see why this is usefull.
2006-05-19 15:56:14 +00:00
Chris Want
594b0bf041 Two issues:
* a misuse of the Mesh module meant that I kept creating new
  meshes each time the script was run;

* the commas in the vertex color export looked weird.
2006-05-18 20:47:39 +00:00
Chris Want
d41fd9079d A fairly major revision of the VRML97 export script.
Changes include, but may not be limited to:

* Support for meshes with multiple materials/face images
* Mode modular design that more closely reflects Blender's
  internal workings
* Position, scale, and orientations are now exclusively dealt
  with in Transform nodes, making the math more unified and
  way easier to understand.
* vertex colors either written when mesh has SHARED_COL
  face property, or when mesh has vertex colors and
  first material with VCOL_PAINT (a little crufty, but
  maybe will try a better way later)
* Support for debugging output to the console by setting
  the 'rt' button to 42 (for mild verbosity) or 43 (for more
  verbosity)
* Potentially long lists like vertex coordinates, face indices,
  etc. are now unindented (why potentially waste thousands of
  tab characters?)
* All lines in the script are under 79 characters (as per the
  python style guide).

A major revision will usually beget major bugs, so
please test, test, test to make sure I haven't broken your favorite
feature in this script! (I've done a number of tests loading
output into the Bitmanagement viewer and into 3DSMax.)
2006-05-18 17:34:41 +00:00
2f337b6e62 Stoped a list that didint need to be made.
~20% faster and memory saved by re-using the face and edge lists and their classes each pass rather then __init__'ing new ones.
Stupid mistake- was only collapsing edges with UV's
2006-05-18 14:13:47 +00:00
8537a4d471 Fixed some evil bugs in the poly reducer messing up UV's every now and then.
Added support for "Weighted Collapse" Before an edge could only collapse into its middle,
Now the edge collapses into a point bias'd by the 2 verts Concave/Convec "Pointyness" value as well as boundry weighting.
This works much better for boundry verts. - UV's Vcols and Weights are correctly interpolated into the new location.

Added a tool in the mesh menu for accessing the poly reduction tool.
2006-05-18 02:22:05 +00:00
fc6597fdcf Made import set the object layer to the current scene layer, applied the 3ds name to the object and the mesh. 2006-05-17 00:47:00 +00:00
0d8f85eda8 made some changes to vrml97_export, this script needs to be re-written, until then fixed some incorrect assumtions it made- was using the first world in the list for AMB color no matter what world was being used, was also using the image name rather then the file name for its image URL references. 2006-05-16 22:57:24 +00:00
ac5ad70b7c ==md2 export==
typo fix by Antonio Ospite
2006-05-16 02:56:14 +00:00
3d2701178e Win32 image opening was broken with the default settings. 2006-05-16 01:41:54 +00:00
aad369c8f9 fixed devide by zero error with zero length edges.
added a minimum edge length option
2006-05-15 17:42:01 +00:00
51eb744807 BPyImage had a problem with a path being returned as None
BPyMesh would make NAN coords for collapsed edges.
2006-05-15 13:33:30 +00:00
90c10ab910 BPyRegistry was throwing errors with blank config files. made it check for this and be quiet.
fixed some bugs in BPyMesh_redux, tweaked to work well for test cases. much better use of error levels for edge weighting. better collapsing to the desired target. triangulates before reduction be default now.
2006-05-15 07:29:28 +00:00
265c0af49f * New faster algo for finding the new collapse location using normals rather then edge connectivity data.
* Much improved, slower edge collapse weighting method that makes this script about 2.5x slower, but brings it up to the quality of qslim (lightwave's decimator), without the manifold' errors.
Probably worth adding a UI front end to this function.
2006-05-14 18:28:27 +00:00
6c1aee79a5 Allow to see in real time trajectory of selected object.
You can grag the keyframes around from anywhere in the animation.
Keyframe dragging would be less of a hack if we could do an event handeler and a redraw space handeler in 1.

This kind of functionality could be nice to see in Blender.
2006-05-14 11:55:52 +00:00
b817c78b0d Applied patch 4188 with some modifications.
https://projects.blender.org/tracker/index.php?func=detail&aid=4188&group_id=9&atid=127
* Sped up export of UV coords,
* Use Mesh instead of NMesh
* Use BPyMesh GetMeshFromObject so correct object materials are exported as well as modifiers applied.
2006-05-14 03:11:55 +00:00
d790049639 fixed, bugs with selection & remove doubles. 2006-05-13 17:50:47 +00:00
b0c5df16f6 Made editmesh remove_doubles work with vertex colours,
added vertex colour support to BPyMesh_redux polygon reducing function.
2006-05-13 12:36:48 +00:00
2bcf11defb BPyMesh_redux: Fixed a rare bug in mesh redux's, collapsed location.
BPyMesh_redux:  made redux support non UV Meshes.
vertexpaint_selfshadow_ao:  turned vertex selfshadow scale into radius.
2006-05-13 05:24:58 +00:00
Chris Want
baf69d3a73 Making the vrml exporter use the Ken Hughes Mesh module, rather
than NMesh.
2006-05-12 15:26:38 +00:00
831a1fa91d Added MVert.hide property because hidden verts were hanging BPyMesh_Redux 2006-05-11 20:35:43 +00:00
Chris Want
d3dd1da8d4 The algorithm to export vertex color was very inefficient (for every
vertex it would potentially loop through every face). This fix speeds
it up a bit (only loops through all faces once, at the cost of some
additional memory). An example of export times for a mesh with 6266
verts and 12528 faces:

Before: 2m56s
After:     8s
2006-05-11 17:42:58 +00:00
Chris Want
cfbbd8a54e Some bad logic was causing an 'Appearance' node not to get closed
correctly when a mesh has vertex colors.
2006-05-11 17:29:44 +00:00
0497ea57cb Added a polygon reduction function that can poly reduce any mesh and supports UV's as well as bone weights (Thanks to briggs).
Isnt intended to be ultra high quality, more for automatic realtime "Level of Detail" model generation.

BPyMesh.redux(ob, 0.5) # To reduce to about half the polys
2006-05-11 12:42:10 +00:00
a3783d32e0 Added some shortcuts to Mesh
MFace.area
 MFace.cent
 MEdge.length

Updated some scripts that used these.
2006-05-11 10:06:15 +00:00
Chris Want
2358e85b6d Converting spaces to tabs in this script (this is standard!) 2006-05-10 21:37:03 +00:00
6cbc64ce52 removed an optimizarion in seeking verts that could cause an eternal loop. 2006-05-10 15:31:11 +00:00
8f84542c23 Modified mesh to allow writing to normals.
renamed meshPrettyNormals to meshCalcNormals, and it now writes to normals rather then returning a list of vecs.
updated vertexpaint_selfshadow_ao to be a bit more efficient and make use of the above changes.
2006-05-10 12:12:21 +00:00
41623cbdb9 made mesh's getFromObject pick the materials from object or obdata as set by the objects colbits.
its crufty that None of the exports currently export materials correctly, hopefully this will help.
2006-05-10 01:38:02 +00:00
b3742ea41e Added some shading options
Concave/Convex Angle clipping- usefull for tinkering with highlights/shadow results.
Blur radius was inverted.
... Needs documenting.
2006-05-09 14:36:31 +00:00
8dc9c228d1 Added options
Rotate X90 (most objs use X up)
Reuse Existing Materials (so material names arnt created when names match)

Fixed some bugs and added a few speedups.
2006-05-09 13:20:18 +00:00
f579a65cbc fixed error with zero length normals (caused by zero area faces)
fixed rare bug - that a colour wasnt clamped between 0 and 255.
2006-05-07 18:13:21 +00:00
8255bdce57 Added a self shadowing script accessed from the vertex paint menu, it does a fake ao thats more pradictable then radio baking and fairly fast.
Also assed a function to calculate high quality normals (normals are the same even for different topologys).
2006-05-07 14:09:46 +00:00
5a9b917ea4 Applied patch https://projects.blender.org/tracker/index.php?func=detail&aid=4159&group_id=9&atid=127
Updated batch object name edit. to assign datanames from obnames.
2006-05-06 09:11:11 +00:00
75f4416e32 Added vertex weight python scripts accessable from the paint menu.
* clean weights (removed low weights)
* normalize, maximizes weights to a user set peak, optionaly scales other groups too to keep the proportion of the weights even. (Doubles as a weight scaler)
* Grow/Shrink, uses the mesh topology to expand/contract the vert weights. a few options for iterationsm, max length and strength.
I need a way tell if the users in Face Select mode (in python) so I can make use of the selected face flag.
2006-05-05 16:17:59 +00:00
444e4e36fe Commited 3ds export enhancements from Mark Stijnman (beowulff)
Will need to do some updates, Mesh over NMesh and optimize some areas but it works and is a big improvement.

from
https://projects.blender.org/tracker/index.php?func=detail&aid=4156&group_id=9&atid=127

Detailed description:
Modified the 3ds export script 3ds_export.py:
- It now exports face UV correctly. 3ds only supports one UV coordinate per vertex. The script now duplicates vertices that had multiple UV pairs assigned to them so that each duplicate now only contains one and only one UV. Faces have their vertex indices adjusted accordingly.
- Quads are now split into triangles better. 3ds only supports triangles, so quads need to be split into two triangles. Instead of rather arbitrarily splitting along the diagonal between points 0 and 2, the script now splits along the shortest diagonal. This creates a higher quality triangular mesh, as well as better preservation of symmetry.
- Now creates an object node block, exporting object nodes, needed by some 3D importers. Among others, allows one to export object hierarchy.
- Now exports Empties as 3ds Dummies.

To be able to add all of the above new features, the script has been mostly rewritten and strongly restructured.

Motivation for the rewrite was the desire to be able to use Blender to produce custom 3d cars for Trackmania:Sunrise (TM:S). Previously, the TM:S importer could not correctly handle the 3ds files from the Blender 3ds export script. With this version, one can export cars complete with UV textures, correct wheel placement and light placement. To my knowledge, this script would make Blender the first fully free 3d modeller that allows one to export 3ds models for TM:S (expect a tutorial soon). The ability to have proper UV coordinates exported into the 3ds file should also be very welcome to many.

Add A Comment: Notepad
2006-05-02 11:26:32 +00:00
702207f03f * Added optional X Zero snapping with tolerence limit.
* optionaly work with more then 1 mesh.
2006-04-28 11:41:11 +00:00
2d6224a0d7 All negative vert indicies are assumed relative, removed relative vert option. 2006-04-27 23:22:04 +00:00
2883242cde Lightwave mot exporter now does worldspace loc/size/rot 2006-04-27 12:51:09 +00:00