Commit Graph

72 Commits

Author SHA1 Message Date
391cc2d004 merge own commits into render branch into trunk since 27560
27562, 27570, 27571, 27574, 27576, 27577, 27579, 27590, 27591, 27594, 27595, 27596, 27599, 27605, 27611, 27612, 27613, 27614, 27623
2010-03-20 16:41:01 +00:00
d96bf316ac Fix [#21657] Blender crashes after importing .obj and selecting a material
Creating an object via some pre-existing obdata via the py api wasn't properly initialising the 
object/mesh material link data.
2010-03-18 06:03:41 +00:00
bc3d96678d bugfix [#21233] Crash in pyapi, with new object.
pass the obdata as an argument rather then assigning later so as not to allow an invalid state.
2010-02-22 00:07:46 +00:00
ac48efc0ab allow removing datablocks in the rare case of <0 users. 2010-02-20 20:59:30 +00:00
081c1205a3 correct fsf address 2010-02-12 13:34:04 +00:00
148435b70a batch remove .'s used with RNA_def_struct_ui_text 2010-02-10 21:15:44 +00:00
c7dfa96aea bugfix [#20639] BF25_SVN_25888 and below - OBJ and 3DS import fails
blender supports type changing for textures in a way that python doesnt.
add a new general function.

Example usage:
 tex = bpy.data.textures.new("Foo")
 tex.type = 'IMAGE'
 tex = tex.recast_type()

Macro to give the number of users accounting for fake user.
 ID_REAL_USERS(id)
Use this so you can remove a datablock if it has a fake users as well as apply transformations to it in the 3D view.

Move api function bpy.data.add_texture() --> bpy.data.textures.new()/remove()
2010-01-17 20:06:34 +00:00
78798ba4df rename free_group to free_group_objects since it doesnt free the group its self. 2010-01-12 13:42:13 +00:00
689450a8f1 rna/py api
bpy.data.groups.new()/remove()
bpy.data.actions.new()/remove()
2010-01-11 23:40:01 +00:00
b6a1bc575b rna/py api
bpy.data.scenes.remove(scene) # now works without crashing
bpy.data.texts.new(name)/remove(text)/load(path) # added
2010-01-11 00:41:31 +00:00
3b03984294 Change how 'Main' collection type definitons work so that 'self' can be used without overriding the srna type. 2010-01-10 15:20:22 +00:00
e11327b9c9 workaround for a problem with rna collection type definitions.
setting the type for a collection does not work if its set before the type is defined.
2010-01-10 14:40:37 +00:00
08c9ecb3b0 RNA/Py API
change how data is added. eg.
 bpy.data.add_mesh(name) --> bpy.data.meshes.new(name)
 bpy.data.remove_lamp(lamp) --> bpy.data.lamps.remove(lamp)


image and texture stil use add_* funcs
2010-01-09 23:44:01 +00:00
07904712e8 RNA:
* Property update functions no longer get context, instead they get only
  Main and Scene. The RNA api was intended to be as context-less as
  possible, since it doesn't really matter who is changing the property,
  everything that uses the property should be updated.
* There's still one exception case that use it now, screen operations
  still depend on context too much. It also revealed a few places using
  context where they shouldn't.
* Ideally Scene shouldn't be passed, but much of Blender still depends on
  it, should be dropped when we try to support multiple scene editing.

Change was planned for a while, but need this now to be able to call
update without a context pointer.
2009-12-08 17:23:48 +00:00
ce36cdac04 - bpy.data.add_armature()
- rigify testnig function, creates all example metarigs, processes and generates graphs for before and after.
2009-12-02 15:37:07 +00:00
b4ef0c7d8d minor fixes for merge of soc-2009-kazanbas, rev23422
- Use CTX_data_main(C) over G.main
- no need to define object_type_items inline.
- rna_mesh.c - dynamic length array was commented out, not sure why this was needed. Povray and PLY scripts rely on faces having 3/4 verts rather then checking the 4th index is 0 (ok in C, not nice in py).
2009-09-22 17:50:29 +00:00
44ddff5c51 - 3ds importer working (without the "scale to size" option)
- changing object.matrix now updates object.loc/rot/scale
- added bpy.data.add_lamp()
2009-08-13 11:14:06 +00:00
2a23fda9d5 OBJ importer almost converted, except a few features (NURBS, NGON, FGON and sharp edges).
Added to API:
- Main.add_image
- Material.z_transparency
- two temporary properties: Image.depth and Image.has_data
2009-07-03 17:44:20 +00:00
617851bf21 - added API functions:
- Mesh.calc_normals
 - Object.add_vertex_to_group
 - Main.add_material
 - Main.add_texture
 - Material.add_texture
- OBJ importer conversion in progress
2009-07-02 20:46:35 +00:00
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
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
4cd24cf058 RNA
Merging changes made by Arystanbek in the soc-2009-kazanbas branch,
plus some things modified and added by me.

* The API files now all in the makesrna module, convention is to
  call them e.g. rna_mesh_api.c for rna_mesh.c. Note for visual
  studio build maintainers, the rna_*_api.c files are compiled as
  part of "makesrna", but do not have rna_*_gen.c generated as part
  of the library. SCons/cmake/make were updated.

* Added function flags FUNC_USE_CONTEXT and FUNC_USE_REPORTS, to
  allow RNA functions to get context and error reporting parameters
  optionally. Renamed FUNC_TYPESTATIC to FUNC_NO_SELF.

* RNA collections now have a pointer to add/remove FunctionRNA's, this
  isn't actually used anywhere yet, purpose is to make an alias
  main.meshes.add() for main.add_mesh() in python.

* Fixes to make autogenerating property set/get for multidimensional
  arrays work, though a 4x4 matrix will be exposed as a length 16
  one dimensional RNA array.

* Functions and properties added:
	* Main.add_mesh()
	* Main.remove_mesh()
	* Object.matrix
	* Object.create_render_mesh()
	* WindowManager.add_fileselect()
2009-06-18 19:48:55 +00:00