Commit Graph

7971 Commits

Author SHA1 Message Date
Janne Karhu
7b547f7ce7 Particle ID block controls:
* Adding/removing particle systems to an object.
* Changing of particle settings.
* Currently showing an object's particle systems in a list (like materials).
2009-06-27 15:41:47 +00:00
Janne Karhu
912c2f440b Pointcache refresh part 2
* Based on what happens during simulation the cache is marked (also in cache panel, this could possibly be extended to 3d view as well) as:
	- exact (not marked)
	- outdated (simulation is not done completely with current settings)
	- non-exact (frames were skipped during simulation)

* The parameter "cache step" effects the number of frames between saved cache frames.
	- This can save a lot of memory (or disk space) if absolutely frame accurate simulation is not required.
	- Speeds up the "quick caching" very much.
	- Frames between cached frames are interpolated from the cached frames.
	- Current default value of 10 frames works nicely with up/down-arrows (skip 10 frames forwards/backwards on timeline), but can be changed if wanted.

* The caching can work in normal or "quick" mode:
	[Normal cache]
	- Basic: Calculate what even happens (settings change, big frame steps etc.) and cache results, if possible try to use "cache step" when saving cache frames.
	- Becomes non-exact: After larger than 1 frame steps.
	- Becomes outdated: After any change effecting the simulation other than frame steps.
	- Pros/cons: Freedom of doing anything and playing with particles, but exact results have to calculated from the beginning.

	[Quick cache]
	- Basic: Calculate simulation up to current frame automatically on changes with cache step sized jumps in simulation. With multiple "quick cached" simulations the smallest cache step is used.
	- Becomes non-exact: Always from frame 1 (unless cache step = 1).
	- Becomes outdated: Never.
	- Pros/cons: Not very accurate, but super fast!
	- Todo: Transform of any animated (non-autokeyed) object is locked! Probably needs some tinkering with anim sys overrides.

* The simulation can be run forwards or backwards even if it's cache is outdated or non-exact, the following rules apply in these situations:
	- step forwards (to unknown) -> simulate from last exact frame, store result
	- step backwards (to known) -> result is interpolated from existing frames, store result, clear cache forwards if current frame is after last exact frame

* "Calculate to current frame" runs the simulation from start to current frame with a frame steps of 1.
	- Baking does the same, but runs the simulation all the way to the end of simulation.
	- Rendering does this automatically if the simulation is outdated of non-exact, so all rendered simulations will always be updated and exact.
	
* Every cache panel also holds buttons to "Bake all dynamics", "Free all dynamics" and "Update all dynamics to current frame".

* Cloth simulation supports the new cache too.
2009-06-27 15:28:58 +00:00
Brecht Van Lommel
2b8c574182 UI: move bone constraints panel to bone tab again. 2009-06-27 14:07:17 +00:00
Brecht Van Lommel
222fe6b1a5 UI
* Search popup + autocomplete for bones, vertex groups, etc. This
  is done with layout.item_pointerR, specifying an RNA collection to
  take the items from. Used by constraints and modifiers.

