diff -Naur Tutorial-01-HelloWorld/Makefile Tutorial-01-HelloWorld/Makefile --- Tutorial-01-HelloWorld/Makefile 1970-01-01 01:00:00.000000000 +0100 +++ Tutorial-01-HelloWorld/Makefile 2005-10-07 15:57:25.795654631 +0200 @@ -0,0 +1,15 @@ +CXX = g++ +IRRLICHTPATH=../../../irrlicht-0.12.0 +ODEPATH=../../ode-0.5 +CXXFLAGS= -Wall -Wno-reorder -I/usr/X11R6/include -I$(IRRLICHTPATH)/include -I$(ODEPATH)/include +LDFLAGS = -L$(ODEPATH)/lib -lode -L$(IRRLICHTPATH)/lib/Linux -lIrrlicht -lGLU -lGL -L/usr/X11R6/lib -lXxf86vm -lXext -lX11 +SRC = main.cpp +OBJ = $(SRC:%.cpp=%.o) + +all: HelloWorld + +HelloWorld: $(OBJ) + $(CXX) $(CXXFLAGS) $^ -o $@ $(OPTS) -L../src -lMyWorld $(LDFLAGS) + +clean: + $(RM) $(OBJ) HelloWorld diff -Naur Tutorial-02-Billiards/Makefile Tutorial-02-Billiards/Makefile --- Tutorial-02-Billiards/Makefile 1970-01-01 01:00:00.000000000 +0100 +++ Tutorial-02-Billiards/Makefile 2005-10-07 15:58:20.526942373 +0200 @@ -0,0 +1,15 @@ +CXX = g++ +IRRLICHTPATH=../../../irrlicht-0.12.0 +ODEPATH=../../ode-0.5 +CXXFLAGS= -Wall -Wno-reorder -I/usr/X11R6/include -I$(IRRLICHTPATH)/include -I$(ODEPATH)/include +LDFLAGS = -L$(ODEPATH)/lib -lode -L$(IRRLICHTPATH)/lib/Linux -lIrrlicht -lGLU -lGL -L/usr/X11R6/lib -lXxf86vm -lXext -lX11 +SRC = main.cpp +OBJ = $(SRC:%.cpp=%.o) + +all: billiard + +billiard: $(OBJ) + $(CXX) $(CXXFLAGS) $^ -o $@ $(OPTS) -L../src -lMyWorld $(LDFLAGS) + +clean: + $(RM) $(OBJ) billiard diff -Naur src/gr/C3DObjects.cpp src/gr/C3DObjects.cpp --- src/gr/C3DObjects.cpp 2005-09-24 23:41:42.000000000 +0200 +++ src/gr/C3DObjects.cpp 2005-10-07 09:56:36.881736602 +0200 @@ -45,14 +45,6 @@ } -V3D * C3DObject::getPosition(); -V3D * C3DObject::getRotation(); - -void C3DObject::setPosition(V3D * pos); -void C3DObject::incPosition(V3D * pos); - -void C3DObject::setRotation(V3D * pos); - V3D * C3DObject::getBoundingBoxExtent() { irr::core::aabbox3d box = m_node->getBoundingBox(); irr::core::vector3df extent = box.getExtent(); diff -Naur src/kernel/CRealObjects.h src/kernel/CRealObjects.h --- src/kernel/CRealObjects.h 2005-10-04 17:50:42.000000000 +0200 +++ src/kernel/CRealObjects.h 2005-10-07 10:04:00.056277387 +0200 @@ -21,8 +21,8 @@ class MYWORLD_API CRealObject { -/// This class just has things, belonging to both real -/// objekts (CStRealObject und CDyRealObject) +/// This class has just things belonging to both real +/// objects (CStRealObject und CDyRealObject) protected: C3DObject * m_gro; @@ -40,7 +40,8 @@ class MYWORLD_API CStRealObject : public CRealObject, public CStPhObject { - void (*actionfp)(CStRealObject *); /// Callback to Action +typedef void (*STACTFP)(CStRealObject *); /// Callback to Action + STACTFP actionfp; public: CStRealObject(C3DObject * gro, CCollision * collision, CMaterial * mat) : CRealObject(gro), CStPhObject(collision, mat) { @@ -53,13 +54,13 @@ void setAction(void (*_actionfp)(CStRealObject *)) { actionfp = _actionfp; } void action() { actionfp(this); } - void * getAction() { return actionfp; }; - + STACTFP getAction() { return actionfp; }; }; class /*MYWORLD_API*/ CDyRealObject : public CRealObject, public CDyPhObject { - void (*actionfp)(CDyRealObject *); /// Callback to Action +typedef void (*DYACTFP)(CDyRealObject *); /// Callback to Action + DYACTFP actionfp; CPhSystem * m_owner; public: CDyRealObject(C3DObject * gro, CCollision * collision, CMaterial * mat, float mass = 0.25f) : CRealObject(gro), CDyPhObject(collision, mat, mass) { @@ -87,7 +88,7 @@ void setAction(void (*_actionfp)(CDyRealObject *)) { actionfp = _actionfp; } void action() { actionfp(this); } - void * getAction() { return actionfp; }; + DYACTFP getAction() { return actionfp; }; void setPosition(V3D * pos) { m_gro->setPosition(pos); diff -Naur src/Makefile src/Makefile --- src/Makefile 1970-01-01 01:00:00.000000000 +0100 +++ src/Makefile 2005-10-07 16:01:08.320297972 +0200 @@ -0,0 +1,18 @@ +CXX = g++ +IRRLICHTPATH=../../../irrlicht-0.12.0 +ODEPATH=../../ode-0.5 +CXXFLAGS= -Wall -Wno-reorder -I/usr/X11R6/include -I$(IRRLICHTPATH)/include -I$(ODEPATH)/include +LDFLAGS = -L$(ODEPATH)/lib -lode -L$(IRRLICHTPATH)/lib/Linux -lIrrlicht -lGLU -lGL -L/usr/X11R6/lib -lXxf86vm -lXext -lX11 +SRC = conv/CConverter.cpp events/CEvents.cpp gr/C3DObjects.cpp gr/CDrivers.cpp gr/CGrEngine.cpp gr/CGrEngineInfo.cpp kernel/CKernel.cpp ph/CMaterials.cpp ph/CPhEngine.cpp shared/utils.cpp +OBJ = $(SRC:%.cpp=%.o) + +all: mw libMyWorld.a + +libMyWorld.a: $(OBJ) + $(AR) $(ARFLAGS)s $@ $^ + +mw: main.o libMyWorld.a + $(CXX) $(CXXFLAGS) $< -o mw $(OPTS) -L. -lMyWorld $(LDFLAGS) + +clean: + $(RM) $(OBJ) main.o libMyWorld.a mw diff -Naur src/shared/utils.h src/shared/utils.h --- src/shared/utils.h 2005-09-24 23:41:42.000000000 +0200 +++ src/shared/utils.h 2005-10-07 09:53:17.319861215 +0200 @@ -24,7 +24,11 @@ #define MYWORLD_API __declspec(dllimport) #endif */ +#ifdef __win32__ #define MYWORLD_API __declspec(dllexport) +#else +#define MYWORLD_API +#endif typedef void (*FX)(void); /// Funktionstyp @@ -91,14 +95,10 @@ class MYWORLD_API Unicode { public: - static unsigned short * strToUnicode(char * str) { - int len = strlen(str); - static unsigned short * unicode = new unsigned short[len + 1]; - int i; - for (i = 0; i < len; i ++) { - unicode[i] = str[i]; - } - unicode[len] = 0; + static wchar_t* strToUnicode(char * str) { + unsigned int len = strlen(str); + static wchar_t* unicode = new wchar_t[len + 1]; + mbstowcs(unicode,str,len); return unicode; } };