svn merge -r36583:36603 https://svn.blender.org/svnroot/bf-blender/trunk/blender
authorCampbell Barton <ideasman42@gmail.com>
Wed, 11 May 2011 00:19:13 +0000 (00:19 +0000)
committerCampbell Barton <ideasman42@gmail.com>
Wed, 11 May 2011 00:19:13 +0000 (00:19 +0000)
38 files changed:
build_files/cmake/packaging.cmake
build_files/package_spec/rpm/blender.spec.in
intern/ghost/intern/GHOST_SystemWin32.h
release/scripts/startup/bl_ui/properties_data_camera.py
source/blender/blenfont/intern/blf_dir.c
source/blender/blenfont/intern/blf_internal.h
source/blender/blenkernel/intern/displist.c
source/blender/blenkernel/intern/object.c
source/blender/blenlib/intern/rand.c
source/blender/editors/curve/editcurve.c
source/blender/editors/interface/interface_handlers.c
source/blender/editors/object/object_transform.c
source/blender/editors/screen/screen_ops.c
source/blender/editors/space_nla/nla_select.c
source/blender/editors/space_view3d/view3d_draw.c
source/blender/editors/space_view3d/view3d_snap.c
source/blender/editors/util/util_intern.h
source/blender/editors/uvedit/uvedit_ops.c
source/blender/gpu/intern/gpu_draw.c
source/blender/imbuf/intern/cineon/cineon_dpx.c
source/blender/imbuf/intern/cineon/cineonfile.h
source/blender/imbuf/intern/cineon/cineonlib.c
source/blender/imbuf/intern/cineon/logmemfile.c
source/blender/makesdna/DNA_camera_types.h
source/blender/makesrna/intern/rna_camera.c
source/blender/makesrna/intern/rna_scene.c
source/blender/nodes/intern/CMP_nodes/CMP_rgb.c
source/blender/python/generic/IDProp.c
source/blender/python/intern/bpy_library.c
source/blender/python/intern/bpy_operator.c
source/blender/python/intern/bpy_rna.h
source/blender/render/intern/include/shading.h
source/blender/render/intern/source/rayshade.c
source/blender/render/intern/source/renderdatabase.c
source/blender/render/intern/source/strand.c
source/blender/render/intern/source/sunsky.c
source/blender/render/intern/source/volume_precache.c
source/blender/render/intern/source/volumetric.c

index 07c5add52b007f69daecd8cda45a20a00ff0cc1f..6cda62b487fd69ab89849a51845aede5b790810a 100644 (file)
@@ -38,7 +38,7 @@ if(CMAKE_SYSTEM_NAME MATCHES "Linux")
        include(build_files/cmake/RpmBuild.cmake)
        if(RPMBUILD_FOUND AND NOT WIN32)
                set(CPACK_GENERATOR "RPM")
-               set(CPACK_RPM_PACKAGE_RELEASE "r${BUILD_REV}")
+               set(CPACK_RPM_PACKAGE_RELEASE "1.r${BUILD_REV}")
                set(CPACK_SET_DESTDIR "true")
                set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "${PROJECT_DESCRIPTION}")
                set(CPACK_PACKAGE_RELOCATABLE "false")
index 32c9ef99820b4dcddb1dd85ae7e409a5d5b3aba9..502e9f36251ef40a4b1dac319c38f03798af4963 100644 (file)
@@ -5,7 +5,7 @@ BuildRoot:      @CPACK_RPM_DIRECTORY@/@CPACK_PACKAGE_FILE_NAME@@CPACK_RPM_PACKAG
 Summary:        @CPACK_RPM_PACKAGE_SUMMARY@
 Name:           @CPACK_RPM_PACKAGE_NAME@
 Version:        @CPACK_RPM_PACKAGE_VERSION@
-Release:        @CPACK_RPM_PACKAGE_RELEASE@
+Release:        @CPACK_RPM_PACKAGE_RELEASE@%{?dist}
 License:        @CPACK_RPM_PACKAGE_LICENSE@
 Group:          @CPACK_RPM_PACKAGE_GROUP@
 Vendor:         @CPACK_RPM_PACKAGE_VENDOR@
index 2dad3a6f44d768e94c90c1e97ac1d74804bd7ffa..27c0cf33314309b37ab1cde99f32e8f266b324f2 100644 (file)
@@ -52,6 +52,9 @@
 #ifndef RID_INPUT
 #define RID_INPUT 0x10000003
 #endif
+#ifndef RIM_INPUTSINK
+#define RIM_INPUTSINK 0x1
+#endif
 #ifndef RI_KEY_BREAK
 #define RI_KEY_BREAK 0x1
 #endif
index e5076fd20d5922c8855473fc7120b39ddbc8b55d..80cd5227fca8043d72182e0db9cbc151a5654e8c 100644 (file)
@@ -127,6 +127,7 @@ class DATA_PT_camera_display(CameraButtonsPanel, bpy.types.Panel):
         col.prop(cam, "show_mist", text="Mist")
         col.prop(cam, "show_title_safe", text="Title Safe")
         col.prop(cam, "show_name", text="Name")
+        col.prop_menu_enum(cam, "show_guide")
 
         col = split.column()
         col.prop(cam, "draw_size", text="Size")
index 857ead0b7cdd79ed9081fa6b17b855edbfe96ab6..fd874d991ead1f6aaae5e86e418e1805a672ad3e 100644 (file)
@@ -51,6 +51,7 @@
 
 #include "BLF_api.h"
 #include "blf_internal_types.h"
+#include "blf_internal.h"
 
 static ListBase global_font_dir= { NULL, NULL };
 
@@ -150,6 +151,7 @@ char *blf_dir_search(const char *file)
        return(s);
 }
 
