[SOLVED]Micropather and Irrlicht

If you are a new Irrlicht Engine user, and have a newbie-question, this is the forum for you. You may also post general programming questions here.
Post Reply
pop37corn
Posts: 10
Joined: Sat Apr 12, 2014 4:54 pm

[SOLVED]Micropather and Irrlicht

Post by pop37corn »

Hi,

I have used Micropather in the past for a small 2D game. I have seen it used in 3D games, and was wondering how it would work. I am using quake 3 maps for my current game, and have loaded a model with it's own collision response and stuff like that, but I'm not sure how to feed my information into it. I know how to use the states, but how would you use it in Irrlicht with a quake 3 map?

Thanks,

popcorn
Last edited by pop37corn on Fri Apr 18, 2014 5:21 pm, edited 2 times in total.
pop37corn
Posts: 10
Joined: Sat Apr 12, 2014 4:54 pm

Re: Micropather and Irrlicht

Post by pop37corn »

Alright, I'm beginning to lose hope. I've searched online and have read a LOT of material on A* path-finding, and have looked at numerous libraries, but I still don't know one thing: How do I take the information from a quake 3 map, create numerous nodes with it, and put it into micropather? I am about to give up, and this buggy FPS CollisionResponseAnimator thingy isn't helping. All I want to do is make a mesh follow a node around a quake 3 map. I know it's a lot to ask, but I'm stuck.

Thanks,

popcorn
hendu
Posts: 2600
Joined: Sat Dec 18, 2010 12:53 pm

Re: Micropather and Irrlicht

Post by hendu »

Your standard q3 map does not have that info. The AAS, used by q3 bots, is not useful for A*, and is not even parsed by irr.

You need to create waypoints in the map, usually manually. Though you could also create them programmatically, for example in a grid above the floor, testing whether each point is inside a mesh or outside.

As for how to create waypoints, anything from a text file into entities placed in *Radiant will work.
pop37corn
Posts: 10
Joined: Sat Apr 12, 2014 4:54 pm

Re: Micropather and Irrlicht

Post by pop37corn »

Okay, thanks for the reply. That makes more sense then what I was thinking. I still don't know exactly what functions still use, but I'm gonna try with the info I have.
pop37corn
Posts: 10
Joined: Sat Apr 12, 2014 4:54 pm

Re: Micropather and Irrlicht

Post by pop37corn »

Alright, I' replying AGAIN. Hopefully these posts won't only be useful to me. From what I've learned here: http://www.grinninglizard.com/MicroPather/readme.htm, I know that I need to figure out what coordinates (AKA states) are OK for my AI to go through. How would I find those coordinates? In a mapping utility probably? Also, my AI is suppose to try and catch my character, as in touch it. Should I have my character be a state that's updated every frame loop? At last, these two functions I need to provide:

Code: Select all

virtual float LeastCostEstimate( void* stateStart, void* stateEnd ) = 0;
virtual void AdjacentCost( void* state, std::vector< StateCost > *adjacent ) = 0;
I don't even know how to begin to figure what the adjacent states are to a certain state, and I keep on rereading the material and it's just not making sense. If I can make a state machine in c++ for a 3,000 dollar (US) robot, you'd think I could figure this one out. :(

Thanks for all the help that might come my way!

