Commit Graph

66005 Commits

Author SHA1 Message Date
Campbell Barton
7411a86a41 - was freeing reports on freed listbases
- free reports in a single loop.
- extrude was using a NULL scene, crashed when used as a macro
2009-07-19 04:50:10 +00:00
Joseph Eagar
dc78be0d10 added missing ui script files 2009-07-19 04:32:46 +00:00
Guillermo S. Romero
aad1f809dd SVN maintenance. 2009-07-19 02:28:59 +00:00
Martin Poirier
880c3756e9 Store sketch in armature instead of ugly global.
Like edit data, this isn't saved, just a temp pointer used during work session.

Also bring back sketching panel for 3d view.
2009-07-19 02:26:01 +00:00
Nicholas Bishop
036c0012e6 Sculpt/2.5:
* Added pointer RNA for the sculpt brush
* Converted sculpt settings panel (in the NKEY area) from C to Python
* For Python UI, needed context for whether sculpt is enabled or not; discussed this with Brecht and added sculpt_object to scene context
2009-07-19 01:55:21 +00:00
Campbell Barton
d7564761c0 operator macro playback (run operator reports in the console)
- reports can be selected with RMB, Border (bkey) and (de)select all.
- delete reports (X key)
- run operators in the console (R key)
- copy reports (Ctrl+C), can be pasted in the text editor an run with alt+p

Details
- Added "selected_editable_objects" and "selected_editable_bases" to screen_context.c, use the scene layers, this was needed for duplicate to run outside the 3D view.
- RNA_property_as_string converted an array of 1 into "(num)" need a comma so python sees it as a tuple - "(num,)"
- add flag to reports, use for seletion atm.

opens a new world of context bugs :)
2009-07-19 00:49:44 +00:00
Guillermo S. Romero
ad2e306b09 SVN maintenance. 2009-07-18 23:12:42 +00:00
Campbell Barton
2d88c069bc missed this file in last commit. 2009-07-18 19:42:13 +00:00
Campbell Barton
9b75187c55 initialize keymaps after python so python keymaps, solves the problem of keymaps complaining about python operators not existing, but at the expense of some annoying init flags/functions. :/
Brecht/Ton you may want to check that C->data.py_init is a good place to store this.
2009-07-18 19:40:26 +00:00
Tamito Kajiyama
ef11c4e8e7 Fixed a bug that the parameter panel did not correctly work when
a new file was created or an existing file was loaded.
2009-07-18 18:33:07 +00:00
Campbell Barton
119844eb23 fixes for errors on startup and compiler errors and draw speedup.
* Drawing the console text now skips all lines outside the view bounds.

* Added dummy C operators for console.exec and console.autocomplete so blender wont complain at startup, its not really a problem but people testing reported it a few times. Eventually we should have some way python operators are initialized before the spaces operators are checked.

* reordered the imports so the "ui" dir is imported before "io", for now this means bpy.ops is defined before exporters and importers need to use it, was causing a python error on startup.

* fixed all compiler warnings for the console (gcc4.4)

* stopped operators were printing out the return flag.

* removed references to ACT_OT_test, TEXT_OT_console_exec and TEXT_OT_console_autocomplete
2009-07-18 16:27:25 +00:00
Elia Sarti
75b8badda5 2.5 / RNA Fix for render layers' rendering options
Was using same flag for all options
2009-07-18 15:14:59 +00:00
Martin Poirier
d0b6a27104 Second round of transform mouse buttons experiment.
Confirm on LMB up but cancel on RMB down.

This works well with hotkeys, manipulator, RMB+drag and gesture (when they are added back).

The question is do we stick with one scheme for all or have separate keymaps for different "calling mode".
2009-07-18 15:02:12 +00:00
Martin Poirier
d9e16f494f Use verb for operator names
Translation -> Translate
Rotation -> Rotate
2009-07-18 14:55:03 +00:00
Nicholas Bishop
c13674614e 2.5/Sculpt:
* Fixed the NKEY panel not updating when switching to sculpt mode
* Removed some old XXX'd code for testing textures, can replace that now with proper brush-texture UI
2009-07-18 13:29:47 +00:00
Joshua Leung
3a32411f2b 2.5 - Removing quick test operator that I added by mistake
It was used to quickly test that the red-black tree was being built correctly, but was really an incomplete operator...
2009-07-18 11:39:50 +00:00
Ton Roosendaal
178bc61dd3 2.5
Fix for Makefile to use GLEW in console editor
2009-07-18 11:32:52 +00:00
Joshua Leung
169a87cb0b 2.5 - Optimisations for Keyframe Drawing in DopeSheet
Keyframes are now prepared for drawing by being added to a binary-tree structure instead of using insertion-sort on a Double-Linked List. This gives rather significant improvements on a few bad cases (*).

