there)
* replaced with nice local (uiBlock) storage of what goes on in drawing.
it now only calls a glDrawBuffer() and glFinish() when it is actually
needed
Result: interface drawing in general is speedy again, especially for gfx
cards that dont allow frontbuffer drawing, and copy stuff to the frontbuf
with a glFinish() call.
Needs to be tested on all platforms... report to me when you see problems
like menus not drawing correctly, tooltips not drawing or not disappearing,
etc.
Thanks Florian Eggenberger for telling us about it. And Greg McBride for
pointing a possible fix.
- Draw.Text and Draw.GetStringWidth updated:
Now they accept an optional second parameter to set font size and Draw.Text
returns the drawn string width.
- Partially fixed the update() and PutRaw() bugs in NMesh:
A total fix will require bigger changes, but what was done (unless buggy)
takes care of the common cases.
Added a function call to creator.c that is needed by exppython, but forgot
to add the function also to the old bpython implementation. Thanks, Hos!
- Addition in Draw.Text and Draw.GetStringWidth (Python Draw methods):
Now script writers can select the font size: normal, small or tiny.
* Moved public declarations in camera and lamp to a new file: bpy_types.h.
* Fixed minor bugs in material, rgbTuple and Lamp + other minor changes.
* Made part of the changes to conform to decided naming conventions.
Now Blender.NMesh.PutRaw() doesn't destroy vertex color info anymore.
Both exppython's NMesh.c and bpython's opy_nmesh.c were updated.
* Minor changes in other files.
- Trying to fix linking problems in OSX;
- Making module .Get functions behave like the ones in Blender 2.25 - 2.27
(Guignot pointed the incompatibility);
- Included more types to Blender.Types;
- Found by luck and corrected two bugs that were making Blender crash;
- Added/updated some simple functions.
Callbacks registered with Draw.Register in Python are called now.
That should fix submodule Blender.Draw.
* Added a few other missing functions to BPY_interface.c
* Finished implementing Get() function for Camera, Lamp, Image and Text:
Both the .Get(name) and .Get() cases are handled now.
* Added function Blender.ReleaseGlobalDict():
This function should give script writers control over whether the
global Python Interpreter Dict should be cleared after the script is
run (default is to clear). This is a test.
Most of the code comes from bpython/intern/opy_window.c, but two
new functions were added, to access the file and image selector
windows in Blender.
* Added submodules Draw (gui) and BGL (OpenGL wrapper):
The code comes from bpython/intern/opy_draw.c, with minor changes
to integrate it in the new implementation.
* Made changes to Camera, Lamp and Image submodules:
The implementation was improved. These files should be good
starting points for interested new coders to look at, now.
* Renamed interface.[ch] to EXPP_interface.[ch] to avoid conflict:
There is another interface.h file in source/blender/include.