* Split Blender.c (created Blender.h)
* Followed a naming convention suggested by Willian for Modules and Classes.
* Implemented New, Get and GetSelected functions for the Object module.
* Implemented most of the attributes in the Get and Set functions for the
Object module.
* Hopefully fixed a link error on OS X.
Declared g_blenderdict externally in modules.h and moved the real
declaration to Blender.c
* Implemented BPY_end_python function.
* Implemented error handling. This results in rerunning a script after an
error has occurred. No need to restart blender anymore.
* Camera module supports dir()
* variable assignment now calls the Python equivalent function - this has
type checking and should be safer now.
* Implemented the Lamp module. Used the Camera module as a template.
* Implemented the Image module.
* Added EXPP_ClampFloat and EXPP_intError functions to gen_utils.[ch]
* Implemented 'constant' object.
I am a little skeptical about this patch, because somehow
the file had the TXT_ISEXT flag set in it, and the support for
that feature isn't complete. What I want to know is how that
flag got set in the first place, none of the interface code
turns it on.
At least it fixes the crash.
- drawXXXspace, changeXXXspace, and winqreadXXXspace now receive the area
and spacedata as explicit arguments, allowing them to access private
data w/o going through globals.
- pass the new BWinEvent through to the winqreadXXXspace, allowing future
access to extended event data.
Removed direct calls to winqreadXXXspace to simulate user actions, replaced
by calls to action functions in edit.c or the appropriate handler.
The tooltip on the button is wrong, it doesn't translate
the view it zooms it to a specific region. Tooltip has
been updated and border-zoom functionality was not working
in oops window, fixed.
(this alleviates the problem where using the enter key
effects the widget under the mouse cursor instead of
doing an 'OK' (symptom: getting the wrong number of verts
when adding a mesh circle).
gen_utils.c (GetObjectByName).
* Blender.link, Blender.bylink and Blender.event should work. Somehow the
only event coming through now is only REDRAW.
* Added include path to /intern/guardedalloc
Michel
* Object.Get("") should work.
* Many variables from module Object are implemented.
* Updated build environment to generate more warnings (-Wall)
Michel
wrapper functionality by hand.
* Removed the swig files (*.i and *_wrap.c)
* Created initial datablock functionality. Most of it has been copied from
the old implementation.
* Created some general functions in gen_utils.[ch]
* Blender.Get(), Blender.Set() and Blender.Redraw functions should work in a
script now.
* Started implementation on an Event function call (BPY_do_pyscript)
Michel
Blender.
* Moved api2_2x/interface.c to ./BPY_interface.c
This will be the general api layer from which all variants of the Blender
api. Currently only the 2.2x variant is initialised.
* Used swig (www.swig.org) to create Python wrappers for a couple of dummy
functions.
* Started implementation of the Blender and Blender.Object modules.
Michel
If I had to guess REMAKEIPO is kind of miss named.
since what it does it free up memory it almost looks like it should be a part of
REMAKEALLIPO we both felt a little overwhelmed by the code though and opted for
just calling both of them in delete_nlachannel_keys
I also added in allqueue (REDRAWVIEW3D, 0);
since things could probably change around since your recalcing the ipo's...
Kent
The third is for actually loading the plugins in blender.
For some reason its not identifying the plugins correctly,
but it compiles and runs so I'm including it hoping someone else
might see where I've messed things up...
I have a simple example at http://www.cs.umn.edu/~mein/test.tgz that
works, if anyone is interested in playing with it.
Kent
Using this flag the following component is build:
source/blender/python
and the following components are not build:
intern/python
source/blender/bpython
Without specifying the flag, things act as they used to do.
Also created a dummy interface.c file and created the directories
which will contain the replacement code for:
- intern/python
- source/blender/bpython
Michel
leaves one object center pink" bug was actually designed by somebody
to mark the active object (which need not necessarily be selected).
I've added a couple of source comments to explain this so the next
person trying to fix this doesn't bother.
a short, so we cast to an int first, then to a short when a button that
modifies a short value is pressed. (Allieviates the bug where the
Unified Renderer button modifies the values of a bunch of other buttons).
action channel from the cooresponding
action when the bone's IPO is deleted
from the IPO window (the old behavior
was to set the channel's ipo to NULL
without removing it from the action).
This is to alleviate the problem that
there is a lot of action channel code
that tries to access the channel's ipo
(chan->ipo) without testing whether
it is NULL or not (resulting in a
segfault).
This seems to be the best way to
solve this problem ... unless there
is a reason why it might be useful
to have an action channel with no
ipo attached to it?
Thanks to zel365 for uncovering this
problem.
the wireframe after drawing the model in solid/shaded/textured mode.
The user can set this per object using the "Wire" button in the
edit buttons window.
- border select initiated in the channel names border
selects the channels and constraint channels.
- right click or border select initiated in the horizontal
scroll causes blender to select all keys for the selected
frames.
- right click or border select in the vertical scroll
causes blender to select all keys for the channel or
constraint channels that are to the left of the selection.
doing the bulk of the work when he added the button).
The new x-ray button is added in the edit buttons when
the armature is selected. (suggested by ztonzy)
the action window. Selecting action keys and pressing VKEY,
HKEY, or shift-HKEY modifies the handles of the keys in
the same way it does in the IPO window. (suggested by Lyubomir)
build systems (auto, msvc, PB) do not seem to have this problem.
- Change intern/python/freeze/Makefile to freeze outside of the source/ tree
- Change source/blender/bpython/Makefile to not build the frozen stuff anymore
- Change source/blender/bpython/intern/Makefile to use CURRENT_PYTHON_API
instead of FUTURE_PYTHON_API, damage control
and there is a block at the very end for platforms not specified above.
(not all of the defintions are in the platform's for example there
is no need for export NAN_IKSOLVER ?= $(LCGDIR)/iksolver
to be repeated all over the place, all of the ones you'll probably
want to change are in the platform specific blocks though)
This allows all platforms to be overridden by env vars...
Kent
#ifdef __APPLE__
#include <OpenGL/gl.h>
#else
#include <GL/gl.h>
#endif
(also for <GL/glu.h>)
so that people don't have to create symlinks in
/System/Library/Frameworks/OpenGL.framework on Mac OS X
(Charles Wardlaw)
lib/ and came from extern/ (which isn't in the new repository at all)
So use stuff like:
ifeq ($(OS),freebsd)
export NAN_OPENSSL ?= /usr
else
export NAN_OPENSSL ?= $(LCGDIR)/openssl
endif
Hans
(configure --enable-gameengine). However, you still need to manually configure,
compile and install ode.
* Following the original NaN makefile, I removed the TerraplayNetwork files
from the build. (Moved the two files to EXTRA_DIST).
* Pass a const char * to Py_BuildValue instead of a STR_String in
BL_ActionActuator.cpp
* Added some include directories in Makefile.am's
Michel
and include both files.
Anyway I was fixing the warning with ascii char... Here is the diff for
editfont.c (the .h was just fixing the header to match it)
Kent
Index: editfont.c
===================================================================
RCS file: /cvs01/blender/source/blender/src/editfont.c,v
retrieving revision 1.3
diff -u -r1.3 editfont.c
--- editfont.c 25 Nov 2002 12:02:05 -0000 1.3
+++ editfont.c 31 Dec 2002 11:52:10 -0000
@@ -226,11 +226,12 @@
}
}
-void do_textedit(unsigned short event, short val, char ascii)
+void do_textedit(unsigned short event, short val, unsigned char _ascii)
{
Curve *cu;
static int accentcode= 0;
int x, doit=0, cursmove=0;
+ int ascii = _ascii;
It was causing funky artifacts on some letters that dropped down into the
background.
Here is the diff
Kent
Index: toolbox.c
===================================================================
RCS file: /cvs01/blender/source/blender/src/toolbox.c,v
retrieving revision 1.5
diff -u -r1.5 toolbox.c
--- toolbox.c 22 Dec 2002 13:43:21 -0000 1.5
+++ toolbox.c 30 Dec 2002 20:13:51 -0000
@@ -506,7 +506,7 @@
oldcursor= get_cursor();
set_cursor(CURSOR_STD);
- tbfontyofs= (TBOXH-11)/2; /* toolbox, hier stond ooit getheigh */
+ tbfontyofs= (TBOXH-11)/2 +2; /* toolbox, hier stond ooit getheigh */
}
same thing:
Added the xpcom include and added a flag to use mozilla vs netscape.
Which basically adds some ifdefs to
_Blender3DPlugin_implementation_.cpp
Basically I modified the nan_definitions.mk in the following way
(You'll need to update yours don't forget) ;)
Also updated the makefiles to use the new vars and flushed them out
so they first include whatever nspr is set to and then look in
NAN_MOZILLA_INC
I wasn't sure what the NAN_MOZILLA_INC and _LIB defaults should be
since were assuming they point to a netscape dir by default (or maybe
old mozilla???)
maybe they should be
export NAN_MOZILLA_INC ?= $(LCGDIR)/netscape/include
export NAN_MOZILLA_LIB ?= $(LCGDIR)/netscape/lib/
instead...
Anyone have any opinions on the defaults?
Kent
--
mein@cs.umn.edu
Index: nan_definitions.mk
===================================================================
RCS file: /cvs01/blender/source/nan_definitions.mk,v
retrieving revision 1.8
diff -u -r1.8 nan_definitions.mk
--- nan_definitions.mk 2002/12/19 21:12:58 1.8
+++ nan_definitions.mk 2002/12/20 19:28:51
@@ -75,7 +75,13 @@
export NAN_TEST_VERBOSITY ?= 1
export NAN_ZLIB ?= $(LCGDIR)/zlib
export NAN_BMFONT ?= $(LCGDIR)/bmfont
- export NAN_MOZILLA ?= $(LCGDIR)/mozilla
+ # Uncomment the following line to use Mozilla inplace of netscape
+ # CPPFLAGS +=-DMOZ_NOT_NET
+ # Location of MOZILLA/Netscape header files...
+ export NAN_MOZILLA_INC ?= $(LCGDIR)/mozilla/include
+ export NAN_MOZILLA_LIB ?= $(LCGDIR)/mozilla/lib/
+ # Will fall back to look in NAN_MOZILLA_INC/nspr and NAN_MOZILLA_LIB
+ # if this is not set.
export NAN_NSPR ?= $(LCGDIR)/nspr
comment inside of a comment
Also removed the config.h thing since this is a .h
Hopefully I'll get around to the other .h's soon.
Kent
--
mein@cs.umn.edu
Time to go watch er.
Note this was already done with face_old, img_old was probably just
overlooked.
(If you guys didn't notice I was sick for a couple of days but I'm back now
as you can tell)
Kent
--
mein@cs.umn.edu
Index: editface.c
===================================================================
RCS file: /cvs01/blender/source/blender/src/editface.c,v
retrieving revision 1.3
diff -u -r1.3 editface.c
--- editface.c 2002/11/25 12:02:05 1.3
+++ editface.c 2002/12/20 02:50:55
@@ -1202,7 +1202,7 @@
TFace *face, *face_old = 0;
short xy[2], xy_old[2];
//int a, index;
- Image *img, *img_old;
+ Image *img, *img_old = 0;
in readfile.c I renamed some localvars that were named main to mainl in
a couple of functions.
in action.c I initalized a var to 0. This is probably not needed but
its a little safer incase someone adds more modes...
I've included a diff of this last one below.
Kent
Index: action.c
===================================================================
RCS file: /cvs01/blender/source/blender/blenkernel/intern/action.c,v
retrieving revision 1.6
diff -u -r1.6 action.c
--- action.c 2002/11/25 12:01:52 1.6
+++ action.c 2002/12/20 02:06:27
@@ -153,7 +153,7 @@
){
bConstraint *dcon;
const bConstraint *scon;
- float dstweight;
+ float dstweight = 0;
switch (mode){
case POSE_BLEND:
some linking stuff that was in libmoto.a so I added a libmoto after it
in the link lines.
Hans got a better way to do this? :)
Kent
Here is the diff:
RCS file: /cvs01/blender/source/Makefile,v
retrieving revision 1.12
diff -u -r1.12 Makefile
--- Makefile 2002/11/13 16:09:38 1.12
+++ Makefile 2002/12/13 20:28:13
@@ -165,6 +165,7 @@
COMLIB += $(NAN_PNG)/lib/libpng.a
BCLIB = $(NAN_IKSOLVER)/lib/libiksolver.a
+ BCLIB += $(NAN_MOTO)/lib/libmoto.a
BCLIB += $(OCGDIR)/blender/readblenfile/$(DEBUG_DIR)libreadblenfile.a
BCLIB += $(OCGDIR)/blender/readstreamglue/$(DEBUG_DIR)libreadstreamglue.a
BCLIB += $(OCGDIR)/blender/writestreamglueSTUB/$(DEBUG_DIR)libwritestreamglueSTUB.a
@@ -174,6 +175,7 @@
BCLIB += $(OCGDIR)/blender/src/$(DEBUG_DIR)libsrccreator.a
PULIB = $(NAN_IKSOLVER)/lib/libiksolver.a
+ PULIB += $(NAN_MOTO)/lib/libmoto.a
PULIB += $(OCGDIR)/blender/readblenfile/$(DEBUG_DIR)libreadblenfile.a
PULIB += $(OCGDIR)/blender/readstreamglue/$(DEBUG_DIR)libreadstreamglue.a
PULIB += $(OCGDIR)/blender/writestreamglue/$(DEBUG_DIR)libwritestreamglue.a
source/blender/makesdna/intern/dna.c
This should fix the segfault at startup for non-x86 systems (tested on
linux/ppc and linux/x86). I would be glad if someone could check
if it works on other systems as well.
sgefant
(I noticed its not completely gone yet from the blender/source dir)
But its a big step in the right direction if it doesn't enable
all of the functionatlity already...
(Using cscope for LICENSE_KEY_VALID still turns up some stuff)
Kent
--
mein@cs.umn.edu
some people are getting sick of the email and the comments are small.
editmesh.c I added casts in a couple of places to remove a few warnings.
Then I cleaned up configure.ac a bit specifically the checks for
--with-ssl etc... so they work a little nicer.
I also modified source/Makefile.am to add targets for the player
Still needs some work I'm sure but its a start.
Kent
--
mein@cs.umn.edu
(also adding a couple of include pathes)
changes in Ode*.cpp to get it compile with gcc 2.95.4
to make it compile with ./configure --with-gameengine
--enable-gameplayer
Kent
--
mein@cs.umn.edu
(adding)
#ifdef HAVE_CONFIG_H
#include <config.h>
#endif
also the Makefile.in's were from previous patch adding
the system depend stuff to configure.ac
Kent
--
mein@cs.umn.edu
+case "$target" in
+ *sparc* )
+ AC_DEFINE(SUN_OGL_NO_VERTEX_MACROS,1,[Fix for Sun's GL])
+ ;;
+esac
+
Also added the include to the above .c files.
I'm going to add it to everything in source just haven't gotten that far yet.
Kent
I also moved it so that it gets put in:
$(OCGDIR)/blender/bpython/$(DEBUG_DIR)libfrozen.a
and removed the stuff from the readme on how to do it by hand.
(I made one other small change and that was to comment
out the ssr target on solaris and freebsd in source/Makefile
I forgot to commit it yesterday)
Kent
--
mein@cs.umn.edu
nan_definitions.mk to setup NANBLENDERHOME and everything is under that
directory.
also add empty dirs for lib and obj.
Try it out and feel free to make improvements.
mein@cs.umn.edu
(note these are all in source/blender/verify)
Sorry about not putting the full path in on the last two,
I just noticed it doesn't do that unless your in the root dir.
mein@cs.umn.edu
(ketsji was a very wrong location because it caused circular dependencies between expressions, gamelogic and ketsji)
expressions and game logic are not dependent on ketsji anymore (only the other way around)
also removed circular includes in makefiles and projectfiles