Gamestudio Links
Zorro Links
Newest Posts
Data from CSV not parsed correctly
by EternallyCurious. 04/18/24 10:45
StartWeek not working as it should
by Zheka. 04/18/24 10:11
folder management functions
by VoroneTZ. 04/17/24 06:52
lookback setting performance issue
by 7th_zorro. 04/16/24 03:08
zorro 64bit command line support
by 7th_zorro. 04/15/24 09:36
Zorro FIX plugin - Experimental
by flink. 04/14/24 07:48
Zorro FIX plugin - Experimental
by flink. 04/14/24 07:46
AUM Magazine
Latest Screens
The Bible Game
A psychological thriller game
SHADOW (2014)
DEAD TASTE
Who's Online Now
1 registered members (SBGuy), 712 guests, and 3 spiders.
Key: Admin, Global Mod, Mod
Newest Members
EternallyCurious, howardR, 11honza11, ccorrea, sakolin
19047 Registered Users
Previous Thread
Next Thread
Print Thread
Rate Thread
Page 21 of 27 1 2 19 20 21 22 23 26 27
Re: navmesh/pathfinding plugin [Re: sivan] #422066
05/01/13 09:36
05/01/13 09:36
Joined: Mar 2012
Posts: 927
cyberspace
W
Wjbender Offline OP
User
Wjbender  Offline OP
User
W

Joined: Mar 2012
Posts: 927
cyberspace
Thank you sivan , i am sorry but will have to get back tou you on this later ..
I have added all sorts of other usefull functions and added support for wavefront obj too , currently i am trying to see if i can pull polygon reduction algorithms into the project to simplify geometry before any kind of build commences ,which
works easy because my mesh data is apart from actual entities but
the algorithm i am using does not take into account open edge geometry so this does not work for terrain well at this moment but seems okay for closed edge geometry ,i am going
to look into some other algorithms first , perhaps if i could use something like physics simplification geometry bit i am not sure yet i would have access to such geometry data perhaps i should pull out old newton sdk and look into that ... Any way i am halting release until i am doene with further testing and when my api is exactly what i have in mind for a first release


Compulsive compiler
Re: navmesh/pathfinding plugin [Re: Wjbender] #422123
05/02/13 19:05
05/02/13 19:05
Joined: Mar 2012
Posts: 927
cyberspace
W
Wjbender Offline OP
User
Wjbender  Offline OP
User
W

Joined: Mar 2012
Posts: 927
cyberspace
current function and implementation status --

Code:
//////////////////////////////////////
//////////////////////////////////////
//************************************
// TYPES
//

typedef void* 		Nav_Thread;
#define tilemesh  2

//////////////////////////////////////
//////////////////////////////////////
//************************************
// HELPER/DEBUG FUNCTIONS

my_polygon*  get_polygons  ();
my_triangle* get_triangles (my_polygon* polygon);

int 	get_polycount ();
float ceiling		  (float val);

void save_debugmesh (char* filename);
void save_merged    (void* mesh , char* filename);
void calc_bbox      (ENTITY *ent , int chunk , var *min , var *max);

VECTOR* vec_edge            (VECTOR *from);
VECTOR* nav_random_points   (int points);
VECTOR* nearest_navpoint    (VECTOR* from);
VECTOR* random_point_around (VECTOR* from , float radius);

//////////////////////////////////////
//////////////////////////////////////
//************************************
// BUILD PARAM FUNCTIONS
//
typedef struct custombuild
{
	float CellSize;
	float CellHeight;
	float AgentHeight;
	float AgentRadius;
	float AgentMaxClimb;
	float AgentMaxSlope;
	float RegionMinSize;
	float RegionMergeSize;
	float EdgeMaxLen;
	float EdgeMaxError;
	float VertsPerPoly;
	float DetailSampleDist;
	float DetailSampleMaxError;
	int   monotonePartitioning;
	float TileSize;
	int   navtype;
	int   buildalltiles;
}custombuild;

custombuild* create_custombuild ();
custombuild* load_custombuild   (char* filename);

void remove_custombuild (custombuild* mybuild);
int export_custombuild  (char* filename , custombuild *step);

//////////////////////////////////////
//////////////////////////////////////
//************************************
// NAVBUILDER OBJECT FUNCTIONS
//

int is_valid_navbuilder ();
void create_navbuilder  ();
void destroy_navbuilder ();

