Commit Graph

16327 Commits

Author SHA1 Message Date
Daniel Genrich
52485190e8 Pointcache:
* prepare pointcache for smoke (smoke doesn't use it yet, commit follows later)
2009-08-14 17:39:27 +00:00
Campbell Barton
eef09b9cba cmake changes
- set python to 3.1 on linux (dont use FindPackage for now)
- remove duplicate settings (disable cache for copied settings, was quite confusing)
- added an option WITH_INSTALL, when disabled scripts and language files wont be copied to the target dir (better for quick builds)
- remove .svn (was still CVS), and pyc/pyc files after copy
- copy the 'io' as well as 'ui'
2009-08-14 17:16:16 +00:00
Janne Karhu
47a41ad055 Proper copy code for multiple point caches. 2009-08-14 16:25:59 +00:00
Nicholas Bishop
0ba5cf2450 2.5/Paint modes:
* Fixed one of the items from Brecht's TODO mail. Exiting edit mode now restores any paint mode you might have been in, rather than going to object mode.
2009-08-14 15:47:32 +00:00
Campbell Barton
c32fce0705 some fixes for netbsd with cmake
- CMake, use FIND_PACKAGE(Freetype) for unix/linux
- Only link with libdl.so on linux
- use statvfs rather then statfs for netbsd (size of statfs wasnt available)
- add x11 include path with ghost, glu.
2009-08-14 13:13:36 +00:00
Campbell Barton
08f0938434 - registering new python classes runs the free functions on existing classes.
- print an error if RNA Structs are freed with a python pointer set to help with debugging leaks.
- fix for unlikely eternal loop in unit conversion.
2009-08-14 12:29:55 +00:00
Joshua Leung
4bbccd39bc 2.5 - Assorted Animation UI Tweaks
* Fixed padding for Graph Editor visibility toggles
* Reverted many of the tweaks to Timeline UI for now (for the reasons outlined in earlier mail)
* NLA Editor now (mostly) uses the new channel-drawing API
2009-08-14 11:09:19 +00:00
Nicholas Bishop
c6e041f125 2.5/Paint modes:
* Moved brush curve preset operator out of sculpt to paint_utils
* Added a button to the curve panel to set the preset
2009-08-14 04:45:29 +00:00
Nicholas Bishop
d426676f79 2.5/Multires:
Bugfixes

* Don't allow multires subdivision in editmode, this leads to corruption as noted by nudelZ. Reason is that editmode has its own copy of the MDisps customdata layer, gets written back out on exiting editmode, but the layer that was subdivided was the non-editmode original.
* Missed clearing a couple variables, caught with valgrind.
2009-08-14 01:48:05 +00:00
Guillermo S. Romero
9a654aa8de Clean some whitespace. 2009-08-14 00:32:29 +00:00
Joilnen Leite
f04da8e7f5 Changed to able compile libsamplerate properly 2009-08-14 00:14:20 +00:00
Daniel Genrich
3671a420c6 Smoke: bugfix - tray, not tvox 2009-08-13 21:30:48 +00:00
Daniel Genrich
4fb59f6565 Smoke: no lamp results in no shading (requested by nudelZ) 2009-08-13 21:29:05 +00:00
Nicholas Bishop
972224b9e1 2.5/Sculpt:
* Moved the brush texture settings to MTex/TextureSlot. The mapping settings now show up in the texture panel, pretty much like they do for textures used with materials.

TODO:
* Tiled mode should not show Z size setting
* Add a locked mode so that texture size can be changed uniformly like in 2.4x
2009-08-13 20:05:36 +00:00
Andrea Weikert
75af1a7f9e MSVC compile fix.
* replaced snprintf with BLI_snprintf 
* in unit.c used the #define hack used in several places already to avoid adding additional dependency.
2009-08-13 18:26:15 +00:00
Campbell Barton
52a6a07d67 added string max length option for unit functions bUnit_AsString and bUnit_ReplaceString 2009-08-13 17:05:27 +00:00
Thomas Dinges
e8d9e0823e 2.5 Timeline:
WIP Commit, still uncommented.
* Adeed some RNA properties for Playback.
* Start of Python File.
2009-08-13 16:59:52 +00:00
Joshua Leung
79a928682c 2.5 - Fix for segfaults with entering text in normal number buttons (i.e. frame buttons in timeline header). 2009-08-13 11:54:12 +00:00
Campbell Barton
d916c25616 - moved unit settings from user prefs into the scene.
- use the scene context for the unit settings since there isn't a better place for it currently.
- added 'chain' to imperial units
- set more rna props to be distances and angles.
2009-08-13 07:37:41 +00:00
Joshua Leung
127f19cac4 2.5 - Assorted cleanups
* Silencing some compiler warnings
* Set paths for Scene rendering settings so that they can be animated (or at least won't produce error warnings)
2009-08-13 07:28:51 +00:00
Matt Ebb
5a21bc578c * First commit merging 2.4-based sim_physics in to volume25 branch.
Integration is still very rough around the edges and WIP, but it works, and can render smoke (using new Smoke format in Voxel Data texture) --> http://vimeo.com/6030983

More to come, but this makes things much easier to work on for me :)
2009-08-13 05:21:25 +00:00
Janne Karhu
3757bb4a4f Mistake in previous commit. 2009-08-12 17:41:03 +00:00
Janne Karhu
bba9c797b5 Various fixes:
- Correct fix for file loading crash introduced by earlier point cache commit.
- Simulations are no longer calculated to current frame at render time automatically.
	* This has to be thought through more carefully at some point, perhaps through render profiles.
	* All simulations can be updated manually to current frame from any cache panel with the "update all to current frame" button.
- Some explanatory comments added for BKE_pointcache.h.
2009-08-12 17:39:11 +00:00
Daniel Genrich
fb7c9d5a0d Smoke:
* New feature: "Dissolve Smoke" - Idea by nudelZ
2009-08-12 17:32:02 +00:00
Campbell Barton
b8fcda9ea5 unit grid snap while transforming, display units in the header. 2009-08-12 17:02:03 +00:00
William Reynish
a86aa8c34b Edited timeline header layout slightly.
-Made the 'PR' button not align itself to the start/end frame fields, as this makes for a nicer visual rounding of those two numbers.
-Made current frame indicator longer, to allow for display of higher frame numbers
-Removed the auto-keyframe dropdown menu. This exists as a preference, and doesn't need to take up space here. This is not something you're likely to change much after all.
-Made the keying sets menu stay put in the UI. It was moving about depending on what options are selected to the left of it. This sort of moving around should be avoided as much as possible.
-Swapped Add/Delete keyframe buttons. It's more intuitive to have the add key button first.
2009-08-12 15:55:15 +00:00
William Reynish
7ca23e0ef6 Put back sequencer type icons, and moved the type menu, separating it from the menus. 2009-08-12 14:39:57 +00:00
Campbell Barton
45ba3d31c0 when units are enabled use them for 3d viewport grid drawing, display the dimension for the smallest grid cell.
still need to make this work with grid snapping.
2009-08-12 14:11:53 +00:00
Ton Roosendaal
fcf883ecf9 2.5
Removed BKE_ptcache_ids_from_object() from readfile.c do_versions,
this cannot work... IDs are not set for versioning. Will need to go
over this with janne what he actually wants to achieve here...

This solves crash on startup of Blender. Tsk!
2009-08-12 13:07:12 +00:00
Daniel Genrich
3a1da2219d Reverting "fix" - didnt fix crash at all.
jahka: please take a look at this, several people in #blendercoders now reporting crashes on startup.
2009-08-12 12:15:45 +00:00
Daniel Genrich
64dba1596d Particles: should fix crash on startup 2009-08-12 11:12:20 +00:00
Ton Roosendaal
65a54eedd4 2.5
Bad commenting in header file.
2009-08-12 10:38:35 +00:00
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
Campbell Barton
8641833b57 Set the clickstep for unit buttons to each click moves 1 unit. 2009-08-12 08:16:10 +00:00
Campbell Barton
63b276efbf - was displaying 1cm as 10mm because of double precission problem.
- typing in numbers without any units will use the units displayed before editing the value.
- fixed some errors
2009-08-12 07:23:10 +00:00
Campbell Barton
d1085715a3 fix for errors evaluating user input when units are disabled 2009-08-12 05:53:12 +00:00
Campbell Barton
23e0571853 added time units, currently only used when metric or imperial are enabled.
long/short units...
day,d,  hour,hr,h,  minute,min,m, second,sec,s,  millisecond,ms,  microsecond,us

Also may fix some bugs that were reported.

Note, to convert fps to time evil_C needs to be used to get the scene.
2009-08-12 05:20:16 +00:00
Campbell Barton
c77e556b23 - missing a decref for new pytypes
- remove needless strlen
2009-08-11 19:20:31 +00:00
Campbell Barton
b2a77852ff user interface units, off by default.
- currently only distances work.
- user preferences, edit section to set the units and scale.
- option to display pairs (nicer for imperial display?)
- support for evaluating multiple comma separated values eg: 2',11" ..or.. 5ft, 4mil
- comma separated expressions/values accumulate 1+1,2**3,4cm/3
- attempted fast conversion from a value to a string so button drawing isn't too slow.

* imperial long/short *
- mile, mi
- yard, yd
- foot, '
- inch, "
- thou, mil

* metric long/short *
kilometer, km
meter, m
centimeter, cm
millimeter, mm
micrometer, um
nanometer, nm
picometer, pm
2009-08-11 18:53:01 +00:00
Ton Roosendaal
3ba949b050 Added libsamplerate.a in Makefile
The structure for names where this lib is could need fix... 
will need feedback from other make users.

Also Python lib in svn is wrong, intel lib???
2009-08-11 18:39:27 +00:00
Ton Roosendaal
d8dc1b9fd4 2.5
Makefiles to get new AUD stuff to compile (OSX 10.3 PPC)
It uses lib/samplerate, which gets committed soon too
2009-08-11 18:14:49 +00:00
Guillermo S. Romero
75fe900c9c SVN maintenance. 2009-08-11 17:51:45 +00:00
Daniel Genrich
9ea24f887c Smoke: fix problem with more than 1 domain + collision and flow groups - reported by nudelZ aka "Master of Smoke" 2009-08-11 12:01:36 +00:00
Joshua Leung
b9584607c5 Animation Editors: Code Cleanup Part 1 - Drawing
Finally started refactoring the drawing code for animation editors so that all the drawing (of the channels/names list) is done using standardised code for all the editors. 

A little specialised system for this has been made, and is now used for DopeSheet and Graph Editor drawing. This should make it easier to add new channel types with less effort.

Protect/mute toggles are now always clamped to the right-hand edge of the channels list. So you can now make the list wider to view longer names fully. However, since the mouse-handling hasn't been fixed yet, this won't always work.

TODOs:
* make mouse-click handling code use this system too, simplifying things to 1-2 lines of code there. Maybe this could be made to use UI widgets instead at a later date?
* NLA still needs to be ported to this system
2009-08-11 11:52:23 +00:00
Campbell Barton
911078aaad fix for using subtype units that are not defined as a part of types. eg.
prop= RNA_def_property(srna, "cursor_location", PROP_FLOAT, PROP_XYZ|PROP_UNIT_LENGTH);
2009-08-11 11:50:40 +00:00
Campbell Barton
1d63cacfe4 fixed mistake made when changing rna prop definition functions, made povray custom props fail. 2009-08-11 02:27:25 +00:00
Brecht Van Lommel
f6682ab773 RNA: subtypes and units
* Reviewed subtypes, making them more specific and adding new ones.
* Subtypes now have an associated type of units (length, area, volume,
  mass, rotation, time, velocity, acceleration). These are not used
  yet anywhere.
* Centralized code that decides the name of array items based on
  subtype (XYZ, RGB), was copied in 3 places.
* RNA_def_float etc functions still need to be update, will do this
  later together with another change.
2009-08-10 21:31:05 +00:00
Brecht Van Lommel
6e5b78a277 RNA: make curve and metaball update functions consistent with
others, these cannot assume the existence of an edit object
or active object.
2009-08-10 21:10:09 +00:00
Brecht Van Lommel
8dd523a154 2.5: Fixes
* Disable shaded mode for now, it cause too many crashes combined
  with preview render, will be fixed properly later.
* Make 3d view toolbar region a bit wider. Ideally this would not
  be needed, but the sculpt/paint buttons just don't fit otherwise.
* Revert change to icon/text spacing in buttons, it breaks text
  editing and clipping. Will properly fix this later so changing
  the spacing can be done centrally.
* Fix for grease pencil simplify stroke python error. Now button
  is hidden (as in 2.4), but still available through outliner.
* Fix for memory leak in UI code, when using ctrl+Q menu.
* Fix submenu > icon being drawn on some buttons where it was not
  needed.
2009-08-10 20:57:12 +00:00
Brecht Van Lommel
24b7d90e95 2.5: UI, tweaks to curve mapping template to fit better
in 3d view panel, and resize properly.
2009-08-10 20:48:38 +00:00