[tuhopuu-devel] Problems with compiling, hemesh--patch attached
Joseph Eagar
joeeagar at prodigy.net
Fri Jul 15 07:41:40 CEST 2005
Hi. I just downloaded a new cvs tuhopuu checkout today--and it wouldn't
compile. So, I went to work, and heres a patch of what I've done.
I had to comment a #include from BKE_bad_level_calls.h, add #include
"render_types" to a bunch of files, add some missing code to
material_panal_shading(), and comment out the special windows folder
code in usiblender.c as mingw's libshell32.a seems to lack the functions
(gerrr. . .). Not even the put-the-lib-multiple-times trick worked.
Also, I got hemesh to work with the DAG somewhat, though not
completely. But from a user point of view it works fine. Towards this
end I split hemesh's makeDispList code into it's own, static function
makeDispList_HEMESH (since that seems to be the direction thing are going).
joeedh
P.S.: more hemesh fixes will follow. I'm in the process of moving at
the moment, though, so time is limited.
-------------- next part --------------
? source/blender/makesdna/DNA.c
? source/blender/makesdna/intern/DNA.c
Index: source/blender/blenkernel/BKE_bad_level_calls.h
===================================================================
RCS file: /cvsroot/tuhopuu/tuhopuu3/source/blender/blenkernel/BKE_bad_level_calls.h,v
retrieving revision 1.1.1.4
diff -u -r1.1.1.4 BKE_bad_level_calls.h
--- source/blender/blenkernel/BKE_bad_level_calls.h 15 May 2005 14:23:42 -0000 1.1.1.4
+++ source/blender/blenkernel/BKE_bad_level_calls.h 15 Jul 2005 04:59:29 -0000
@@ -37,6 +37,8 @@
#ifndef BKE_BAD_LEVEL_CALLS_H
#define BKE_BAD_LEVEL_CALLS_H
+#include "DNA_listBase.h"
+
/* readfile.c */
struct PluginSeq;
void open_plugin_seq(struct PluginSeq *pis, char *seqname);
@@ -74,7 +76,7 @@
/* displist.c */
#include "DNA_world_types.h" /* for render_types */
-#include "render_types.h"
+//#include "render_types.h"
extern struct RE_Render R;
float Phong_Spec(float *, float *, float *, int);
void waitcursor(int);
Index: source/blender/blenkernel/intern/blender.c
===================================================================
RCS file: /cvsroot/tuhopuu/tuhopuu3/source/blender/blenkernel/intern/blender.c,v
retrieving revision 1.7
diff -u -r1.7 blender.c
--- source/blender/blenkernel/intern/blender.c 5 Jul 2005 01:39:02 -0000 1.7
+++ source/blender/blenkernel/intern/blender.c 15 Jul 2005 04:59:30 -0000
@@ -88,6 +88,7 @@
#include "mydevice.h"
#include "nla.h"
#include "blendef.h"
+#include "render_types.h"
Global G;
UserDef U;
Index: source/blender/blenkernel/intern/displist.c
===================================================================
RCS file: /cvsroot/tuhopuu/tuhopuu3/source/blender/blenkernel/intern/displist.c,v
retrieving revision 1.25
diff -u -r1.25 displist.c
--- source/blender/blenkernel/intern/displist.c 5 Jul 2005 03:46:31 -0000 1.25
+++ source/blender/blenkernel/intern/displist.c 15 Jul 2005 04:59:32 -0000
@@ -1675,6 +1675,33 @@
return 1.0;
}
+static void makeDispList_HEMesh(Object *ob)
+{
+ if(ob==NULL) return;
+ if(ob->flag & OB_FROMDUPLI) return;
+
+ freedisplist(&(ob->disp));
+ HE_Mesh *hme = ob->data, *hdef;
+ int subsurf = (((hme->f & HEM_SUBSURF) && hme->subdivLevels))?1:0;
+ if (hme->dmesh) free_DMesh(hme->dmesh);
+
+ if ((G.obedit && (G.obedit->data==hme))) {
+ if (subsurf) {
+ //hme->dmesh = MEM_callocN(sizeof(DMesh), "DMesh with deriv");
+ //hme->dmesh->deriv = HE_subsurf_ccg_make_derived_from_editmesh(G.he_editMesh, hme->subdivLevels);
+ hme->dmesh = subSurf_make_DMesh_fromEditHEMesh(hme, (int)hme->subdivLevels);
+ } else hme->dmesh = make_DMesh_from_HEMesh(hme);
+ } else {
+ if (subsurf) {
+ hme->dmesh = subSurf_make_DMesh_fromHEMesh(hme, (int)hme->subdivLevels);
+ } else hme->dmesh = make_DMesh_from_HEMesh(hme);
+ object_deform(ob);
+ }
+ hme->dmesh->mat = hme->mat;
+ dmesh_calcFaceNormals(hme->dmesh);
+ dmesh_calc_vertnormals(hme->dmesh);
+}
+
void makeDispList(Object *ob)
{
EditMesh *em = G.editMesh;
@@ -1695,26 +1722,7 @@
freedisplist(&(ob->disp));
if (ob->type==OB_HEMESH) {
- HE_Mesh *hme = ob->data, *hdef;
- int subsurf = (((hme->f & HEM_SUBSURF) && hme->subdivLevels))?1:0;
- if (hme->dmesh) free_DMesh(hme->dmesh);
-
- if ((G.obedit && (G.obedit->data==hme))) {
- if (subsurf) {
- //hme->dmesh = MEM_callocN(sizeof(DMesh), "DMesh with deriv");
- //hme->dmesh->deriv = HE_subsurf_ccg_make_derived_from_editmesh(G.he_editMesh, hme->subdivLevels);
- hme->dmesh = subSurf_make_DMesh_fromEditHEMesh(hme, (int)hme->subdivLevels);
- } else hme->dmesh = make_DMesh_from_HEMesh(hme);
- } else {
- if (subsurf) {
- hme->dmesh = subSurf_make_DMesh_fromHEMesh(hme, (int)hme->subdivLevels);
- } else hme->dmesh = make_DMesh_from_HEMesh(hme);
- object_deform(ob);
- }
- hme->dmesh->mat = hme->mat;
- dmesh_calcFaceNormals(hme->dmesh);
- dmesh_calc_vertnormals(hme->dmesh);
- return;
+ makeDispList_HEMesh(ob);
} else if(ob->type==OB_MESH) {
me= ob->data;
freedisplist(&me->disp);
Index: source/blender/blenkernel/intern/image.c
===================================================================
RCS file: /cvsroot/tuhopuu/tuhopuu3/source/blender/blenkernel/intern/image.c,v
retrieving revision 1.4
diff -u -r1.4 image.c
--- source/blender/blenkernel/intern/image.c 11 Jul 2005 03:45:46 -0000 1.4
+++ source/blender/blenkernel/intern/image.c 15 Jul 2005 04:59:32 -0000
@@ -66,7 +66,9 @@
#include "BKE_utildefines.h"
/* bad level; call to free_realtime_image */
-#include "BKE_bad_level_calls.h"
+#include "BKE_bad_level_calls.h"
+
+#include "render_types.h"
void free_image_buffers(Image *ima)
{
Index: source/blender/blenkernel/intern/ipo.c
===================================================================
RCS file: /cvsroot/tuhopuu/tuhopuu3/source/blender/blenkernel/intern/ipo.c,v
retrieving revision 1.8
diff -u -r1.8 ipo.c
--- source/blender/blenkernel/intern/ipo.c 11 Jul 2005 03:45:46 -0000 1.8
+++ source/blender/blenkernel/intern/ipo.c 15 Jul 2005 04:59:34 -0000
@@ -74,6 +74,8 @@
#include "BKE_mesh.h"
#include "BKE_object.h"
+#include "render_types.h"
+
#define SMALL -1.0e-10
/* This array concept was meant to make sure that defines such as OB_LOC_X
Index: source/blender/blenkernel/intern/key.c
===================================================================
RCS file: /cvsroot/tuhopuu/tuhopuu3/source/blender/blenkernel/intern/key.c,v
retrieving revision 1.1.1.2
diff -u -r1.1.1.2 key.c
--- source/blender/blenkernel/intern/key.c 5 Jul 2005 01:05:40 -0000 1.1.1.2
+++ source/blender/blenkernel/intern/key.c 15 Jul 2005 04:59:35 -0000
@@ -60,6 +60,8 @@
#include "BKE_ipo.h"
#include "BKE_lattice.h"
+#include "render_types.h"
+
#ifdef HAVE_CONFIG_H
#include <config.h>
#endif
Index: source/blender/blenkernel/intern/material.c
===================================================================
RCS file: /cvsroot/tuhopuu/tuhopuu3/source/blender/blenkernel/intern/material.c,v
retrieving revision 1.5
diff -u -r1.5 material.c
--- source/blender/blenkernel/intern/material.c 5 Jul 2005 01:39:02 -0000 1.5
+++ source/blender/blenkernel/intern/material.c 15 Jul 2005 04:59:35 -0000
@@ -59,6 +59,7 @@
#include "BKE_material.h"
#include "BPY_extern.h"
+#include "render_types.h"
void free_material(Material *ma)
{
Index: source/blender/blenkernel/intern/mball.c
===================================================================
RCS file: /cvsroot/tuhopuu/tuhopuu3/source/blender/blenkernel/intern/mball.c,v
retrieving revision 1.7
diff -u -r1.7 mball.c
--- source/blender/blenkernel/intern/mball.c 5 Jun 2005 00:35:43 -0000 1.7
+++ source/blender/blenkernel/intern/mball.c 15 Jul 2005 04:59:37 -0000
@@ -66,6 +66,8 @@
#include "BKE_displist.h"
#include "BKE_mball.h"
+#include "render_types.h"
+
#ifdef HAVE_CONFIG_H
#include <config.h>
#endif
Index: source/blender/blenkernel/intern/object.c
===================================================================
RCS file: /cvsroot/tuhopuu/tuhopuu3/source/blender/blenkernel/intern/object.c,v
retrieving revision 1.13
diff -u -r1.13 object.c
--- source/blender/blenkernel/intern/object.c 11 Jul 2005 03:45:46 -0000 1.13
+++ source/blender/blenkernel/intern/object.c 15 Jul 2005 04:59:37 -0000
@@ -105,6 +105,8 @@
#include "he_editmesh.h"
+#include "render_types.h"
+
/* Local function protos */
static void solve_parenting (Object *ob, Object *par, float slowmat[][4], int simul);
Index: source/blender/blenkernel/intern/packedFile.c
===================================================================
RCS file: /cvsroot/tuhopuu/tuhopuu3/source/blender/blenkernel/intern/packedFile.c,v
retrieving revision 1.1.1.1
diff -u -r1.1.1.1 packedFile.c
--- source/blender/blenkernel/intern/packedFile.c 23 Dec 2004 00:39:10 -0000 1.1.1.1
+++ source/blender/blenkernel/intern/packedFile.c 15 Jul 2005 04:59:38 -0000
@@ -70,6 +70,7 @@
#include "BKE_image.h"
#include "BKE_font.h"
#include "BKE_packedFile.h"
+#include "render_types.h"
int seekPackedFile(PackedFile * pf, int offset, int whence)
{
Index: source/blender/blenkernel/intern/scene.c
===================================================================
RCS file: /cvsroot/tuhopuu/tuhopuu3/source/blender/blenkernel/intern/scene.c,v
retrieving revision 1.13
diff -u -r1.13 scene.c
--- source/blender/blenkernel/intern/scene.c 5 Jul 2005 01:39:02 -0000 1.13
+++ source/blender/blenkernel/intern/scene.c 15 Jul 2005 04:59:38 -0000
@@ -77,6 +77,7 @@
#include "BPY_extern.h"
#include "BLI_blenlib.h"
+#include "render_types.h"
#include "nla.h"
Index: source/blender/blenkernel/intern/world.c
===================================================================
RCS file: /cvsroot/tuhopuu/tuhopuu3/source/blender/blenkernel/intern/world.c,v
retrieving revision 1.1.1.3
diff -u -r1.1.1.3 world.c
--- source/blender/blenkernel/intern/world.c 5 Jun 2005 00:24:16 -0000 1.1.1.3
+++ source/blender/blenkernel/intern/world.c 15 Jul 2005 04:59:38 -0000
@@ -62,6 +62,8 @@
#include <config.h>
#endif
+#include "render_types.h"
+
void free_world(World *wrld)
{
MTex *mtex;
Index: source/blender/blenkernel/intern/writeavi.c
===================================================================
RCS file: /cvsroot/tuhopuu/tuhopuu3/source/blender/blenkernel/intern/writeavi.c,v
retrieving revision 1.1.1.4
diff -u -r1.1.1.4 writeavi.c
--- source/blender/blenkernel/intern/writeavi.c 3 Apr 2005 19:03:19 -0000 1.1.1.4
+++ source/blender/blenkernel/intern/writeavi.c 15 Jul 2005 04:59:39 -0000
@@ -55,6 +55,7 @@
/* RPW - End */
#include "BKE_writeavi.h"
+#include "render_types.h"
static AviMovie *avi=NULL;
static int sframe;
Index: source/blender/blenlib/intern/freetypefont.c
===================================================================
RCS file: /cvsroot/tuhopuu/tuhopuu3/source/blender/blenlib/intern/freetypefont.c,v
retrieving revision 1.4
diff -u -r1.4 freetypefont.c
--- source/blender/blenlib/intern/freetypefont.c 2 Apr 2005 00:33:19 -0000 1.4
+++ source/blender/blenlib/intern/freetypefont.c 15 Jul 2005 04:59:39 -0000
@@ -52,7 +52,7 @@
#include "BLI_blenlib.h"
#include "BLI_arithb.h"
-#include "BIF_toolbox.h"
+//#include "BIF_toolbox.h"
#include "BKE_global.h"
#include "BKE_utildefines.h"
Index: source/blender/src/buttons_shading.c
===================================================================
RCS file: /cvsroot/tuhopuu/tuhopuu3/source/blender/src/buttons_shading.c,v
retrieving revision 1.32
diff -u -r1.32 buttons_shading.c
--- source/blender/src/buttons_shading.c 11 Jul 2005 03:45:46 -0000 1.32
+++ source/blender/src/buttons_shading.c 15 Jul 2005 04:59:44 -0000
@@ -57,6 +57,7 @@
#include "DNA_image_types.h"
#include "DNA_packedFile_types.h"
#include "DNA_userdef_types.h"
+#include "DNA_ID.h"
#include "BKE_global.h"
#include "BKE_main.h"
@@ -3706,9 +3707,13 @@
}
-static void material_panel_shading(Material *ma)
+static void material_panel_shading(Material *ma, Object *ob)
{
uiBlock *block;
+ ID *id, *idfrom;
+
+ buttons_active_id(&id, &idfrom);
+ /*FIX ME THIS FUNCTION IS DYING*/
block= uiNewBlock(&curarea->uiblocks, "material_panel_shading", UI_EMBOSS, UI_HELV, curarea->win);
if(uiNewPanel(curarea, block, "Shading", "Material", 640, 0, 318, 204)==0) return;
@@ -4038,7 +4043,7 @@
material_panel_dyn(ma);
uiSetButLock(ma->id.lib!=NULL, "Can't edit library data");
- material_panel_shading(ma);
+ material_panel_shading(ma, ob);
if(!(ma->mode & MA_HALO)) { /* none of these apply to halo based materials */
material_panel_ramps(ma);
if (G.scene->r.renderer==R_INTERN)
Index: source/blender/src/transform_generics.c
===================================================================
RCS file: /cvsroot/tuhopuu/tuhopuu3/source/blender/src/transform_generics.c,v
retrieving revision 1.25
diff -u -r1.25 transform_generics.c
--- source/blender/src/transform_generics.c 11 Jul 2005 03:45:46 -0000 1.25
+++ source/blender/src/transform_generics.c 15 Jul 2005 04:59:45 -0000
@@ -125,6 +125,9 @@
DAG_object_flush_update(G.scene, G.obedit, OB_RECALC_DATA); /* sets recalc flags */
recalc_editnormals();
+ } else if (G.obedit->type == OB_HEMESH) {
+ DAG_object_flush_update(G.scene, G.obedit, OB_RECALC_DATA);
+ HE_recalcnormals();
}
else if ELEM(G.obedit->type, OB_CURVE, OB_SURF) {
Nurb *nu= editNurb.first;
Index: source/blender/src/usiblender.c
===================================================================
RCS file: /cvsroot/tuhopuu/tuhopuu3/source/blender/src/usiblender.c,v
retrieving revision 1.19
diff -u -r1.19 usiblender.c
--- source/blender/src/usiblender.c 30 Jun 2005 17:31:16 -0000 1.19
+++ source/blender/src/usiblender.c 15 Jul 2005 04:59:45 -0000
@@ -438,11 +438,11 @@
}
/* Adding Desktop and My Documents */
- fsmenu_append_seperator();
+ /*fsmenu_append_seperator();
SHGetSpecialFolderPath(0, folder, CSIDL_PERSONAL, 0);
fsmenu_insert_entry(folder, 0);
SHGetSpecialFolderPath(0, folder, CSIDL_DESKTOPDIRECTORY, 0);
- fsmenu_insert_entry(folder, 0);
+ fsmenu_insert_entry(folder, 0);*/
fsmenu_append_seperator();
}
More information about the tuhopuu-devel
mailing list