Commit Graph

47594 Commits

Author SHA1 Message Date
9325f35d4c ParticleSettings animdata wasn't shown in graph editor, dope sheet and nla editor.
Tiny bug fix too: Had forgotten particle child length setting from do_versions so old files with child hair showed all hair with zero length.
2009-07-24 19:36:08 +00:00
431a388ae7 This is patch# 19017 16bit SGI image loading
submitted by Albertas Vyšniauskas (thezbyg) 

Improves SGI image support.

Kent
2009-07-24 17:17:04 +00:00
f24bcac43e 2.5: Various Fixes
* Fix crash loading particle AnimData. This crashed many BBB
  files. If you have a .blend file that crashes when loading
  it in 2.5, please mail me, I'd like to know.

* Image window zoom ratio did not work correct with py 2.x.
* Other minor fixes for image window RNA.

* Buttons window now remembers the tab that was last clicked
  by the user, even if that tab is no longer available due
  to context, and then enable the tab again if the context
  for it is back.
* Cleaned up buttons space DNA a bit, removing unused vars.

* Armature bone rename outside edit mode did not call right
  function yet.
* Armature layers are now editable even if lib linked. This
  is useful for proxies. For this purpose a PROP_LIB_EXCEPTION
  flag was added. Need to think over proxy / RNA a bit though,
  not sure what the requirements are yet.
* Parent to Armature Deform now has options to create vertex
  groups, instead of always creating them.
2009-07-24 16:41:12 +00:00
d1e42cc5f8 Forgot to add rna_image_api.c. 2009-07-24 15:27:59 +00:00
ad6aaeb319 Resized the preferences window to 800 px. This makes proper space for the header button text. Merged File Paths and Autosave preference tabs to one 'File' item. This makes the number of items inside the tabs more even and makes text in the tabs easier to read when the window is narrower.
Also added weight paint ramp.
2009-07-24 14:30:40 +00:00
d63d703842 - added operator for OBJ importer plus some python 3 conversions 2009-07-24 14:26:47 +00:00
ef6cbc27e0 Buttons for next/prev keyframes in timeline now work again 2009-07-24 13:41:57 +00:00
4158913835 2.5 - Adding Jump to Next/Prev Keyframe Operator
This is implemented at the Screen-level, and only considers scene and active-object keyframes (like the timeline). 

TODO: 
* Need to update the timeline header buttons to use this operator. One limitation is that I can't get the buttons there to take an arg...
2009-07-24 13:34:45 +00:00
7f630d728a tiny change to menu header text. It was almost identical with the menu items themselves, making it impossible to tell them apart. 2009-07-24 13:25:39 +00:00
e0c64de297 2.5
Temp window now clips correctly on left side.
Also increased top offset for OSX to show window header.
2009-07-24 13:17:40 +00:00
fbad147b76 2.5 - Restored 'AutoSide Name' and 'Flip Names' operators for both PoseMode and Edit Mode (Armatures).
Only the PoseMode menus work for now (since these use operators)
2009-07-24 13:02:16 +00:00
6abddb0fc4 2.5
New feature: allowing to open temporarily windows for output.
Implemented for:

- Render output (use output menu "new window" option).
- User Preferences (alt+U, plus added in 'File' menu)

Currently the window opens where your mouse is. The Render window
works as usual, with ESC or F11 moving it to back or front again.
That allows the window position to remain where you moved it on 
new renders.
If you close a render window when it renders, the render thread
will be killed.

User prefs show 'info window' now... i thought we'd use outliner?
Anyhoo, I've made the 'save settings' to close the 2nd window as
well.

Opening a secondary file window for save I'll check on later,
this has to be checked with the current event system still.

the WM_window_open_temp() api call for this maintains currently
a *single* temp window. If you have a render window open, and call
for the preferences, the render window will be used for it. And
the other way around.