* Some tests with the List template, ignore those for now..
2009-06-27 01:15:31 +00:00
Dalai Felinto
d7d60f4ab9 fix for importing of transparent faces from .mtl files - ZTrans now is set for them as well.
(what makes importing from SketchUp really nice)
2009-06-26 21:51:23 +00:00
Arystanbek Dyussenov
83a5a585e4 Merge from 2.5 r21112 through r21160 2009-06-26 13:00:23 +00:00
Arystanbek Dyussenov
acb590e4b0 * OBJ exporter almost converted
* added MeshEdge.loose property
* changed mask used in Object.create_*_mesh to CD_MASK_MESH.
2009-06-26 12:33:07 +00:00
Campbell Barton
6b9e817032 bugfix [#18949] bvh import does not do single rigid bodies
these BVH files are not that common but may as well support it.
2009-06-26 02:49:47 +00:00
Campbell Barton
23f48b8bb1 using the edge length to weight the vertex blue wasnt wokring very well (removed) 2009-06-26 02:22:53 +00:00
Arystanbek Dyussenov
18e7ec8463 - added MeshFace.normal property
- continuing OBJ exporter conversion
2009-06-25 18:04:32 +00:00
Arystanbek Dyussenov
3f2fef55c2 - added API functions:
* Main.remove_object
  * Scene.add_object
  * Scene.remove_object
  * Object.convert_to_triface
  * Object.create_preview_mesh
  
- a small tweak in set_mesh (blenkernel/inter/mesh.c) to make it work on objects having data == NULL
2009-06-24 19:23:34 +00:00
Brecht Van Lommel
169fdf9e97 2.5: bug fixes for some erratice materials buttons drawing. 2009-06-24 18:39:00 +00:00
Brecht Van Lommel
5b26f520bb UI
* Added SCROLL button type, use like a NUMSLI basically, with
  a1 used to define the scroller size.
* Add scroll and toggle colors to the Theme (toggle was set to
  draw like radio in a recent commit, but it's the intention
  these look different).
* Added rudimentary list template, used for object material
  slots, this is WIP though.
* In popup menu, split text with line breaks over multiple
  lines, makes python errors display slightly nicer.
2009-06-24 14:16:56 +00:00
Arystanbek Dyussenov
d2a5bbdc2c Merge from 2.5 r21037 through r21112 2009-06-23 19:17:59 +00:00
Arystanbek Dyussenov
3fce2f2826 - added Mesh.transform
- fixed Object.create_dupli_list
- continuing OBJ exporter conversion
2009-06-23 17:52:58 +00:00
Campbell Barton
bf74f105bc small changes...
- allow RNA_property_enum_items to take the totitems int pointer as NULL (spares a loop on all the enum items). this change also makes enums types with no enum array crash in some places, could support these though Id rather disallow them, generating docs is a quick way to test for this.
- open recent file operator used and enum to open the recent file without an enum array, changed to an int type.
- added space_logic.py poll functions
2009-06-23 12:36:15 +00:00
Brecht Van Lommel
9fd605c050 2.5: Image Editor
* Menu and header more complete now.
* Clean up Game Properties panel and moved View Properties panel
  to python.
* Fix some drawing issues when combining tiles, repeat and aspect,
  some also from 2.4x, these options didn't work together 100%.
2009-06-23 00:45:41 +00:00
Brecht Van Lommel
272fac8fd6 UI: some API functions don't require explicit context passing anymore. 2009-06-23 00:19:10 +00:00
Janne Karhu
1f9368b37e Particle system parenting
* Allows moving, rotating & scaling of particle simulations.
* Setting in particle render options.
* Changes viewed & rendered particles from global space to parent space.
* Doesn't effect simulations at all.
2009-06-21 11:09:16 +00:00
Thomas Dinges
c549e75c16 2.5 Buttons Window:
* WIP Commit: Started wrapping the buttons header to python. Still disabled due to some display problems.
2009-06-21 10:26:39 +00:00
Janne Karhu
6b15024f4a Pointcache refresh part 1:
* Particles support larger than 1 frame changes, bigger frame changes can result in inaccurate results, but it's super fast and you get a nice feeling of how the particles behave!
* "Cache to current frame" button calculates the exact result of particles at current frame.
* Current state of cache can be protected by making it a bake.
* Cache is now in memory by default, disk cache is an option.
* Only "viewport %" number of particles are calculated and cached in viewport, baking and rendering calculate all particles.
* Info on cached frames and memory usage given in ui.
* Support for exact "autocaching" of changes and large frame changes(disabled for now until exact place in event system is decided)
* "Continue physics" is probably deprecated after this and should be removed once sb & cloth use the new cache code.

Todo:
* Make softbody & cloth use the new cache things.

Other changes:
* Some cleanup of particle buttons.
2009-06-21 10:16:52 +00:00
Joshua Leung
09e64c6e2c 2.5 - Fixed error with Constraint Buttons
Incorrectly declared icon was resulting in very verbose warning output in the console...
2009-06-21 00:17:45 +00:00
Arystanbek Dyussenov
a8b403db35 Merge from 2.5 r20991 through r21037 2009-06-20 16:48:58 +00:00
Arystanbek Dyussenov
705fbec768 * Added Main.add_object(type, name)
* Added optional params to Object.create_render_mesh(apply_matrix, custom_matrix)
  apply_matrix is a boolean, True to transform mesh by ob->obmat or custom_matrix if given
* Fix subtle error in Object.create_dupli_list
* Make RNA struct funcs static, hopefully didn't miss any

Ignore export_obj-2.5.py changes for now ;)
2009-06-20 16:32:52 +00:00
Campbell Barton
a42b436a98 PLY export, use the file selector and added operator options 2009-06-20 16:08:01 +00:00
Campbell Barton
ed2887f720 updated the ply exporter to use the blender 2.5 python api
Note's
* exports the mesh without modifiers or transformations applied
* supports UV's vertex colors
* no support for normals yet (missing from data api)
* registers an operator called EXPORT_OT_ply
* no file selector yet. can only fun from python currently
  bpy.ops.EXPORT_OT_ply(filename="/tmp/test.ply")