I've implemented a basic Red-Black Tree whose nodes/data-structures can also be used as a simple Double-Linked List (ListBase) for this purpose. The implementation of this tree currently does not have support for removing individual nodes, since such capabilities aren't needed yet. 

Stats (using keyframes from an imported .bvh animation file):
* When only the keyframes are drawn (i.e. long keyframes are not identified), the time needed to draw the DopeSheet region 10 times went down from 4000ms to about 300ms.
* When long keyframes are considered as well, the same test has gone from 6000ms to 3000ms. There is still a bottleneck there that I haven't been able to remove yet (an attempt at this made the runtimes go through the roof - 32000 ms for the test done here).

Assorted Notes:
* Added missing headers for some files
* Fixed profiling flags for mingw. There was an extra space which prevented the sound-code from compiling.
2009-07-18 07:11:37 +00:00
Campbell Barton
43ac3aebf3 worked for me but broke building for eman, this fixes (both on linux which is confusing). 2009-07-18 07:01:16 +00:00
Campbell Barton
7018af51cd removed BeOS dirs (BeOS isn't supported anymore)
removed unneeded includes for the console.
2009-07-18 05:26:47 +00:00
Joshua Leung
d1bafa00c6 2.5 - Quick fix for NLA drawing
When some object had materials that may have been driven/animated, a crash could sometimes occur if some material-slot had no material.
2009-07-18 04:16:51 +00:00
Campbell Barton
ffdd2d12ce patch from oxben (Benjamin)
* fixes two typos in the material buttons: "Recieve" -> "Receive"
* adds a missing preference in the User Preferences view: "Rotate Around Selected"
2009-07-18 04:09:23 +00:00
Joseph Eagar
ab061807e6 fix link problem 2009-07-18 00:57:47 +00:00
Andre Susano Pinto
2830f25ff3 Another try with building better trees (this should never make worst trees)
Expected number of BB tests should reduce a bit (depending on the scene)
2009-07-17 19:09:42 +00:00
Guillermo S. Romero
4fb20358e4 Source code with executable property, manual fix. *sigh* 2009-07-17 18:35:49 +00:00
Campbell Barton
802ca7f639 patch from William, adds some rna user prefs and adjusts prefs UI. 2009-07-17 12:35:57 +00:00
Campbell Barton
a705f64245 python access to operators now hides the _OT_ syntax, eg. SOME_OT_operator -> some.operator
this works for the calling operators from python and using the RNA api.

bpy.ops.CONSOLE_exec() is now bpy.ops.console.exec()

eg.
split.itemO("PARTICLE_OT_editable_set", text="Free Edit") becomes... split.itemO("particle.editable_set", text="Free Edit")

For now any operator thats called checks if its missing _OT_ and assumes its python syntax and converts it before doing the lookup.

bpy.ops is a python class in release/ui/bpy_ops.py which does the fake submodules and conversion, the C operator api is at bpy.__ops__

personally Id still rather rename C id-names not to contain the _OT_ text which would avoid the conversion, its called a lot since the UI has to convert the operators.
2009-07-17 12:26:40 +00:00
Joseph Eagar
19afbc9785 . . .and I forgot this check 2009-07-17 11:28:44 +00:00
Joseph Eagar
024866726e subdivide experimental stuff is now more stable. basically, it no longer creates new edges in all the situations it used too, plus you can connect two edges in an ngon. 2009-07-17 11:15:06 +00:00
Joseph Eagar
f2138686d9 moved the selection history stuff within bmesh itself, to avoid memory access problems. also committing some playing around I did with the edge subdivide code, which isn't doesn't really completely work. 2009-07-17 10:54:00 +00:00
Chingiz Dyussenov
9bfde6def0 Fixed textures import - images are assigned to faces. 2009-07-17 10:42:32 +00:00
Arystanbek Dyussenov
122104b3bb FBX exporter conversion almost done.
Unit tests:
- add a check that BKE_copy_images produces NULL filepath for images having type other than IMA_TYPE_IMAGE
- also expect NULL filepath for images having empty filename

Enhanced BKE_copy_images so the tests pass.
2009-07-17 10:09:07 +00:00
Chingiz Dyussenov
1aca6face8 Added cameras and lamps import, properties are not taken into account
except position.
2009-07-17 06:12:58 +00:00
Joseph Eagar
359fb502b6 small tweak 2009-07-17 06:12:50 +00:00
Joseph Eagar
6fa67401d8 some small edge split related things. now you can split edges (with no additional geometry created) with mkey. 2009-07-17 06:05:09 +00:00
Joseph Eagar
b588b65618 added vertex connect back to ykey 2009-07-17 05:09:33 +00:00
Joseph Eagar
b5dec78351 more files added. 2009-07-17 04:32:59 +00:00
Joseph Eagar
347712764a more compiling stuff 2009-07-17 04:27:40 +00:00
Joseph Eagar
90fe454280 yet another gcc fix 2009-07-17 04:11:00 +00:00
Matt Ebb
1ef7293585 Colour Management
- 1st stage: Linear Workflow

This implements automatic linear workflow in Blender's renderer. With the 
new Colour Management option on in the Render buttons, all inputs to the 
renderer and compositor are converted to linear colour space before 
rendering, and gamma corrected afterwards. In essence, this makes all 
manual gamma correction with nodes, etc unnecessary, since it's done 
automatically through the pipeline.

It's all explained much better in the notes/doc here, so please have a look:
http://wiki.blender.org/index.php/Dev:Source/Blender/Architecture/Colour_Management

And an example of the sort of difference it makes:
http://mke3.net/blender/devel/rendering/b25_colormanagement_test01.jpg

This also enables Colour Management in the default B.blend, and changes the 
default lamp falloff to inverse square, which is more correct, and much 
easier to use now it's all gamma corrected properly.

Next step is to look into profiles/soft proofing for the compositor.

Thanks to brecht for reviewing and fixing some oversights!
2009-07-17 02:43:15 +00:00
Campbell Barton
70f6255433 bpy rna
Calling rna functions with invalid keywords, too many keywords and too many args would fail silently
- now raise an error with invalid keywords and a list of valid ones, raise an error when too many args are given.
- calling rna functions would alloc a ParameterList each time, changed to use a stack variable (2 pointers and an int).
- store the number of parameters ParameterList
- python exception types were wrong in many cases, (using attribute error rather then type error)
- fixes to small errors in python UI scripts.
2009-07-17 02:31:28 +00:00
Joseph Eagar
fb6dde791d heh, forgot an ; 2009-07-17 02:07:35 +00:00
Joseph Eagar
bccc35b602 another attempt to hopefully fix gcc compiling 2009-07-17 01:57:12 +00:00
Joseph Eagar
fcd3a6de55 another attempt to hopefully fix gcc compiling 2009-07-17 01:43:01 +00:00
Joseph Eagar
f6d96f4363 move an include to hopefully fix gcc compiling 2009-07-17 01:36:21 +00:00
Joseph Eagar
928258936f mirror modifier is now feature-complete, though not all features can be tested at the moment. also cleaned up some of the memory leaks. 2009-07-17 00:32:19 +00:00
Joshua Leung
c6c853d88a 2.5 - 2 Tweaks
* Comment re-formatting for keyframe drawing code
* Removed redundant frame number button from buttons view header.
2009-07-17 00:17:37 +00:00
Campbell Barton
ef28383ab9 grr, py 2.5 2.6 and 3.x need different StringIO's 2009-07-16 23:04:29 +00:00
Campbell Barton
deb180e37f - Scrollbars for the console (use View2D functions)
- Set View2D operators not to register, got in the way a lot with the console.
- Made autocomplete Ctrl+Enter so Tab can be used.
- Should work with python 2.5 now. (patch from Vilda)
- Moved report struct definitions into DNA_windowmanager_types.h, could also have DNA_report_types.h however the reports are not saved, its just needed so the report list can be used in the wmWindowManager struct. Fixes a crash reported by ZanQdo.
- Store the report message length in the report so calculating the total height including word wrap is not so slow.
2009-07-16 22:47:27 +00:00
Joseph Eagar
479c970375 odd, this didn't get committed before 2009-07-16 22:23:01 +00:00