Nav_Thread init_navbuilder (custombuild* step);

//////////////////////////////////////
//////////////////////////////////////
//************************************
// STANDARD PATH-FINDING FUNCTIONS
//

VECTOR* findpath (VECTOR *from , VECTOR* to , int *num_points);

//////////////////////////////////////
//////////////////////////////////////
//************************************
// CROWD/AGENT FUNCTIONS
//

-------BUSY 

//////////////////////////////////////
//////////////////////////////////////
//************************************
// INPUT GEOMETRY FUNCTIONS
//

void mesh_from_level_blocks		  (ENTITY* level , int chunks);
void* mesh_from_level_blocks_chunk (ENTITY* level , int chunks);

void transform_mesh_ent	  (void* mesh , ENTITY* ent);
void transform_mesh_arg   (void* mesh , ANGLE* angle , VECTOR* scale , VECTOR* pos);

void* mesh_from_ent		  (ENTITY* ent);
void  mesh_from_hmp		  (ENTITY* ent , int chunks);
void* mesh_from_hmp_chunk (ENTITY* ent , int chunk);

void* mesh_from_obj_file  (char* filename);
void* mesh_from_buffers	  (D3DVERTEX* vbuffer , short* tbuffer , int verts , int tris);

int get_vertcount (void* mesh);
int get_tricount  (void* mesh);

int*   get_tbuffer (void* mesh);
float* get_vbuffer (void* mesh);

void save_mesh  (void* mesh ,char* filename);
void* load_mesh (char* filename);

//////////////////////////////////////
//////////////////////////////////////
//************************************
// TILE MANIPULATION FUNCTIONS
//

void remove_all_tiles ();
void remove_tile			  (VECTOR* pos);
void save_all_tiles		  (char* filename);
void load_all_tiles		  (char* filename);
void remove_tiles_bbox	  (VECTOR* bmin , VECTOR* bmax);
void remove_tiles_ent_box (ENTITY *ent , int chunk);

Nav_Thread build_all_tiles ();
Nav_Thread build_tile			 (VECTOR* pos);
Nav_Thread build_tiles_bbox	 (VECTOR* bmin , VECTOR* bmax);
Nav_Thread build_tiles_ent_box (ENTITY *ent , int chunk);


//build from multible entity boxes in a list all at once
void clear_temp_entlist();
Nav_Thread build_tiles_box_entlist();

void rem_temp_entlist (ENTITY* ent , int chunk);
void add_temp_entlist (ENTITY* ent , int chunk);


//build from multible positions in a list all at once 
void clear_temp_pntlist ();
Nav_Thread build_tiles_pntlist ();

void rem_temp_pntlist (VECTOR* pnt , int id);
void add_temp_pntlist (VECTOR* pnt , int id);

//////////////////////////////////////
//////////////////////////////////////
//************************************
// INPUT GEOMETRY LIST FUNCTIONS
//
void  clear_meshlist ();
void  add_meshlist   (void* mesh);
void  rem_meshlist   (void* mesh);

void  rem_meshlist_ent  (ENTITY* ent , int chunk);
void* get_meshlist_ent	(ENTITY* ent , int chunk);

//////////////////////////////////////
//////////////////////////////////////
//************************************
// THREAD STATUS (DONE/BUSY)
//
int thread_alive (void* thandle);



Compulsive compiler
Re: navmesh/pathfinding plugin [Re: Wjbender] #422125
05/02/13 19:31
05/02/13 19:31
Joined: Jun 2009
Posts: 2,210
Bavaria, Germany
Kartoffel Offline
Expert
Kartoffel  Offline
Expert

Joined: Jun 2009
Posts: 2,210
Bavaria, Germany
wow, thats a lot.

I'm really looking forward for this to release grin


POTATO-MAN saves the day! - Random
Re: navmesh/pathfinding plugin [Re: Kartoffel] #422126
05/02/13 19:44
05/02/13 19:44
Joined: Mar 2012
Posts: 927
cyberspace
W
Wjbender Offline OP
User
Wjbender  Offline OP
User
W

Joined: Mar 2012
Posts: 927
cyberspace
lol well thats just for now ... the plugin source is well over 44mb at
this stage..

thank you its nice to feel it is wanted