* removed double lookups on the vertex dict, build face verts to write allong the way.
2009-06-20 14:01:34 +00:00
Campbell Barton
f7c0d1b550 moving the existing ply exporter into io before updating (to get a useful diff) 2009-06-20 13:55:47 +00:00
Campbell Barton
3511d72488 game logic UI script, physics could be broken up into more panels. 2009-06-20 06:06:13 +00:00
Arystanbek Dyussenov
a7f914d25a - tweak Object.create_render_mesh params
- svn merge -r 20124:20998 \
https://svn.blender.org/svnroot/bf-blender/branches/blender2.5/blender/release/scripts/export_obj.py \
export_obj-2.5.py to make sure I don't miss new OBJ exporter features ;)
2009-06-20 05:52:19 +00:00
Campbell Barton
9e498c7ddd Mistake in FBX export broke importing on some apps (but not the ones I tested with. grr)
Reported by James Dolan on autodesks forum
http://area.autodesk.com/forum/autodesk-fbx/fbx-sdk/fbx-files-exported-from-blender-cause-assert/
2009-06-20 04:03:13 +00:00
Campbell Barton
7785ead4eb ObColor wasnt converted into an RNA string.
Updated Mathutils.Vector/Euler/Quaternion/Matrix so these are types rather then module methods, each type now has a tp_new function, matching python builtins float/int/str.
Also cleaned up float conversion and arg passing.

Changed buttons_objects.py...
 if ob in groups.objects: # no longer works
 if ob.name in groups.objects: # is the new syntax
...its more dict like and a lot faster (avoids python iterating over each item and comparing each, use a single rna lookup instead).
2009-06-20 02:44:57 +00:00
Brecht Van Lommel
6c139156cf RNA:
* EditBone wrapped, using manual get/set function, and used
  in the UI code. Makes the RNA wrapping code here more
  complicated, but works.
2009-06-19 14:56:49 +00:00
Arystanbek Dyussenov
f6267e2a26 Moved struct DupliObject to DNA_object_types.h.
Object.create_dupli_list now works ok.
2009-06-19 12:46:51 +00:00
Daniel Genrich
db27ab918d Bugfix: Displace modifier was missing the "direction" drop down menu. 2009-06-19 09:21:08 +00:00
Brecht Van Lommel
dc7028cee4 Branch soc-2009-kazanbas
Merge with trunk revision 20991, and update scripts for the changes too.
Reload Scripts and Export OBJ still work for me.
2009-06-18 19:59:20 +00:00
Ton Roosendaal
895f4e62ca Part one of 2.49a release commit 2009-06-18 18:11:51 +00:00
Campbell Barton
c23b23db4e Attribute PolyDimensions GmbH for funding OBJ spline import/export. 2009-06-18 16:01:47 +00:00
Brecht Van Lommel
5ea992df98 UI:
* Fix context.cloth, was not being set correct.
* Fix errors with context pinning, scripts should
  not assume context.object to be there.