EDIT: Still haven`t figured it out, but I am now researching stuff other then A*. I don't know if it matters, but if it helps, I want an AI just like the common zombies in Left for Dead 2. Not that my game has anything to do with zombies, just an example.
The_Glitch
Competition winner
Posts: 523
Joined: Tue Jan 15, 2013 6:36 pm

Re: Micropather and Irrlicht

Post by The_Glitch »

What about http://irrlicht.sourceforge.net/forum/v ... =9&t=49482 I'm not to sure If there the same but he provided code to use in Irrlicht so that's a start. I asked him some basic questions then. Check it out
pop37corn
Posts: 10
Joined: Sat Apr 12, 2014 4:54 pm

Re: Micropather and Irrlicht

Post by pop37corn »

I'll definitely check this out! Looks like exactly what I need. If it's right, I'll mark this as solved.

Thanks again!
pop37corn
Posts: 10
Joined: Sat Apr 12, 2014 4:54 pm

Re: Micropather and Irrlicht

Post by pop37corn »

OK, I tried that and I keep getting unresolved externals:

Code: Select all

1>------ Build started: Project: IrrTag, Configuration: Debug Win32 ------
1>  recast_detour_util.cpp
1>c:\users\william\documents\irrtag\irrtag\recast_detour_util.h(92): warning C4101: 'ctx' : unreferenced local variable
1>c:\users\william\documents\irrtag\irrtag\recast_detour_util.cpp(743): warning C4244: 'argument' : conversion from 'double' to 'irr::f32', possible loss of data
1>c:\users\william\documents\irrtag\irrtag\recast_detour_util.cpp(702): warning C4101: 'm_polys' : unreferenced local variable
1>recast_detour_util.obj : error LNK2019: unresolved external symbol "void __cdecl rcFreePolyMeshDetail(struct rcPolyMeshDetail *)" (?rcFreePolyMeshDetail@@YAXPAUrcPolyMeshDetail@@@Z) referenced in function "private: void __thiscall RecastUtilM::cleanup(void)" (?cleanup@RecastUtilM@@AAEXXZ)
1>recast_detour_util.obj : error LNK2019: unresolved external symbol "void __cdecl rcFreePolyMesh(struct rcPolyMesh *)" (?rcFreePolyMesh@@YAXPAUrcPolyMesh@@@Z) referenced in function "private: void __thiscall RecastUtilM::cleanup(void)" (?cleanup@RecastUtilM@@AAEXXZ)
1>recast_detour_util.obj : error LNK2019: unresolved external symbol "void __cdecl rcFreeContourSet(struct rcContourSet *)" (?rcFreeContourSet@@YAXPAUrcContourSet@@@Z) referenced in function "private: void __thiscall RecastUtilM::cleanup(void)" (?cleanup@RecastUtilM@@AAEXXZ)
1>recast_detour_util.obj : error LNK2019: unresolved external symbol "void __cdecl rcFreeCompactHeightfield(struct rcCompactHeightfield *)" (?rcFreeCompactHeightfield@@YAXPAUrcCompactHeightfield@@@Z) referenced in function "private: void __thiscall RecastUtilM::cleanup(void)" (?cleanup@RecastUtilM@@AAEXXZ)
1>recast_detour_util.obj : error LNK2019: unresolved external symbol "void __cdecl rcFreeHeightField(struct rcHeightfield *)" (?rcFreeHeightField@@YAXPAUrcHeightfield@@@Z) referenced in function "private: void __thiscall RecastUtilM::cleanup(void)" (?cleanup@RecastUtilM@@AAEXXZ)
1>recast_detour_util.obj : error LNK2019: unresolved external symbol "void __cdecl duLogBuildTimes(class rcContext &,int)" (?duLogBuildTimes@@YAXAAVrcContext@@H@Z) referenced in function "public: bool __thiscall RecastUtilM::handleBuild(class irr::scene::IMeshBuffer *)" (?handleBuild@RecastUtilM@@QAE_NPAVIMeshBuffer@scene@irr@@@Z)
1>recast_detour_util.obj : error LNK2019: unresolved external symbol "public: unsigned int __thiscall dtNavMeshQuery::init(class dtNavMesh const *,int)" (?init@dtNavMeshQuery@@QAEIPBVdtNavMesh@@H@Z) referenced in function "public: bool __thiscall RecastUtilM::handleBuild(class irr::scene::IMeshBuffer *)" (?handleBuild@RecastUtilM@@QAE_NPAVIMeshBuffer@scene@irr@@@Z)
1>recast_detour_util.obj : error LNK2019: unresolved external symbol "class dtNavMeshQuery * __cdecl dtAllocNavMeshQuery(void)" (?dtAllocNavMeshQuery@@YAPAVdtNavMeshQuery@@XZ) referenced in function "public: bool __thiscall RecastUtilM::handleBuild(class irr::scene::IMeshBuffer *)" (?handleBuild@RecastUtilM@@QAE_NPAVIMeshBuffer@scene@irr@@@Z)
1>recast_detour_util.obj : error LNK2019: unresolved external symbol "public: unsigned int __thiscall dtNavMesh::init(unsigned char *,int,int)" (?init@dtNavMesh@@QAEIPAEHH@Z) referenced in function "public: bool __thiscall RecastUtilM::handleBuild(class irr::scene::IMeshBuffer *)" (?handleBuild@RecastUtilM@@QAE_NPAVIMeshBuffer@scene@irr@@@Z)
1>recast_detour_util.obj : error LNK2019: unresolved external symbol "void __cdecl dtFree(void *)" (?dtFree@@YAXPAX@Z) referenced in function "public: bool __thiscall RecastUtilM::handleBuild(class irr::scene::IMeshBuffer *)" (?handleBuild@RecastUtilM@@QAE_NPAVIMeshBuffer@scene@irr@@@Z)
1>recast_detour_util.obj : error LNK2019: unresolved external symbol "class dtNavMesh * __cdecl dtAllocNavMesh(void)" (?dtAllocNavMesh@@YAPAVdtNavMesh@@XZ) referenced in function "public: bool __thiscall RecastUtilM::handleBuild(class irr::scene::IMeshBuffer *)" (?handleBuild@RecastUtilM@@QAE_NPAVIMeshBuffer@scene@irr@@@Z)
1>recast_detour_util.obj : error LNK2019: unresolved external symbol "bool __cdecl dtCreateNavMeshData(struct dtNavMeshCreateParams *,unsigned char * *,int *)" (?dtCreateNavMeshData@@YA_NPAUdtNavMeshCreateParams@@PAPAEPAH@Z) referenced in function "public: bool __thiscall RecastUtilM::handleBuild(class irr::scene::IMeshBuffer *)" (?handleBuild@RecastUtilM@@QAE_NPAVIMeshBuffer@scene@irr@@@Z)
1>recast_detour_util.obj : error LNK2019: unresolved external symbol "bool __cdecl rcBuildPolyMeshDetail(class rcContext *,struct rcPolyMesh const &,struct rcCompactHeightfield const &,float,float,struct rcPolyMeshDetail &)" (?rcBuildPolyMeshDetail@@YA_NPAVrcContext@@ABUrcPolyMesh@@ABUrcCompactHeightfield@@MMAAUrcPolyMeshDetail@@@Z) referenced in function "public: bool __thiscall RecastUtilM::handleBuild(class irr::scene::IMeshBuffer *)" (?handleBuild@RecastUtilM@@QAE_NPAVIMeshBuffer@scene@irr@@@Z)
1>recast_detour_util.obj : error LNK2019: unresolved external symbol "struct rcPolyMeshDetail * __cdecl rcAllocPolyMeshDetail(void)" (?rcAllocPolyMeshDetail@@YAPAUrcPolyMeshDetail@@XZ) referenced in function "public: bool __thiscall RecastUtilM::handleBuild(class irr::scene::IMeshBuffer *)" (?handleBuild@RecastUtilM@@QAE_NPAVIMeshBuffer@scene@irr@@@Z)
1>recast_detour_util.obj : error LNK2019: unresolved external symbol "bool __cdecl rcBuildPolyMesh(class rcContext *,struct rcContourSet &,int,struct rcPolyMesh &)" (?rcBuildPolyMesh@@YA_NPAVrcContext@@AAUrcContourSet@@HAAUrcPolyMesh@@@Z) referenced in function "public: bool __thiscall RecastUtilM::handleBuild(class irr::scene::IMeshBuffer *)" (?handleBuild@RecastUtilM@@QAE_NPAVIMeshBuffer@scene@irr@@@Z)
1>recast_detour_util.obj : error LNK2019: unresolved external symbol "struct rcPolyMesh * __cdecl rcAllocPolyMesh(void)" (?rcAllocPolyMesh@@YAPAUrcPolyMesh@@XZ) referenced in function "public: bool __thiscall RecastUtilM::handleBuild(class irr::scene::IMeshBuffer *)" (?handleBuild@RecastUtilM@@QAE_NPAVIMeshBuffer@scene@irr@@@Z)
1>recast_detour_util.obj : error LNK2019: unresolved external symbol "bool __cdecl rcBuildContours(class rcContext *,struct rcCompactHeightfield &,float,int,struct rcContourSet &,int)" (?rcBuildContours@@YA_NPAVrcContext@@AAUrcCompactHeightfield@@MHAAUrcContourSet@@H@Z) referenced in function "public: bool __thiscall RecastUtilM::handleBuild(class irr::scene::IMeshBuffer *)" (?handleBuild@RecastUtilM@@QAE_NPAVIMeshBuffer@scene@irr@@@Z)
1>recast_detour_util.obj : error LNK2019: unresolved external symbol "struct rcContourSet * __cdecl rcAllocContourSet(void)" (?rcAllocContourSet@@YAPAUrcContourSet@@XZ) referenced in function "public: bool __thiscall RecastUtilM::handleBuild(class irr::scene::IMeshBuffer *)" (?handleBuild@RecastUtilM@@QAE_NPAVIMeshBuffer@scene@irr@@@Z)
1>recast_detour_util.obj : error LNK2019: unresolved external symbol "bool __cdecl rcBuildRegions(class rcContext *,struct rcCompactHeightfield &,int,int,int)" (?rcBuildRegions@@YA_NPAVrcContext@@AAUrcCompactHeightfield@@HHH@Z) referenced in function "public: bool __thiscall RecastUtilM::handleBuild(class irr::scene::IMeshBuffer *)" (?handleBuild@RecastUtilM@@QAE_NPAVIMeshBuffer@scene@irr@@@Z)
1>recast_detour_util.obj : error LNK2019: unresolved external symbol "bool __cdecl rcBuildDistanceField(class rcContext *,struct rcCompactHeightfield &)" (?rcBuildDistanceField@@YA_NPAVrcContext@@AAUrcCompactHeightfield@@@Z) referenced in function "public: bool __thiscall RecastUtilM::handleBuild(class irr::scene::IMeshBuffer *)" (?handleBuild@RecastUtilM@@QAE_NPAVIMeshBuffer@scene@irr@@@Z)
1>recast_detour_util.obj : error LNK2019: unresolved external symbol "bool __cdecl rcBuildRegionsMonotone(class rcContext *,struct rcCompactHeightfield &,int,int,int)" (?rcBuildRegionsMonotone@@YA_NPAVrcContext@@AAUrcCompactHeightfield@@HHH@Z) referenced in function "public: bool __thiscall RecastUtilM::handleBuild(class irr::scene::IMeshBuffer *)" (?handleBuild@RecastUtilM@@QAE_NPAVIMeshBuffer@scene@irr@@@Z)
1>recast_detour_util.obj : error LNK2019: unresolved external symbol "bool __cdecl rcErodeWalkableArea(class rcContext *,int,struct rcCompactHeightfield &)" (?rcErodeWalkableArea@@YA_NPAVrcContext@@HAAUrcCompactHeightfield@@@Z) referenced in function "public: bool __thiscall RecastUtilM::handleBuild(class irr::scene::IMeshBuffer *)" (?handleBuild@RecastUtilM@@QAE_NPAVIMeshBuffer@scene@irr@@@Z)
1>recast_detour_util.obj : error LNK2019: unresolved external symbol "bool __cdecl rcBuildCompactHeightfield(class rcContext *,int,int,struct rcHeightfield &,struct rcCompactHeightfield &)" (?rcBuildCompactHeightfield@@YA_NPAVrcContext@@HHAAUrcHeightfield@@AAUrcCompactHeightfield@@@Z) referenced in function "public: bool __thiscall RecastUtilM::handleBuild(class irr::scene::IMeshBuffer *)" (?handleBuild@RecastUtilM@@QAE_NPAVIMeshBuffer@scene@irr@@@Z)
1>recast_detour_util.obj : error LNK2019: unresolved external symbol "struct rcCompactHeightfield * __cdecl rcAllocCompactHeightfield(void)" (?rcAllocCompactHeightfield@@YAPAUrcCompactHeightfield@@XZ) referenced in function "public: bool __thiscall RecastUtilM::handleBuild(class irr::scene::IMeshBuffer *)" (?handleBuild@RecastUtilM@@QAE_NPAVIMeshBuffer@scene@irr@@@Z)
1>recast_detour_util.obj : error LNK2019: unresolved external symbol "void __cdecl rcFilterWalkableLowHeightSpans(class rcContext *,int,struct rcHeightfield &)" (?rcFilterWalkableLowHeightSpans@@YAXPAVrcContext@@HAAUrcHeightfield@@@Z) referenced in function "public: bool __thiscall RecastUtilM::handleBuild(class irr::scene::IMeshBuffer *)" (?handleBuild@RecastUtilM@@QAE_NPAVIMeshBuffer@scene@irr@@@Z)
1>recast_detour_util.obj : error LNK2019: unresolved external symbol "void __cdecl rcFilterLedgeSpans(class rcContext *,int,int,struct rcHeightfield &)" (?rcFilterLedgeSpans@@YAXPAVrcContext@@HHAAUrcHeightfield@@@Z) referenced in function "public: bool __thiscall RecastUtilM::handleBuild(class irr::scene::IMeshBuffer *)" (?handleBuild@RecastUtilM@@QAE_NPAVIMeshBuffer@scene@irr@@@Z)
1>recast_detour_util.obj : error LNK2019: unresolved external symbol "void __cdecl rcFilterLowHangingWalkableObstacles(class rcContext *,int,struct rcHeightfield &)" (?rcFilterLowHangingWalkableObstacles@@YAXPAVrcContext@@HAAUrcHeightfield@@@Z) referenced in function "public: bool __thiscall RecastUtilM::handleBuild(class irr::scene::IMeshBuffer *)" (?handleBuild@RecastUtilM@@QAE_NPAVIMeshBuffer@scene@irr@@@Z)
1>recast_detour_util.obj : error LNK2019: unresolved external symbol "void __cdecl rcRasterizeTriangles(class rcContext *,float const *,int,int const *,unsigned char const *,int,struct rcHeightfield &,int)" (?rcRasterizeTriangles@@YAXPAVrcContext@@PBMHPBHPBEHAAUrcHeightfield@@H@Z) referenced in function "public: bool __thiscall RecastUtilM::handleBuild(class irr::scene::IMeshBuffer *)" (?handleBuild@RecastUtilM@@QAE_NPAVIMeshBuffer@scene@irr@@@Z)
1>recast_detour_util.obj : error LNK2019: unresolved external symbol "void __cdecl rcMarkWalkableTriangles(class rcContext *,float,float const *,int,int const *,int,unsigned char *)" (?rcMarkWalkableTriangles@@YAXPAVrcContext@@MPBMHPBHHPAE@Z) referenced in function "public: bool __thiscall RecastUtilM::handleBuild(class irr::scene::IMeshBuffer *)" (?handleBuild@RecastUtilM@@QAE_NPAVIMeshBuffer@scene@irr@@@Z)
1>recast_detour_util.obj : error LNK2019: unresolved external symbol "bool __cdecl rcCreateHeightfield(class rcContext *,struct rcHeightfield &,int,int,float const *,float const *,float,float)" (?rcCreateHeightfield@@YA_NPAVrcContext@@AAUrcHeightfield@@HHPBM2MM@Z) referenced in function "public: bool __thiscall RecastUtilM::handleBuild(class irr::scene::IMeshBuffer *)" (?handleBuild@RecastUtilM@@QAE_NPAVIMeshBuffer@scene@irr@@@Z)
1>recast_detour_util.obj : error LNK2019: unresolved external symbol "struct rcHeightfield * __cdecl rcAllocHeightfield(void)" (?rcAllocHeightfield@@YAPAUrcHeightfield@@XZ) referenced in function "public: bool __thiscall RecastUtilM::handleBuild(class irr::scene::IMeshBuffer *)" (?handleBuild@RecastUtilM@@QAE_NPAVIMeshBuffer@scene@irr@@@Z)
1>recast_detour_util.obj : error LNK2019: unresolved external symbol "public: void __cdecl rcContext::log(enum rcLogCategory,char const *,...)" (?log@rcContext@@QAAXW4rcLogCategory@@PBDZZ) referenced in function "public: bool __thiscall RecastUtilM::handleBuild(class irr::scene::IMeshBuffer *)" (?handleBuild@RecastUtilM@@QAE_NPAVIMeshBuffer@scene@irr@@@Z)
1>recast_detour_util.obj : error LNK2019: unresolved external symbol "void __cdecl rcCalcGridSize(float const *,float const *,float,int *,int *)" (?rcCalcGridSize@@YAXPBM0MPAH1@Z) referenced in function "public: bool __thiscall RecastUtilM::handleBuild(class irr::scene::IMeshBuffer *)" (?handleBuild@RecastUtilM@@QAE_NPAVIMeshBuffer@scene@irr@@@Z)
1>recast_detour_util.obj : error LNK2019: unresolved external symbol "void __cdecl rcCalcBounds(float const *,int,float *,float *)" (?rcCalcBounds@@YAXPBMHPAM1@Z) referenced in function "public: bool __thiscall RecastUtilM::handleBuild(class irr::scene::IMeshBuffer *)" (?handleBuild@RecastUtilM@@QAE_NPAVIMeshBuffer@scene@irr@@@Z)
1>recast_detour_util.obj : error LNK2019: unresolved external symbol "public: unsigned int __thiscall dtNavMeshQuery::findStraightPath(float const *,float const *,unsigned int const *,int,float *,unsigned char *,unsigned int *,int *,int,int)const " (?findStraightPath@dtNavMeshQuery@@QBEIPBM0PBIHPAMPAEPAIPAHHH@Z) referenced in function "public: class std::vector<class irr::core::vector3d<float>,class std::allocator<class irr::core::vector3d<float> > > __thiscall RecastUtilM::returnPath(class irr::core::vector3d<float>,class irr::core::vector3d<float>)" (?returnPath@RecastUtilM@@QAE?AV?$vector@V?$vector3d@M@core@irr@@V?$allocator@V?$vector3d@M@core@irr@@@std@@@std@@V?$vector3d@M@core@irr@@0@Z)
1>recast_detour_util.obj : error LNK2019: unresolved external symbol "public: unsigned int __thiscall dtNavMeshQuery::findPath(unsigned int,unsigned int,float const *,float const *,class dtQueryFilter const *,unsigned int *,int *,int)const " (?findPath@dtNavMeshQuery@@QBEIIIPBM0PBVdtQueryFilter@@PAIPAHH@Z) referenced in function "public: class std::vector<class irr::core::vector3d<float>,class std::allocator<class irr::core::vector3d<float> > > __thiscall RecastUtilM::returnPath(class irr::core::vector3d<float>,class irr::core::vector3d<float>)" (?returnPath@RecastUtilM@@QAE?AV?$vector@V?$vector3d@M@core@irr@@V?$allocator@V?$vector3d@M@core@irr@@@std@@@std@@V?$vector3d@M@core@irr@@0@Z)
1>recast_detour_util.obj : error LNK2019: unresolved external symbol "public: unsigned int __thiscall dtNavMeshQuery::findNearestPoly(float const *,float const *,class dtQueryFilter const *,unsigned int *,float *)const " (?findNearestPoly@dtNavMeshQuery@@QBEIPBM0PBVdtQueryFilter@@PAIPAM@Z) referenced in function "public: class std::vector<class irr::core::vector3d<float>,class std::allocator<class irr::core::vector3d<float> > > __thiscall RecastUtilM::returnPath(class irr::core::vector3d<float>,class irr::core::vector3d<float>)" (?returnPath@RecastUtilM@@QAE?AV?$vector@V?$vector3d@M@core@irr@@V?$allocator@V?$vector3d@M@core@irr@@@std@@@std@@V?$vector3d@M@core@irr@@0@Z)
1>recast_detour_util.obj : error LNK2019: unresolved external symbol "public: __thiscall dtQueryFilter::dtQueryFilter(void)" (??0dtQueryFilter@@QAE@XZ) referenced in function "public: class std::vector<class irr::core::vector3d<float>,class std::allocator<class irr::core::vector3d<float> > > __thiscall RecastUtilM::returnPath(class irr::core::vector3d<float>,class irr::core::vector3d<float>)" (?returnPath@RecastUtilM@@QAE?AV?$vector@V?$vector3d@M@core@irr@@V?$allocator@V?$vector3d@M@core@irr@@@std@@@std@@V?$vector3d@M@core@irr@@0@Z)
1>C:\Users\William\Documents\IrrTag\Debug\IrrTag.exe : fatal error LNK1120: 38 unresolved externals
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
 
Any ideas?
thanhle
Posts: 325
Joined: Wed Jun 12, 2013 8:09 am

Re: Micropather and Irrlicht

Post by thanhle »

You need to build and link the recast library before you can use the code provided.

Regards,
Thanh
The_Glitch
Competition winner
Posts: 523
Joined: Tue Jan 15, 2013 6:36 pm

Re: Micropather and Irrlicht

Post by The_Glitch »

Yeah building the recast library was pretty easy I haven't tried to use with Irrlicht yet though, you will get SDL errors like he mentioned but it should still build.
pop37corn
Posts: 10
Joined: Sat Apr 12, 2014 4:54 pm

Re: Micropather and Irrlicht

Post by pop37corn »

Okay, this is going to be stupid. When you're 15 though I guess you're stupid. I already linked the source and include folders like other libraries. How do you build the library in Visual C++ 2010? I googled it and found nothing about it. Now I feel stupid.

Thanks,

popcorn
The_Glitch
Competition winner
Posts: 523
Joined: Tue Jan 15, 2013 6:36 pm

Re: Micropather and Irrlicht

Post by The_Glitch »

I can't remember but I think recast use's a tool like cmake or premake you have to run this tool, the since your using visual studio 2010 you select to generate the project settings for vs2010. It will create the directory and need project and solution files, you then open the project in vs2010 and build. If it works correctly, that library and dll file is what you will link you separate Irrlicht project to.
pop37corn
Posts: 10
Joined: Sat Apr 12, 2014 4:54 pm

Re: Micropather and Irrlicht

Post by pop37corn »

Thanks and I know that much, but there is no makefile.txt or cmakelists.txt in the folder. It's making me want to rip my hair out. I don't know what to do.

EDIT: I figured it out. You had to compile the demo. Now going on to figure out how to use it in Irrlicht!
Post Reply