On closing the blender window, the temp windows close automatically
when there's no regular window open, and blender quits.
2009-07-24 12:43:59 +00:00
1844fc7057 2.5 - Restored Bone Paths Operators
* A number-counter cursor is now used while sampling the curve
* Fixed some of the drawing errors with the paths. Unfortunately, when the armature is rotated, the path text is drawn in the wrong places still...
2009-07-24 12:27:42 +00:00
ff76c33f9e border and circle select fixes. 2009-07-24 11:56:26 +00:00
84c8992e61 RNA Wrapping Fixes:
* Changed update callbacks for several armature properties to do proper depsgraph flushing instead of sending redraw notifiers

* Wrapped preview-range settings for Scene

* Fixed bug with 'parent-type' enum menu for Object parent-type. The problem here was that PARSKEL was used and is still used for both Armatures and Lattices, but the lattice entry would always override armatures entry. Now, when dynamically building the list to display, the function to add these is given the specific item to use, and has been made to stop after the first match has been added. Hopefully this doesn't break anything else...
2009-07-24 11:24:00 +00:00
62a847d741 uv texture (though not glsl) works now. also fixed some bugs. still some issues left, and for some reason textured objs aren't displaying properly in object mode. 2009-07-24 10:43:58 +00:00
b2606534b6 2.5 - Timeline window now displays keyframe lines again
* Keyframes for scene-linked animdata is drawn first (if 'Only Selected Data Keys' is off)
* Keyframes are also drawn for the active object
2009-07-24 08:05:56 +00:00
c691b2b037 edge and loop select work in uv editor again. 2009-07-24 07:39:41 +00:00
dbd5c5b8a1 2.5 - Animation Tweaks (KeyingSets/NLA)
* Insert Keyframes menu now only displays the 'active keyingset' entry when there are some KeyingSets.

* Moved the validation code for auto-blending/extend modes to NLA editor code, and included calls for this in many of the editing tools for NLA strips.

* Removed obsolete 'ID_IPO' entries from RNA-ID wrapping (these were commented out anyway).
2009-07-24 06:51:33 +00:00
0f4fd4f5b1 NLA - Auto-Blending + 'Smarter' Extend Behaviour
* Auto-blending (blend in/out values get determined based on 'overlaps' of strips) now occurs after transforming strips. Where islands (continuous chains of strips) occur, only the ones on the ends of the islands will get or contribute to auto-blending.

* Extend modes (other than 'nothing') now get automatically determined (after transforms) so that moving strips will no-longer cause problems.

* Added a new option to hide influence curves in NLA. Also, made the line widths for these curves narrower, since the old setting was too ugly.

* Pose copy/paste buffer now gets freed on exit
2009-07-24 06:08:03 +00:00
57727fc145 blender wasn't building on my system because of this, cant this use notifiers? 2009-07-23 22:45:24 +00:00
366a64959c 2.5: Render/Game Engine
An engine to use for output can now be selected an influences what
shows in the buttons window, only showing relevant data. The idea
behind this is to make it more clear what is supported where, make
the system more pluggable for external render/game engines, and save
space hiding stuff that is not relevant anyway.

* Top header now has an engine menu, to choose between the blender
  render engine, game engine, and other future external engines.
* If the game engine is enabled, the buttons window should show
  only properties that work in the game engine, and similarly for
  the render engine.
* Moved panels from the logic space and game tabs to the physics,
  scene and world tabs instead, and removed the game tab.
* Materials and textures tabs should eventually become game
  specific too, to better show what is supported.
2009-07-23 21:50:40 +00:00
1ee8038e41 2.5: Top Menu
* Clean up File menu, added back recover last session op.
* .blend compress now behaves a bit different, previously
  it would only respect the user preference. Now it saves
  existing files the same way they are saved, and new files
  following the user preference. The save operator has a
  Compress toggle in the file browser left panels now.

* Add menu working again, some fixes to make these operators
  work outside the 3d view were needed.
* Timeline menu removed, its contents will be moved to the
  timeline header menus.
* Game menu can now start game, changed the start game op
  to choose another 3d view if none is available.