* Always show preview even if e.g. the material is not
  set, to keep ID buttons from jumping while you're
  using them.
2009-06-18 14:20:25 +00:00
Arystanbek Dyussenov
8bafa19853 Merge from 2.5 r20855 through r20966
Build fails: http://www.pasteall.org/6201/text
2009-06-18 11:42:30 +00:00
Remigiusz Fiedler
0489fb731a DXF-Exporter v1.35 - 2009.06.18 by migius
- missing support for multiple-instances of Curve-Objects as BLOCK/INSERTs
2009-06-18 10:34:16 +00:00
Remigiusz Fiedler
d3537256ca DXF-Exporter: apply modifiers: reactivate temporary deactivated code 2009-06-17 23:25:22 +00:00
Remigiusz Fiedler
f1b9e76e43 DXF-Exporter v1.35 - 2009.06.17 by migius
- added export Cameras (ortho and persp) to VPORTs, incl. clipping
- added export Cameras (ortho and persp) to  VIEWs, incl. clipping
- export multiple-instances of Mesh-Objects as BLOCK/INSERTs
- on start prints dxfLibrary version
2009-06-17 14:06:55 +00:00
Remigiusz Fiedler
2519da917a DXF-Importer v1.12 - 2009.06.16 by migius
d7 fix for ignored BLOCKs (e.g. *X) which are members of other BLOCKs
2009-06-17 11:35:35 +00:00
Campbell Barton
a1cf7988c1 svn merge https://svn.blender.org/svnroot/bf-blender/trunk/blender -r20855:20928
Sequencer changes from source/blender/src coming next
2009-06-16 14:21:58 +00:00
Thomas Dinges
7d02642114 2.5 Material Buttons:
* More tweaks by William. Thanks.
2009-06-16 12:54:34 +00:00
Remigiusz Fiedler
1025b750ee DXF-export update: dxfLibrary.py v1.33 - 2009.06.16
- fix _point(): converts all coords to floats
 - fix LineType class: implement elements
 - added VPORT class, incl. defaults
 - fix Insert class
2009-06-16 10:43:43 +00:00
Arystanbek Dyussenov
556369fe2f The basic OBJ exporter working. The code is release/io/export_obj.py.
To run it, switch to Scripts Window, click Scripts->Reload Scripts 
menu, it appears under Scripts->Export.
2009-06-16 08:54:38 +00:00
Brecht Van Lommel
91785f1e36 UI scripts:
* Close some material/texture panels by default.
* Update material buttons to use more diffuse/specular variables.
* Don't show texture mapping/influence when the texture is pinned.
* Small visual tweak for sequencer header menus.
2009-06-16 01:25:49 +00:00
Brecht Van Lommel
401b58cb45 2.5: Image Editor
* Started porting over to python, menus nearly done, header WIP.
* Game Properties panel is in python too
* Deprecated "Tiles" as a per face flag here, now it's always on
  the image, used to be both, working in a very confusing way.
  Unlikely someone actually had a purpose for this being per face.
* Remove GPC_PolygonMaterial.cpp/h, it's not actually used anymore,
  so I don't want to bother updating it.
* Fix crash in image painting (own mistake in porting over bugfix
  from 2.4x).
2009-06-16 01:22:56 +00:00
Brecht Van Lommel
18d8454f2e 2.5: Text editor, port menu code to python. 2009-06-16 01:10:47 +00:00