+#if 0 // UNUSED
 int blf_dir_split(const char *str, char *file, int *size)
 {
        int i, len;
@@ -173,6 +175,7 @@ int blf_dir_split(const char *str, char *file, int *size)
        }
        return(0);
 }
+#endif
 
 /* Some font have additional file with metrics information,
  * in general, the extension of the file is: .afm or .pfm
index 34df8d7210306b797bdb3232f90495b70d9c2d17..9271d8d5a9e771b9c6ba263511ed68c081fd45d7 100644 (file)
@@ -44,7 +44,7 @@ int blf_utf8_next(unsigned char *buf, int *iindex);
 
 char *blf_dir_search(const char *file);
 char *blf_dir_metrics_search(const char *filename);
-int blf_dir_split(const char *str, char *file, int *size);
+// int blf_dir_split(const char *str, char *file, int *size); // UNUSED
 
 int blf_font_init(void);
 void blf_font_exit(void);
index 6d70572c8a40ce58e0eaad8c0d80a5e147bd3bbd..a3a91c3b4420a906dbd0056e58637a2f03fa1d51 100644 (file)
@@ -72,6 +72,8 @@
 
 #include "ED_curve.h" /* for BKE_curve_nurbs */
 
+extern Material defmaterial;   /* material.c */
+
 static void boundbox_displist(Object *ob);
 
 void free_disp_elem(DispList *dl)
