blender/release/ui
Janne Karhu b221c0e2e6 New point cache file format:
- HEADER (beginning of each file)
	* general header:
		+ 8 char: "BPHYSICS"
		+ 1 int: simulation type (same as PTCacheID->type)
	* custom header (same for sb, particles and cloth, but can be different for new dynamics)
		+ 1 int: totpoint (number of points)
		+ 1 int: data_types (bit flags for what the stored data is)
- DATA (directly after header)
	*totpoint times the data as specified in data_types flags

- simulation type
	soft body = 0, particles = 1, cloth = 2
- data types (more can be added easily when needed)
	data		flag		contains
	----------------------------------------
	index		(1<<0)		1 int	(index of current point)
	location	(1<<1)		3 float
	velocity	(1<<2)		3 float
	rotation	(1<<3)		4 float	(quaternion)
	avelocity 	(1<<4)		3 float	(used for particles)
	xconst		(1<<4)		3 float	(used for cloth)
	size		(1<<5)		1 float
	times		(1<<6)		3 float (birth, die & lifetime of particle)
	boids		(1<<7)		1 BoidData
	
Notes:
- Every frame is not nescessary since data is interpolated for the inbetween frames.
- For now every point is needed for every cached frame, the "index" data type is reserved for future usage.
- For loading external particle caches only "location" data is necessary, other needed values are determined from the given data.
- Non-dynamic data should be written into an info file if external usage is desired.
	* Info file is named as normal cache files, but with frame number 0;
	* "Non-dynamic" means data such as particle times.
	* Written automatically when baking to disk so basically a library of particle simulations should be possible.
- Old disk cache format is supported for reading, so pre 2.5 files shouldn't break. However old style memory cache (added during 2.5 development) is not supported. To keep memory cached simulations convert the cache to disk cache before svn update and save the blend.
- External sb and cloth caches should be perfectly possible, but due to lack of testing these are not yet enabled in ui.
	
Other changes:
- Multiple point caches per dynamics system.
	* In the future these will hopefully be nla editable etc, but for now things are simple and the current (selected) point cache is used.
	* Changing the amount of cached points (for example particle count) is allowed, but might not give correct results if multiple caches are present.
- Generalization of point cache baking etc operator & rna code.
- Comb brushing particle hair didn't work smoothly.
2009-08-12 09:54:29 +00:00
..
bpy_ops.py user interface units, off by default. 2009-08-11 18:53:01 +00:00
buttons_data_armature.py 2.5 Part 1 of Layout Code Cleanup: 2009-07-27 20:39:10 +00:00
buttons_data_bone.py 2.5 Part 1 of Layout Code Cleanup: 2009-07-27 20:39:10 +00:00
buttons_data_camera.py pedantic changes to python UI scripts 2009-08-06 13:15:23 +00:00
buttons_data_curve.py 2.5 Part 1 of Layout Code Cleanup: 2009-07-27 20:39:10 +00:00
buttons_data_empty.py 2.5 Part 1 of Layout Code Cleanup: 2009-07-27 20:39:10 +00:00
buttons_data_lamp.py * More lamp tweaks, meant to commit this last night 2009-07-30 13:56:39 +00:00
buttons_data_lattice.py 2.5 Part 1 of Layout Code Cleanup: 2009-07-27 20:39:10 +00:00
buttons_data_mesh.py 2.5 Mesh Draw Options: [WIP] 2009-08-06 23:34:14 +00:00
buttons_data_metaball.py Povray 2009-08-07 01:05:33 +00:00
buttons_data_modifier.py IK constraint and armature modifier layout tweaks 2009-08-10 12:17:12 +00:00
buttons_data_text.py 2.5 Part 2 of Layout Code Cleanup: 2009-07-28 06:26:10 +00:00
buttons_game.py BGE: removing remaining reference to sce->world->gravity/physics/... (it's all in sce->gm now) + Dome UI changes 2009-08-07 03:06:32 +00:00
buttons_material.py remove python2.x support 2009-08-10 00:07:34 +00:00
buttons_object_constraint.py IK constraint and armature modifier layout tweaks 2009-08-10 12:17:12 +00:00
buttons_object.py 2.5 Part 3 of Layout Code Cleanup: 2009-07-30 10:11:19 +00:00
buttons_particle.py New point cache file format: 2009-08-12 09:54:29 +00:00
buttons_physics_cloth.py New point cache file format: 2009-08-12 09:54:29 +00:00
buttons_physics_field.py 2.5 Field Panels: 2009-07-31 15:36:14 +00:00
buttons_physics_fluid.py pedantic changes to python UI scripts 2009-08-06 13:15:23 +00:00
buttons_physics_smoke.py Smoke: little fix to ui 2009-08-09 12:50:39 +00:00
buttons_physics_softbody.py New point cache file format: 2009-08-12 09:54:29 +00:00
buttons_scene.py remove python2.x support 2009-08-10 00:07:34 +00:00
buttons_texture.py 2.5 Button Files: 2009-08-08 17:21:34 +00:00
buttons_world.py remove python2.x support 2009-08-10 00:07:34 +00:00
space_buttons.py 2.5 Layout files: 2009-07-26 16:31:48 +00:00
space_console.py remove python2.x support 2009-08-10 00:07:34 +00:00
space_filebrowser.py - include operator commands in tooltips (needs sanitizing for transform operators, there are massive :|) 2009-07-29 23:12:30 +00:00
space_image.py pedantic changes to python UI scripts 2009-08-06 13:15:23 +00:00
space_info.py added time units, currently only used when metric or imperial are enabled. 2009-08-12 05:20:16 +00:00
space_logic.py 2.5: Render/Game Engine 2009-07-23 21:50:40 +00:00
space_outliner.py 2.5 Layout files: 2009-07-26 16:31:48 +00:00
space_sequencer.py changes to defaults for sequencer strip adding 2009-07-30 20:22:55 +00:00
space_text.py pedantic changes to python UI scripts 2009-08-06 13:15:23 +00:00
space_view3d_toolbar.py Sculpt/2.5: 2009-08-09 17:21:40 +00:00
space_view3d.py pedantic changes to python UI scripts 2009-08-06 13:15:23 +00:00