* Render menu has a few items now.
* Help menu contains a few links again.
2009-07-23 21:35:11 +00:00
0bb50594f9 2.5: UI
* Fix issue where it would automatically scroll when collapsing panels.
* Fix panel dragging not taking zoom level into account.
* Fix enum menu having too small default width in headers.
* Fix tooltips not showing shortcuts etc. if there was not tooltip
  defined for the button.
* Fix some refresh issues with color ramps.

* Add a bit more space between columns in the layout engine.
* Make scrollers darker so they are less distracting, and highlight
  instead of reverse shading when dragging.
2009-07-23 20:50:24 +00:00
062b1b88ad 2.5: Various
* Buttons header: made tab buttons bigger, remove view menu,
  replaced by RMB menu in main region.
* Timeline header: tweak button placement and alignment, added
  a play reverse icon.
* Window type chooser menu: removed audio and scripts windows,
  change console and logic icons.
* Node space: disable the channel region until it is used.
2009-07-23 20:40:51 +00:00
d8f4ab2d59 API:
- freeing strings returned by RNA struct functions in RNA_parameter_list_free

Unit tests:
- check that BKE_export_image actually creates a file. This test is becoming dangerous: it creates and deletes files under /tmp.

Having written this complicated test function I now realize it's much easier to write tests in a scripted language, which gives more 
freedom in expressions and need not be compiled.
2009-07-23 15:57:30 +00:00
f3f89ebac1 cmake updates for compiling with prebuilt py 3.1 on osx 2009-07-23 14:20:08 +00:00
7508afe25b pyrna,
calling rna functions with the wrong argument type would raise an error like..
 expected a string type

Added an error prefix so now the message is..
 TypeError: UILayout.item_enumO(): error with argument 3, "value" -  expected a string type
2009-07-23 13:48:15 +00:00
c96041628e API:
- replaced BKE_copy_images with BKE_export_image, now it handles only one image at a time, this is better since for exporters it is 
easier to export one image at a time writing new image path to a file
- exposing BKE_export_image in RNA as Image.export, interestingly, RNA allowed me to define a function with PROP_STRING return type 
although it doesn't free memory, will fix that in the next commit
- removed bpy.util.copy_images

Unit tests:
- re-wrote a test for BKE_export_image, it's more compact now
- moved unit tests to the creator module to avoid another executable, now running tests with `blender --test`
- as before, unit tests are built only if WITH_BF_UNIT_TEST is non 0
2009-07-23 12:55:26 +00:00
Chingiz Dyussenov
9603fd2289 If <geometry> is instaciated through <controller>, it will be imported. 2009-07-23 11:48:31 +00:00
17a9b3e44c External cache
Particle point cache can now be loaded from external files.
- Activated by "external" checkbox in cache panel and giving proper folder path and file name identifier.
- External cache panel has controls for particle emission start, end, lifetime and random lifetime. These should be set according to the external data for correct playback.
- External files should be named "identifier_frame_index.bphys" or "identifier_frame.bphys" where:
	* "identifier" is a freely choseable name.
	* "frame" is the cached frame number.
		** Six digits padded with zeros!, for example "000024".
	* "index" can be used to tell caches with the same identifier apart.
		** Two digits starting from zero.
		** The index and the underscore before are optional. If no index is present the index number in ui should be set to -1.
- Cache file format is pure floating point numbers (in binary, not text!) with each particle's data one after the other with the following data members:
	* 3 floats: particle's location vector
	* 3 floats: particle's velocity vector (per second)
	* 4 floats: particle's rotation quaternion
	* 3 floats: particle's angular velocity vector (per second)
	* 1 float: frame of the actual data (this can be non-integer for particles that are born or die between two integer frames, but otherwise should be the same as the "frame" in the file name)
- Cache files don't have to exist for each frame.
	* Frames without actual data are interpolated from surrounding frames that have data (extrapolation is not supported).
- Cache file formats with extended (or reduced even) data members are in future plans for easier usage.
- Current code only does particles, don't yet know if it's applicable to cloth or sb.
- Known issue: endianness can't yet be handled in any way.