Compulsive compiler
Re: navmesh/pathfinding plugin [Re: Wjbender] #422214
05/05/13 06:54
05/05/13 06:54
Joined: Mar 2011
Posts: 3,150
Budapest
sivan Offline
Expert
sivan  Offline
Expert

Joined: Mar 2011
Posts: 3,150
Budapest
nice interface, I really hope you can solve the terrain mesh problem, but it can be a bit different in free/extra/commercial and in trial/pro because of terrain lod. or is it caused by mesh chunks?


Free world editor for 3D Gamestudio: MapBuilder Editor
Re: navmesh/pathfinding plugin [Re: sivan] #422225
05/05/13 16:04
05/05/13 16:04
Joined: Mar 2012
Posts: 927
cyberspace
W
Wjbender Offline OP
User
Wjbender  Offline OP
User
W

Joined: Mar 2012
Posts: 927
cyberspace
Thank you , well i dropped the edge collapse algorithm from this version , it wil take me a lot longer to get just the correct thing for the job ..
So basicly there is no problem with any input geimetry be it ent terrain or blocks or obj they all work , the lod i could not add because i think i dont have acces to test it .. I have added eveb more to it .it can now save any mesh to mdl .. Single tile load and save and my debugmesh is split up in meshes according to tile meshes..


Compulsive compiler
Re: navmesh/pathfinding plugin [Re: Wjbender] #422234
05/06/13 07:17
05/06/13 07:17
Joined: Mar 2011
Posts: 3,150
Budapest
sivan Offline
Expert
sivan  Offline
Expert

Joined: Mar 2011
Posts: 3,150
Budapest
that's great, I read about geometry conversions, it seems to be a hard thing to convert everything to a convex navmesh, so good luck. will it be displayable runtime to check for possible bugs? I mean not in your editor, but when it is used in a game?
(as I remember in trial version terrain lod behaves strangely, it os not fully supported somehow, once I talked with Jcl about it.)


Free world editor for 3D Gamestudio: MapBuilder Editor
Re: navmesh/pathfinding plugin [Re: sivan] #422250
05/06/13 12:15
05/06/13 12:15
Joined: Mar 2012
Posts: 927
cyberspace
W
Wjbender Offline OP
User
Wjbender  Offline OP
User
W

Joined: Mar 2012
Posts: 927
cyberspace
Yeah sivan i am a bit sceptical about the lod in trial version to , it sounds to me a bit like you
are thinking about doing a navmesh for your
Path finder well it would be really cool if you could do it and keep your insane amount
of entities doing theire thing .. Well yes i have functions that would displau the navmesh by code..
Im now looking at adding some advanced pathfinding functions to use the exclude include filters and max path points to .


Compulsive compiler
Re: navmesh/pathfinding plugin [Re: Wjbender] #422748
05/16/13 01:33
05/16/13 01:33
Joined: Mar 2012
Posts: 927
cyberspace
W
Wjbender Offline OP
User
Wjbender  Offline OP
User
W

Joined: Mar 2012
Posts: 927
cyberspace
BETA release ,check page 1


Compulsive compiler
Re: navmesh/pathfinding plugin [Re: Wjbender] #422752
05/16/13 07:23
05/16/13 07:23
Joined: Mar 2011
Posts: 3,150
Budapest
sivan Offline
Expert
sivan  Offline
Expert

Joined: Mar 2011
Posts: 3,150
Budapest
what should I click to download it? alway further windows appearing for signing up or registering or other blabla...

about your impression: my pathfinder uses navmesh-like areas (consisting of various amount of tiles), where I do the high level pathfinding for groups, and short low level pathfindings are done on tile level for units. so in theory I could use a navmesh too, which would have benefits in case of e.g complex castles, if I can adapt its features to my needs, basically a very effective collision avoidance is a must, and (what seems to be more difficult) dealing with various unit sizes also should be solved. but if I can generate tiles from navmesh areas, the thing would work in the very same way as currently, except that my areas are processed by a terrain analysis to realize strategic positions, that should be reworked totally.


Free world editor for 3D Gamestudio: MapBuilder Editor
Page 21 of 27 1 2 19 20 21 22 23 26 27

Moderated by  aztec, Blink, HeelX 

Gamestudio download | chip programmers | Zorro platform | shop | Data Protection Policy

oP group Germany GmbH | Birkenstr. 25-27 | 63549 Ronneburg / Germany | info (at) opgroup.de

Powered by UBB.threads™ PHP Forum Software 7.7.1