@@ -552,7 +554,6 @@ static void mesh_create_shadedColors(Render *re, Object *ob, int onlyForMesh, un
        }               
 
        for (i=0; i<totface; i++) {
-               extern Material defmaterial;    /* material.c */
                MFace *mf= &mface[i];
                Material *ma= give_current_material(ob, mf->mat_nr+1);
                int j, vidx[4], nverts= mf->v4?4:3;
@@ -664,8 +665,6 @@ void shadeDispList(Scene *scene, Base *base)
                        dl= ob->disp.first;
                        
                        while(dl) {
-                               extern Material defmaterial;    /* material.c */
-                               
                                dlob= MEM_callocN(sizeof(DispList), "displistshade");
                                BLI_addtail(&ob->disp, dlob);
                                dlob->type= DL_VERTCOL;
@@ -734,8 +733,6 @@ void shadeDispList(Scene *scene, Base *base)
                                
                                if(dl->type==DL_INDEX4) {
                                        if(dl->nors) {
-                                               extern Material defmaterial;    /* material.c */
-                                               
                                                if(dl->col1) MEM_freeN(dl->col1);
                                                col1= dl->col1= MEM_mallocN(sizeof(int)*dl->nr, "col1");
                                
index eb796b073d8d94ba6ed2ba3eb36c888bee946962..caae8763f8354910431d52f9acb35852abd0afb6 100644 (file)
@@ -1929,9 +1929,10 @@ static void give_parvert(Object *par, int nr, float *vec)
                if(dm) {
                        MVert *mvert= dm->getVertArray(dm);
                        int *index = (int *)dm->getVertDataArray(dm, CD_ORIGINDEX);
-                       int i, count = 0, vindex, numVerts = dm->getNumVerts(dm);
+                       int i, vindex, numVerts = dm->getNumVerts(dm);
 
                        /* get the average of all verts with (original index == nr) */
+                       count= 0;
                        for(i = 0; i < numVerts; i++) {
                                vindex= (index)? index[i]: i;
 
index d889c1b9bf2e791304ef9b8be3391ac65f5ae914..9bd540e46ea60e708b69b2200dcada5214c194f6 100644 (file)
@@ -58,6 +58,8 @@ typedef unsigned long long    r_uint64;
 
 #define LOWSEED                0x330E
 
+extern unsigned char hash[];   // noise.c
+
 /***/
 
 struct RNG {
@@ -83,8 +85,6 @@ void rng_seed(RNG *rng, unsigned int seed) {
 }
 
 void rng_srandom(RNG *rng, unsigned int seed) {
-       extern unsigned char hash[];    // noise.c
-       
        rng_seed(rng, seed + hash[seed & 255]);
        seed= rng_getInt(rng);
        rng_seed(rng, seed + hash[seed & 255]);
@@ -180,8 +180,6 @@ static RNG rng_tab[BLENDER_MAX_THREADS];
 
 void BLI_thread_srandom(int thread, unsigned int seed)
 {
-       extern unsigned char hash[];    // noise.c
-       
        if(thread >= BLENDER_MAX_THREADS)
                thread= 0;
        
index 5801120dde4eea6d02cb2a0b37cbb6d472f06e31..4606b443e65cc13b0576ea307158fee1b7462de2 100644 (file)
@@ -6118,6 +6118,7 @@ int join_curve_exec(bContext *C, wmOperator *UNUSED(op))
                                                                mul_m4_v3(cmat, bezt->vec[2]);
                                                                bezt++;
                                                        }
+                                                       calchandlesNurb(newnu);
                                                }
                                                if( (bp= newnu->bp) ) {
                                                        a= newnu->pntsu*nu->pntsv;
index ae5af18544275d4b32afb0e525ab914cba16bfa2..e2910d33b12db1227579314ea95483b9cef67eb5 100644 (file)
@@ -262,14 +262,12 @@ static int ui_is_a_warp_but(uiBut *but)
 static int ui_is_utf8_but(uiBut *but)
 {
        if (but->rnaprop) {
-               int subtype= RNA_property_subtype(but->rnaprop);
-               
-               if(ELEM3(subtype, PROP_FILEPATH, PROP_DIRPATH, PROP_FILENAME)) {
-                       return TRUE;
-               }
+               const int subtype= RNA_property_subtype(but->rnaprop);
+               return !(ELEM3(subtype, PROP_FILEPATH, PROP_DIRPATH, PROP_FILENAME));
+       }
+       else {
+               return !(but->flag & UI_BUT_NO_UTF8);
        }
-
-       return !(but->flag & UI_BUT_NO_UTF8);
 }
 
 /* ********************** button apply/revert ************************/
@@ -1679,7 +1677,7 @@ static void ui_textedit_begin(bContext *C, uiBut *but, uiHandleButtonData *data)
 static void ui_textedit_end(bContext *C, uiBut *but, uiHandleButtonData *data)
 {
        if(but) {
-               if(!ui_is_utf8_but(but)) {
+               if(ui_is_utf8_but(but)) {
                        int strip= BLI_utf8_invalid_strip(but->editstr, strlen(but->editstr));
                        /* not a file?, strip non utf-8 chars */
                        if(strip) {
index f47d1d7c1f81d0d9dfd449eff4b44ea9b49a03b1..fcf049023a7be365e7cc9e3a1b0a8014b57ff7ff 100644 (file)
@@ -516,6 +516,7 @@ static int apply_objects_internal(bContext *C, ReportList *reports, int apply_lo
                                                mul_m4_v3(mat, bezt->vec[2]);
                                                bezt->radius *= scale;
                                        }
+                                       calchandlesNurb(nu);
                                }
                                else {
                                        a= nu->pntsu*nu->pntsv;
index 64a332c567be3916e9c3faceb1b6a17bf9e33d80..b7622565c245c6275f4371f28aadc686f57d5ac1 100644 (file)
@@ -111,7 +111,7 @@ int ED_operator_screenactive(bContext *C)
 }
 
 /* XXX added this to prevent anim state to change during renders */
-int ED_operator_screenactive_norender(bContext *C)
+static int ED_operator_screenactive_norender(bContext *C)
 {
        if(G.rendering) return 0;
        if(CTX_wm_window(C)==NULL) return 0;
index d75c1aa7dd37b0073223bfaaaeec7c2926988dd7..188042ad1d1870d0fe4ab8eba471a93cba8e8f04 100644 (file)
@@ -612,7 +612,7 @@ static int nlaedit_clickselect_invoke(bContext *C, wmOperator *op, wmEvent *even
        bAnimContext ac;
        Scene *scene;
        ARegion *ar;
-       View2D *v2d;
+       // View2D *v2d; /*UNUSED*/
        short selectmode;
        int mval[2];
        
@@ -623,7 +623,7 @@ static int nlaedit_clickselect_invoke(bContext *C, wmOperator *op, wmEvent *even
        /* get useful pointers from animation context data */
        scene= ac.scene;
        ar= ac.ar;
-       v2d= &ar->v2d;
+       // v2d= &ar->v2d;
        
        /* get mouse coordinates (in region coordinates) */
        mval[0]= (event->x - ar->winrct.xmin);
index e967e8ed2e7b3f395fe87df636e5bd9ecdd0989f..fe0b0b7c928d2a3fd0c87a438a544e4a55b58c43 100644 (file)
@@ -921,6 +921,60 @@ void view3d_calc_camera_border(Scene *scene, ARegion *ar, RegionView3D *rv3d, Vi
        }
 }
 
+static void drawviewborder_grid3(float x1, float x2, float y1, float y2, float fac, char diagonal)
+{
+       float x3, y3, x4, y4;
+
+       x3= x1 + fac * (x2-x1);
+       y3= y1 + fac * (y2-y1);
+       x4= x1 + (1.0f - fac) * (x2-x1);
+       y4= y1 + (1.0f - fac) * (y2-y1);
+
+       glBegin(GL_LINES);
+       switch(diagonal) {
+       case '\0':
+               glVertex2f(x1, y3);
+               glVertex2f(x2, y3);
+
+               glVertex2f(x1, y4);
+               glVertex2f(x2, y4);
+
+               glVertex2f(x3, y1);
+               glVertex2f(x3, y2);
+
+               glVertex2f(x4, y1);
+               glVertex2f(x4, y2);
+               break;
+       case 'H': /* hoz */
+               glVertex2f(x1, y1);
+               glVertex2f(x2, y4);
+
+               glVertex2f(x1, y3);
+               glVertex2f(x2, y2);
+
+               glVertex2f(x2, y1);
+               glVertex2f(x1, y4);
+
+               glVertex2f(x2, y3);
+               glVertex2f(x1, y2);
+               break;
+       case 'V': /* vert */
+               glVertex2f(x1, y1);
+               glVertex2f(x4, y2);
+
+               glVertex2f(x3, y1);
+               glVertex2f(x2, y2);
+
+               glVertex2f(x1, y2);
+               glVertex2f(x4, y1);
+
+               glVertex2f(x3, y2);
+               glVertex2f(x2, y1);
+               break;
+       }
+       glEnd();
+}
+
 static void drawviewborder(Scene *scene, ARegion *ar, View3D *v3d)
 {
        float fac, a;
@@ -995,21 +1049,70 @@ static void drawviewborder(Scene *scene, ARegion *ar, View3D *v3d)
        }
 
        /* safety border */
-       if (ca && (ca->flag & CAM_SHOWTITLESAFE)) {
-               fac= 0.1;
-               
-               a= fac*(x2-x1);
-               x1+= a; 
-               x2-= a;
-               
-               a= fac*(y2-y1);
-               y1+= a;
-               y2-= a;
-               
-               UI_ThemeColorBlendShade(TH_WIRE, TH_BACK, 0.25, 0);
-               
-               uiSetRoundBox(15);
-               uiDrawBox(GL_LINE_LOOP, x1, y1, x2, y2, 12.0);
+       if(ca) {
+               if (ca->dtx & CAM_DTX_CENTER) {
+                       UI_ThemeColorBlendShade(TH_WIRE, TH_BACK, 0.25, 0);
+
+                       x3= x1+ 0.5f*(x2-x1);
+                       y3= y1+ 0.5f*(y2-y1);
+
+                       glBegin(GL_LINES);
+                       glVertex2f(x1, y3);
+                       glVertex2f(x2, y3);
+
+                       glVertex2f(x3, y1);
+                       glVertex2f(x3, y2);
+                       glEnd();
+               }
+
+               if (ca->dtx & CAM_DTX_CENTER_DIAG) {
+                       UI_ThemeColorBlendShade(TH_WIRE, TH_BACK, 0.25, 0);
+
+                       glBegin(GL_LINES);
+                       glVertex2f(x1, y1);
+                       glVertex2f(x2, y2);
+
+                       glVertex2f(x1, y2);
+                       glVertex2f(x2, y1);
+                       glEnd();
+               }
+
+               if (ca->dtx & CAM_DTX_THIRDS) {
+                       UI_ThemeColorBlendShade(TH_WIRE, TH_BACK, 0.25, 0);
+                       drawviewborder_grid3(x1, x2, y1, y2, 1.0f/3.0f, '\0');
+               }
+
+               if (ca->dtx & CAM_DTX_GOLDEN) {
+                       UI_ThemeColorBlendShade(TH_WIRE, TH_BACK, 0.25, 0);
+                       drawviewborder_grid3(x1, x2, y1, y2, 1.0f-(1.0f/1.61803399), '\0');
+               }
+
+               if (ca->dtx & CAM_DTX_GOLDEN_DIAG_H) {
+                       UI_ThemeColorBlendShade(TH_WIRE, TH_BACK, 0.25, 0);
+                       drawviewborder_grid3(x1, x2, y1, y2, 1.0f-(1.0f/1.61803399), 'H');
+               }
+
+               if (ca->dtx & CAM_DTX_GOLDEN_DIAG_V) {
+                       UI_ThemeColorBlendShade(TH_WIRE, TH_BACK, 0.25, 0);
+                       drawviewborder_grid3(x1, x2, y1, y2, 1.0f-(1.0f/1.61803399), 'V');
+               }
+
+               if (ca->flag & CAM_SHOWTITLESAFE) {
+                       fac= 0.1;
+
+                       a= fac*(x2-x1);
+                       x1+= a;
+                       x2-= a;
+
+                       a= fac*(y2-y1);
+                       y1+= a;
+                       y2-= a;
+
+                       UI_ThemeColorBlendShade(TH_WIRE, TH_BACK, 0.25, 0);
+
+                       uiSetRoundBox(15);
+                       uiDrawBox(GL_LINE_LOOP, x1, y1, x2, y2, 12.0);
+               }
        }
 
        setlinestyle(0);
index 12100863cb1685485e7266be2a9abfbed3dc01cc..400b01addf0ae153630ffcd3375e1edeffa71821 100644 (file)
@@ -72,6 +72,7 @@
 
 #include "view3d_intern.h"
 
+extern float originmat[3][3];  /* XXX object.c */
 
 /* ************************************************** */
 /* ********************* old transform stuff ******** */
@@ -502,7 +503,6 @@ static void make_trans_verts(Object *obedit, float *min, float *max, int mode)
 
 static int snap_sel_to_grid(bContext *C, wmOperator *UNUSED(op))
 {
-       extern float originmat[3][3];   /* XXX object.c */
        Main *bmain= CTX_data_main(C);
        Object *obedit= CTX_data_edit_object(C);
        Scene *scene= CTX_data_scene(C);
@@ -639,7 +639,6 @@ void VIEW3D_OT_snap_selected_to_grid(wmOperatorType *ot)
 
 static int snap_sel_to_curs(bContext *C, wmOperator *UNUSED(op))
 {
-       extern float originmat[3][3];   /* XXX object.c */
        Main *bmain= CTX_data_main(C);
        Object *obedit= CTX_data_edit_object(C);
        Scene *scene= CTX_data_scene(C);
index 9ecfb07d5354a47c24a07085ba4179d4fbc478dc..1a82668236dbb6e9aa1abcd6c60d9b9e4a05768c 100644 (file)
@@ -37,7 +37,6 @@
 /* internal exports only */
 
 /* editmode_undo.c */
-void undo_editmode_clear(void);
 void undo_editmode_name(bContext *C, const char *undoname);
 int undo_editmode_valid(const char *undoname);
 
index 634a99f1dd63b9e1981e53caf66af3af3b1d630a..2919c65211fd272ac6da205409ebbc0f2ddea82e 100644 (file)
@@ -529,7 +529,7 @@ int ED_uvedit_minmax(Scene *scene, Image *ima, Object *obedit, float *min, float
        return sel;
 }
 
-int ED_uvedit_median(Scene *scene, Image *ima, Object *obedit, float co[3])
+static int ED_uvedit_median(Scene *scene, Image *ima, Object *obedit, float co[3])
 {
        BMEditMesh *em= ((Mesh*)obedit->data)->edit_btmesh;
        BMFace *efa;
index c98f012bc1aaa11159f13ebe7028b3b80ec8ae8c..bae323f132dd9f46df137dbdba11c97d85a305ec 100644 (file)
@@ -76,6 +76,8 @@
 
 #include "smoke_API.h"
 
+extern Material defmaterial; /* from material.c */
+
 /* These are some obscure rendering functions shared between the
  * game engine and the blender, in this module to avoid duplicaten
  * and abstract them away from the rest a bit */
@@ -951,7 +953,6 @@ static Material *gpu_active_node_material(Material *ma)
 
 void GPU_begin_object_materials(View3D *v3d, RegionView3D *rv3d, Scene *scene, Object *ob, int glsl, int *do_alpha_pass)
 {
-       extern Material defmaterial; /* from material.c */
        Material *ma;
        GPUMaterial *gpumat;
        GPUBlendMode blendmode;
@@ -1042,7 +1043,6 @@ void GPU_begin_object_materials(View3D *v3d, RegionView3D *rv3d, Scene *scene, O
 
 int GPU_enable_material(int nr, void *attribs)
 {
-       extern Material defmaterial; /* from material.c */
        GPUVertexAttribs *gattribs = attribs;
        GPUMaterial *gpumat;
        GPUBlendMode blendmode;
index 504817b263f9341a9b9e7ab2e7c3a328460a0f3b..8df2a9f6985a2b52e8d043cdd343c5a9560c7a6c 100644 (file)
@@ -44,6 +44,7 @@
 
 #include "IMB_imbuf_types.h"
 #include "IMB_imbuf.h"
+#include "IMB_filetype.h"
 
 #include "BKE_global.h"
 
@@ -192,7 +193,7 @@ static int imb_save_dpx_cineon(ImBuf *ibuf, const char *filename, int use_cineon
        return 1;
 }
 
-short imb_savecineon(struct ImBuf *buf, const char *myfile, int flags)
+int imb_savecineon(struct ImBuf *buf, const char *myfile, int flags)
 {
        return imb_save_dpx_cineon(buf, myfile, 1, flags);
 }
@@ -203,14 +204,14 @@ int imb_is_cineon(unsigned char *buf)
        return cineonIsMemFileCineon(buf);
 }
 
-ImBuf *imb_loadcineon(unsigned char *mem, int size, int flags)
+ImBuf *imb_loadcineon(unsigned char *mem, size_t size, int flags)
 {
        if(imb_is_cineon(mem))
                return imb_load_dpx_cineon(mem, 1, size, flags);
        return NULL;
 }
 
-short imb_save_dpx(struct ImBuf *buf, const char *myfile, int flags)
+int imb_save_dpx(struct ImBuf *buf, const char *myfile, int flags)
 {
        return imb_save_dpx_cineon(buf, myfile, 0, flags);
 }
@@ -220,7 +221,7 @@ int imb_is_dpx(unsigned char *buf)
        return dpxIsMemFileCineon(buf);
 }
 
-ImBuf *imb_loaddpx(unsigned char *mem, int size, int flags)
+ImBuf *imb_loaddpx(unsigned char *mem, size_t size, int flags)
 {
        if(imb_is_dpx(mem))
                return imb_load_dpx_cineon(mem, 0, size, flags);
index 31aa56f560c0b771feef2349253c43390f8014ab..896e0af65b307af5fd86a1d5a7f17c67a5c3e619 100644 (file)
@@ -126,19 +126,6 @@ typedef struct {
        ASCII reserved[740];
 } CineonMPISpecificInformation;
 
-#if 0
-/* create CineonFile from data in header */
-/* return 0 for OK */
-int readCineonGenericHeader(CineonFile* cineon, CineonGenericHeader* header);
-
-/* create header from data in CineonFile */
-int initCineonGenericHeader(
-       CineonFile* cineon, CineonGenericHeader* header, const char* imagename);
-
-/* Note: dump routine assumes network byte order */
-void dumpCineonGenericHeader(CineonGenericHeader* header);
-#endif
-
 #ifdef __cplusplus
 }
 #endif
index fdcd3491af19eb8acb7c9da77a3c657614274a5f..922cfcf96293bbb118aa5ebcb22e6c17ac9d3db7 100644 (file)
@@ -276,7 +276,7 @@ dumpCineonOriginationInfo(CineonOriginationInformation* originInfo) {
        d_printf("Input device gamma %f\n", ntohf(originInfo->input_device_gamma));
 }
 
-int
+static int
 initCineonGenericHeader(CineonFile* cineon, CineonGenericHeader* header, const char* imagename) {
 
        fillCineonFileInfo(cineon, &header->fileInfo, imagename);
@@ -287,7 +287,7 @@ initCineonGenericHeader(CineonFile* cineon, CineonGenericHeader* header, const c
        return 0;
 }
 
-void
+static void
 dumpCineonGenericHeader(CineonGenericHeader* header) {
        dumpCineonFileInfo(&header->fileInfo);
        dumpCineonImageInfo(&header->imageInfo);
index 6347eb5fdf97fb73847dfb75b84976919b46c48c..d3a32774efd5159e9120e28486536ee268383bb5 100644 (file)
@@ -27,6 +27,8 @@
 
 #include "logImageCore.h"
 
+#include "logmemfile.h" /* own include */
+
 int logimage_fseek(void* logfile, intptr_t offsett, int origin)
 {      
        struct _Log_Image_File_t_ *file = (struct _Log_Image_File_t_*) logfile;
index 4ebd7318ea87c43b0332a1acb5729784c99acb29..d64b72c6f402c0360b701099bb3eb4b2f678a5a9 100644 (file)
@@ -47,7 +47,9 @@ typedef struct Camera {
        ID id;
        struct AnimData *adt;   /* animation data (must be immediately after id for utilities to use it) */ 
        
-       short type, flag;
+       char type; /* CAM_PERSP or CAM_ORTHO */
+       char dtx; /* draw type extra */
+       short flag;
        float passepartalpha;
        float clipsta, clipend;
        float lens, ortho_scale, drawsize;
@@ -69,6 +71,14 @@ typedef struct Camera {
 #define CAM_PERSP              0
 #define CAM_ORTHO              1
 
+/* dtx */
+#define CAM_DTX_CENTER                 1
+#define CAM_DTX_CENTER_DIAG            2
+#define CAM_DTX_THIRDS                 4
+#define CAM_DTX_GOLDEN                 8
+#define CAM_DTX_GOLDEN_DIAG_H  16
+#define CAM_DTX_GOLDEN_DIAG_V  32
+
 /* flag */
 #define CAM_SHOWLIMITS 1
 #define CAM_SHOWMIST   2
index 34b1dc858813e9831026dbd7eab62f19761f7b88..14a2f27bd8c1e5cec00d1a0350776e64a9e7446e 100644 (file)
@@ -67,6 +67,14 @@ void RNA_def_camera(BlenderRNA *brna)
                {CAM_PERSP, "PERSP", 0, "Perspective", ""},
                {CAM_ORTHO, "ORTHO", 0, "Orthographic", ""},
                {0, NULL, 0, NULL, NULL}};
+       static EnumPropertyItem prop_draw_type_extra_items[] = {
+               {CAM_DTX_CENTER, "CENTER", 0, "Center", ""},
+               {CAM_DTX_CENTER_DIAG, "CENTER_DIAGONAL", 0, "Center Diagonal", ""},
+               {CAM_DTX_THIRDS, "THIRDS", 0, "Thirds", ""},
+               {CAM_DTX_GOLDEN, "GOLDEN", 0, "Golden", ""},
+               {CAM_DTX_GOLDEN_DIAG_H, "GOLDEN_DIAGONAL_H", 0, "Golden Diagonal Hoz", ""},
+               {CAM_DTX_GOLDEN_DIAG_V, "GOLDEN_DIAGONAL_V", 0, "Golden Diagonal Vert", ""},
+               {0, NULL, 0, NULL, NULL}};
        static EnumPropertyItem prop_lens_unit_items[] = {
                {0, "MILLIMETERS", 0, "Millimeters", ""},
                {CAM_ANGLETOGGLE, "DEGREES", 0, "Degrees", ""},
@@ -81,6 +89,13 @@ void RNA_def_camera(BlenderRNA *brna)
        RNA_def_property_enum_items(prop, prop_type_items);
        RNA_def_property_ui_text(prop, "Type", "Camera types");
        RNA_def_property_update(prop, NC_OBJECT|ND_DRAW, NULL);
+
+       prop= RNA_def_property(srna, "show_guide", PROP_ENUM, PROP_NONE);
+       RNA_def_property_enum_sdna(prop, NULL, "dtx");
+       RNA_def_property_enum_items(prop, prop_draw_type_extra_items);
+       RNA_def_property_flag(prop, PROP_ENUM_FLAG);
+       RNA_def_property_ui_text(prop, "Composition Guides",  "Draw overlay");
+       RNA_def_property_update(prop, NC_OBJECT|ND_DRAW, NULL);
        
        /* Number values */
 
index 38f6e4339936d3eb16ff7e19b342e541062b68ef..03d79bd68449b4978fab4523b03fd1ee473b8007 100644 (file)
@@ -1790,7 +1790,8 @@ static void rna_def_scene_game_data(BlenderRNA *brna)
 
        prop= RNA_def_property(srna, "physics_gravity", PROP_FLOAT, PROP_ACCELERATION);
        RNA_def_property_float_sdna(prop, NULL, "gravity");
-       RNA_def_property_range(prop, 0.0, 25.0);
+       RNA_def_property_ui_range(prop, 0.0, 25.0, 1, 2);
+       RNA_def_property_range(prop, 0.0, 10000.0);
        RNA_def_property_ui_text(prop, "Physics Gravity", "Gravitational constant used for physics simulation in the game engine");
        RNA_def_property_update(prop, NC_SCENE, NULL);
 
index a6ce77b64f080146acb8a4c13ce10f07f33580d8..36b7988c4e0a7c0a9bf91450561011ac658d996a 100644 (file)
@@ -45,7 +45,7 @@ static void node_composit_exec_rgb(void *UNUSED(data), bNode *node, bNodeStack *
 {
        bNodeSocket *sock= node->outputs.first;
        
-       VECCOPY(out[0]->vec, sock->ns.vec);
+       QUATCOPY(out[0]->vec, sock->ns.vec);
 }
 
 void register_node_type_cmp_rgb(ListBase *lb)
index ccf498f15507c43c80f7aa4687ed67566e117ea3..8330927d920711496e30008e4a20ddc0866b12e2 100644 (file)
 #include "py_capi_utils.h"
 #endif
 
-PyObject *             PyC_UnicodeFromByte(const char *str);
-const char *   PyC_UnicodeAsByte(PyObject *py_str, PyObject **coerce); /* coerce must be NULL */
-
-/*** Function to wrap ID properties ***/
-PyObject *BPy_Wrap_IDProperty(ID *id, IDProperty *prop, IDProperty *parent);
-
 extern PyTypeObject IDArray_Type;
 extern PyTypeObject IDGroup_Iter_Type;
 
index 4291fc824e94ee52143f81437672967b325e2abc..b66b210932949d97aa8596abd33ba6bd986fa3e8 100644 (file)
@@ -76,7 +76,7 @@ static void bpy_lib_dealloc(BPy_Library *self)
 }
 
 
-PyTypeObject bpy_lib_Type= {
+static PyTypeObject bpy_lib_Type= {
        PyVarObject_HEAD_INIT(NULL, 0)
        "bpy_lib",              /* tp_name */
        sizeof(BPy_Library),                    /* tp_basicsize */
index c230e952ca158fba9e9d3fa357e973a1418c7db6..b8883e655f284efb0c1717a98cda22e94093c2f2 100644 (file)
@@ -36,6 +36,7 @@
 
 #include "RNA_types.h"
 
+#include "BPY_extern.h"
 #include "bpy_operator.h"
 #include "bpy_operator_wrap.h"
 #include "bpy_rna.h" /* for setting arg props only - pyrna_py_to_prop() */
index ba19f155842b6ed2736f711b4afb1d56733d714c..28459677b32438d1a006c27e95c13116982800e0 100644 (file)
@@ -187,12 +187,8 @@ int pyrna_write_check(void);
 int pyrna_struct_validity_check(BPy_StructRNA *pysrna);
 int pyrna_prop_validity_check(BPy_PropertyRNA *self);
 
-void BPY_modules_update(struct bContext *C); //XXX temp solution
-
 /* bpy.utils.(un)register_class */
 extern PyMethodDef meth_bpy_register_class;
 extern PyMethodDef meth_bpy_unregister_class;
 
-void BPY_id_release(struct ID *id);
-
 #endif
index 865cb056a61d50fb5841b3ff41886ef6c542e24b..07d24ea6d66287ec23761cb8c6a18d3081e0dd8b 100644 (file)
@@ -37,7 +37,7 @@ struct LampRen;
 struct VlakRen;
 struct StrandSegment;
 struct StrandPoint;
-struct ObjectInstanceRen obi;
+struct ObjectInstanceRen;
 struct Isect;
 
 /* shadeinput.c */
index 74ec52c5dbfcd0e256ac5448ad5fad31f3af719a..e8f66cf18eff7d489a169aa041806abb5a1df485 100644 (file)
@@ -96,7 +96,7 @@ static void RE_rayobject_config_control(RayObject *r, Render *re)
        }
 }
 
-RayObject*  RE_rayobject_create(Render *re, int type, int size)
+static RayObject*  RE_rayobject_create(Render *re, int type, int size)
 {
        RayObject * res = NULL;
 
@@ -1679,7 +1679,7 @@ static void ray_trace_shadow_tra(Isect *is, ShadeInput *origshi, int depth, int
 
 /* not used, test function for ambient occlusion (yaf: pathlight) */
 /* main problem; has to be called within shading loop, giving unwanted recursion */
-int ray_trace_shadow_rad(ShadeInput *ship, ShadeResult *shr)
+static int ray_trace_shadow_rad(ShadeInput *ship, ShadeResult *shr)
 {
        static int counter=0, only_one= 0;
        extern float hashvectf[];
index 74c99d1a92f6414c2e49fbd295b3ab16d9032789..afe4d5c7e35bf50da19405fd4f3ce14be15da3ce 100644 (file)
@@ -782,7 +782,7 @@ void free_renderdata_vlaknodes(VlakTableNode *vlaknodes)
        MEM_freeN(vlaknodes);
 }
 
-void free_renderdata_strandnodes(StrandTableNode *strandnodes)
+static void free_renderdata_strandnodes(StrandTableNode *strandnodes)
 {
        int a;
        
index c3d3697a81f5950b6ee262397f5926096278cb9b..129abc918b3544020a07b6ad9e2f28f9717e033d 100644 (file)
@@ -210,7 +210,7 @@ static void interpolate_vec4(float *v1, float *v2, float t, float negt, float *v
        v[3]= negt*v1[3] + t*v2[3];
 }
 
-void interpolate_shade_result(ShadeResult *shr1, ShadeResult *shr2, float t, ShadeResult *shr, int addpassflag)
+static void interpolate_shade_result(ShadeResult *shr1, ShadeResult *shr2, float t, ShadeResult *shr, int addpassflag)
 {
        float negt= 1.0f - t;
 
@@ -252,7 +252,7 @@ void interpolate_shade_result(ShadeResult *shr1, ShadeResult *shr2, float t, Sha
        }
 }
 
-void strand_apply_shaderesult_alpha(ShadeResult *shr, float alpha)
+static void strand_apply_shaderesult_alpha(ShadeResult *shr, float alpha)
 {
        if(alpha < 1.0f) {
                shr->combined[0] *= alpha;
index 919c06d81f769b7ae9ae808643b2eefb6ed7caaa..f645c29a7a5ea11d966c89d6185a0bc031615a2e 100644 (file)
@@ -113,7 +113,7 @@ static void DirectionToThetaPhi(float *toSun, float *theta, float *phi)
  * PerezFunction:
  * compute perez function value based on input paramters
  * */
-float PerezFunction(struct SunSky *sunsky, const float *lam, float theta, float gamma, float lvz)
+static float PerezFunction(struct SunSky *sunsky, const float *lam, float theta, float gamma, float lvz)
 {
        float den, num;
        
@@ -313,7 +313,7 @@ void GetSkyXYZRadiancef(struct SunSky* sunsky, const float varg[3], float color_
  * turbidity: is atmosphere turbidity
  * fTau: contains computed attenuated sun light
  * */
-void ComputeAttenuatedSunlight(float theta, int turbidity, float fTau[3])
+static void ComputeAttenuatedSunlight(float theta, int turbidity, float fTau[3])
 {
        float fBeta ;
        float fTauR, fTauA;
index fc3280db771cfe1e3168b1a43269975c7578421e..8293143a2a65612e740250632d401cd67e17dd80 100644 (file)
@@ -74,7 +74,7 @@ extern struct Render R;
 
 /* Recursive test for intersections, from a point inside the mesh, to outside
  * Number of intersections (depth) determine if a point is inside or outside the mesh */
-int intersect_outside_volume(RayObject *tree, Isect *isect, float *offset, int limit, int depth)
+static int intersect_outside_volume(RayObject *tree, Isect *isect, float *offset, int limit, int depth)
 {
        if (limit == 0) return depth;
        
@@ -96,7 +96,7 @@ int intersect_outside_volume(RayObject *tree, Isect *isect, float *offset, int l
 }
 
 /* Uses ray tracing to check if a point is inside or outside an ObjectInstanceRen */
-int point_inside_obi(RayObject *tree, ObjectInstanceRen *UNUSED(obi), float *co)
+static int point_inside_obi(RayObject *tree, ObjectInstanceRen *UNUSED(obi), float *co)
 {
        Isect isect= {{0}};
        float dir[3] = {0.0f,0.0f,1.0f};
@@ -350,7 +350,7 @@ static void ms_diffuse(float *x0, float *x, float diff, int *n) //n is the unpad
        }
 }
 
-void multiple_scattering_diffusion(Render *re, VolumePrecache *vp, Material *ma)
+static void multiple_scattering_diffusion(Render *re, VolumePrecache *vp, Material *ma)
 {
        const float diff = ma->vol.ms_diff * 0.001f;    /* compensate for scaling for a nicer UI range */
        const int simframes = (int)(ma->vol.ms_spread * (float)MAX3(vp->res[0], vp->res[1], vp->res[2]));
@@ -538,7 +538,7 @@ static void *vol_precache_part(void *data)
        
        pa->done = 1;
        
-       return 0;
+       return NULL;
 }
 
 
@@ -676,7 +676,7 @@ static int precache_resolution(Render *re, VolumePrecache *vp, ObjectInstanceRen
  * in camera space, aligned with the ObjectRen's bounding box.
  * Resolution is defined by the user.
  */
-void vol_precache_objectinstance_threads(Render *re, ObjectInstanceRen *obi, Material *ma)
+static void vol_precache_objectinstance_threads(Render *re, ObjectInstanceRen *obi, Material *ma)
 {
        VolumePrecache *vp;
        VolPrecachePart *nextpa, *pa;
@@ -709,9 +709,8 @@ void vol_precache_objectinstance_threads(Render *re, ObjectInstanceRen *obi, Mat
        vp->data_r = MEM_callocN(sizeof(float)*vp->res[0]*vp->res[1]*vp->res[2], "volume light cache data red channel");
        vp->data_g = MEM_callocN(sizeof(float)*vp->res[0]*vp->res[1]*vp->res[2], "volume light cache data green channel");
        vp->data_b = MEM_callocN(sizeof(float)*vp->res[0]*vp->res[1]*vp->res[2], "volume light cache data blue channel");
-       if (vp->data_r==0 || vp->data_g==0 || vp->data_b==0) {
+       if (vp->data_r==NULL || vp->data_g==NULL || vp->data_b==NULL) {
                MEM_freeN(vp);
-               vp = NULL;
                return;
        }
 
index dde9dbb8485e7a3860f5a7ca78747a29a41ac02b..09422af7c790ce48cb76b495f9c811b0e92e312a 100644 (file)
@@ -305,7 +305,7 @@ float vol_get_density(struct ShadeInput *shi, float *co)
 /* Color of light that gets scattered out by the volume */
 /* Uses same physically based scattering parameter as in transmission calculations, 
  * along with artificial reflection scale/reflection color tint */
-void vol_get_reflection_color(ShadeInput *shi, float *ref_col, float *co)
+static void vol_get_reflection_color(ShadeInput *shi, float *ref_col, float *co)
 {
        float scatter = shi->mat->vol.scattering;
        float reflection= shi->mat->vol.reflection;
@@ -325,7 +325,7 @@ void vol_get_reflection_color(ShadeInput *shi, float *ref_col, float *co)
 
 /* compute emission component, amount of radiance to add per segment
  * can be textured with 'emit' */
-void vol_get_emission(ShadeInput *shi, float *emission_col, float *co)
+static void vol_get_emission(ShadeInput *shi, float *emission_col, float *co)
 {
        float emission = shi->mat->vol.emission;
        VECCOPY(emission_col, shi->mat->vol.emission_col);
@@ -343,7 +343,7 @@ void vol_get_emission(ShadeInput *shi, float *emission_col, float *co)
  * This can possibly use a specific scattering color, 
  * and absorption multiplier factor too, but these parameters are left out for simplicity.
  * It's easy enough to get a good wide range of results with just these two parameters. */
-void vol_get_sigma_t(ShadeInput *shi, float *sigma_t, float *co)
+static void vol_get_sigma_t(ShadeInput *shi, float *sigma_t, float *co)
 {
        /* technically absorption, but named transmission color 
         * since it describes the effect of the coloring *after* absorption */
@@ -361,7 +361,7 @@ void vol_get_sigma_t(ShadeInput *shi, float *sigma_t, float *co)
 /* phase function - determines in which directions the light 
  * is scattered in the volume relative to incoming direction 
  * and view direction */
-float vol_get_phasefunc(ShadeInput *UNUSED(shi), float g, float *w, float *wp)
+static float vol_get_phasefunc(ShadeInput *UNUSED(shi), float g, float *w, float *wp)
 {
        const float normalize = 0.25f; // = 1.f/4.f = M_PI/(4.f*M_PI)
        
@@ -408,7 +408,7 @@ float vol_get_phasefunc(ShadeInput *UNUSED(shi), float g, float *w, float *wp)
 }
 
 /* Compute transmittance = e^(-attenuation) */
-void vol_get_transmittance_seg(ShadeInput *shi, float *tr, float stepsize, float *co, float density)
+static void vol_get_transmittance_seg(ShadeInput *shi, float *tr, float stepsize, float *co, float density)
 {
        /* input density = density at co */
        float tau[3] = {0.f, 0.f, 0.f};
@@ -464,7 +464,7 @@ static void vol_get_transmittance(ShadeInput *shi, float *tr, float *co, float *
        tr[2] = expf(-tau[2]);
 }
 
-void vol_shade_one_lamp(struct ShadeInput *shi, float *co, LampRen *lar, float *lacol)
+static void vol_shade_one_lamp(struct ShadeInput *shi, float *co, LampRen *lar, float *lacol)
 {
        float visifac, lv[3], lampdist;
        float tr[3]={1.0,1.0,1.0};