Other changes:

New hard limits for many particle parameters. Some examples:
- Maximum amount of particles: 10M particles :) And before you all go and crash your Blender trying this out remember that this limit is only for those freaks who really have the machine power to handle it. 10M particles alone take around 2.2 Gb of memory / disk space in saved file and each cached frame takes around 0.5 Gb of memory / disk space depending on cache mode.
	* Known issue: To actually use this many particles they most likely need to be allocated in parts as taking hold of a 2.2Gb chunk of memory at once is probably not ok with any operating system.
- Maximum amount of children: 100k children/particle (1T childparticles here we come :D)
- Kink frequency: -100k to 100k half-rotations (really strange the previous limit was only from zero upwards)
- Path draw steps: 10 (power of 2 remember)
- Path render steps: 20 (power of 2 also!! If over 1M segments doesn't get you smooth paths then I think nothing will!)
2009-07-23 00:19:01 +00:00
2bcb57f29b Second attempt for properly releasing temporary objects and their data
blocks in BlenderStrokeRenderer::~BlenderStrokeRenderer().
2009-07-22 23:27:10 +00:00
afbc5555dc bmeshafied uv unwrapping ops. for lcsm (unwrap), which only takes triangles, I used scanfill to tesselate ngons, which mostly works. scanfill however doesn't always generate nice enough tesselations for lcsm to work properly; the solution is to write a version of beauty fill (which basically turns an arbritrary triangulation into a constrained delauney triangulation) for scanfill, and use it to clean up the tesselations. 2009-07-22 22:35:58 +00:00
b6db4f8e17 Change to avoid trigraph confusions. 2009-07-22 22:12:55 +00:00
413fa4730b less verbose subtyping Py/C API code, use PyObject_CallFunction which supports packing the function args into a string. 2009-07-22 19:50:21 +00:00
94518b6308 2.5
* Make EWA new default, rename Default to Box.
* Fix windows compile issue in texture filter code.
2009-07-22 17:20:04 +00:00
00e219d8e9 FBX exporter:
- made an operator with props for UI. UI is still "raw"
- ran 2to3 on export_fbx.py to make it python 3-compatible

Next: testing/fixing.
2009-07-22 13:35:02 +00:00
702307c8f8 Colorband UI
Fixed the 'Add' button
2009-07-22 11:52:42 +00:00
9387c235a8 Colorband UI
Cleaned up the colorband UI, and tweaked the tooltips. BTW the 'add' button doesn't seem to work yet?
2009-07-22 11:40:59 +00:00
25f7b351aa missed this file 2009-07-22 10:12:00 +00:00
1a42f8c77e removing all functions from bpy.ui module, keeping the module incase its useful later.
removed a check in exotic.c that should be added back later.
2009-07-22 10:09:59 +00:00
ffb8ac01a2 remove scriptlinks,
they were not working and we have plans for better script integration in 2.5
2009-07-22 09:41:41 +00:00
53c1b562af Fixed weird alignment for new mesh objects. This still doesn't work correctly in edit mode, but it's a bit more usable than before. 2009-07-22 06:31:36 +00:00
fa7a27e278 gcc compile fix. 2009-07-22 05:59:34 +00:00
3321a1fd4a Merge with 2.5 -r 21003:21788.
Run smoothly :)
2009-07-22 05:35:12 +00:00
3b058378dd Importer: fix parenting. 2009-07-22 03:51:11 +00:00
be5cd6a4e9 small subdivide fix, and a compile fix 2009-07-22 03:41:24 +00:00
69327f2ebd merge with trunk at r21785, and also fixed stupid ngon normals bug 2009-07-22 02:57:40 +00:00
eecc3f51d4 small bugfix 2009-07-22 00:51:13 +00:00
34744276d4 Made changes for releasing temporary objects and their data blocks
in BlenderStrokeRenderer::~BlenderStrokeRenderer().
2009-07-22 00:01:34 +00:00