Skip to content

Commit

Permalink
Add icon
Browse files Browse the repository at this point in the history
  • Loading branch information
mohsenph69 committed Aug 27, 2023
1 parent 57df48d commit 78eccc9
Show file tree
Hide file tree
Showing 5 changed files with 59 additions and 37 deletions.
51 changes: 21 additions & 30 deletions gdextension/src/navmesh/mnavigation_region_3d.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,10 @@ void MNavigationRegion3D::_bind_methods(){
ClassDB::bind_method(D_METHOD("draw_npoints","brush_pos","radius","add"), &MNavigationRegion3D::draw_npoints);
ClassDB::bind_method(D_METHOD("set_npoints_visible","val"), &MNavigationRegion3D::set_npoints_visible);

ClassDB::bind_method(D_METHOD("set_active","input"), &MNavigationRegion3D::set_active);
ClassDB::bind_method(D_METHOD("get_active"), &MNavigationRegion3D::get_active);
ADD_PROPERTY(PropertyInfo(Variant::BOOL,"active"),"set_active","get_active");

ClassDB::bind_method(D_METHOD("set_force_update","input"), &MNavigationRegion3D::set_force_update);
ClassDB::bind_method(D_METHOD("get_force_update"), &MNavigationRegion3D::get_force_update);
ADD_PROPERTY(PropertyInfo(Variant::BOOL,"force_bake"),"set_force_update","get_force_update");
Expand All @@ -33,14 +37,6 @@ void MNavigationRegion3D::_bind_methods(){
ClassDB::bind_method(D_METHOD("get_follow_camera"), &MNavigationRegion3D::get_follow_camera);
ADD_PROPERTY(PropertyInfo(Variant::BOOL,"follow_camera"),"set_follow_camera","get_follow_camera");

ClassDB::bind_method(D_METHOD("set_start_update","input"), &MNavigationRegion3D::set_start_update);
ClassDB::bind_method(D_METHOD("get_start_update"), &MNavigationRegion3D::get_start_update);
ADD_PROPERTY(PropertyInfo(Variant::BOOL,"start_update"),"set_start_update","get_start_update");

ClassDB::bind_method(D_METHOD("set_active_update_loop","input"), &MNavigationRegion3D::set_active_update_loop);
ClassDB::bind_method(D_METHOD("get_active_update_loop"), &MNavigationRegion3D::get_active_update_loop);
ADD_PROPERTY(PropertyInfo(Variant::BOOL,"active_update_loop"),"set_active_update_loop","get_active_update_loop");

ClassDB::bind_method(D_METHOD("set_distance_update_threshold","input"), &MNavigationRegion3D::set_distance_update_threshold);
ClassDB::bind_method(D_METHOD("get_distance_update_threshold"), &MNavigationRegion3D::get_distance_update_threshold);
ADD_PROPERTY(PropertyInfo(Variant::FLOAT,"distance_update_threshold"),"set_distance_update_threshold","get_distance_update_threshold");
Expand Down Expand Up @@ -75,14 +71,15 @@ MNavigationRegion3D::~MNavigationRegion3D(){
}

void MNavigationRegion3D::init(MTerrain* _terrain, MGrid* _grid){
if(!active){
return;
}
terrain = _terrain;
grid = _grid;
if(start_update){
get_cam_pos();
update_navmesh(cam_pos);
last_update_pos = cam_pos;
update_timer->start();
}
get_cam_pos();
update_navmesh(cam_pos);
last_update_pos = cam_pos;
update_timer->start();
ERR_FAIL_COND(!grid->is_created());
h_scale = grid->get_h_scale();
scenario = grid->get_scenario();
Expand Down Expand Up @@ -139,6 +136,8 @@ void MNavigationRegion3D::clear(){
memdelete(it->value);
}
grid_to_npoint.clear();
update_timer->stop();
is_nav_init = false;
}

void MNavigationRegion3D::_update_loop(){
Expand Down Expand Up @@ -328,6 +327,8 @@ bool MNavigationRegion3D::has_data(){
}

void MNavigationRegion3D::set_force_update(bool input){
ERR_FAIL_COND(!active);
ERR_FAIL_COND(!is_nav_init);
_force_update = true;
}

Expand All @@ -350,24 +351,14 @@ bool MNavigationRegion3D::get_follow_camera(){
return follow_camera;
}

void MNavigationRegion3D::set_start_update(bool input){
start_update = input;
}
bool MNavigationRegion3D::get_start_update(){
return start_update;
}

void MNavigationRegion3D::set_active_update_loop(bool input){
if(input){
update_timer->start();
} else {
update_timer->stop();
void MNavigationRegion3D::set_active(bool input){
active = input;
if(is_nav_init){
WARN_PRINT("You should restart Terrain if you want to active MNavigationRegion3D update");
}
active_update_loop = input;
}

bool MNavigationRegion3D::get_active_update_loop(){
return active_update_loop;
bool MNavigationRegion3D::get_active(){
return active;
}

void MNavigationRegion3D::set_distance_update_threshold(float input){
Expand Down
10 changes: 3 additions & 7 deletions gdextension/src/navmesh/mnavigation_region_3d.h
Original file line number Diff line number Diff line change
Expand Up @@ -36,13 +36,12 @@ class MNavigationRegion3D : public NavigationRegion3D{
std::future<void> update_thread;
bool is_updating = false;
bool _force_update = false;
bool start_update = true;
bool active = true;
Vector3 cam_pos;
Vector3 g_pos;
Vector3 last_update_pos;
Node3D* custom_camera = nullptr;
Timer* update_timer;
bool active_update_loop=true;
float distance_update_threshold=64;
void _update_navmesh(Vector3 cam_pos);
MeshInstance3D* debug_mesh_instance;
Expand Down Expand Up @@ -99,11 +98,8 @@ class MNavigationRegion3D : public NavigationRegion3D{
void set_follow_camera(bool input);
bool get_follow_camera();

void set_start_update(bool input);
bool get_start_update();

void set_active_update_loop(bool input);
bool get_active_update_loop();
void set_active(bool input);
bool get_active();

void set_distance_update_threshold(float input);
float get_distance_update_threshold();
Expand Down
Binary file added icons/MNavigationRegion3D.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
34 changes: 34 additions & 0 deletions icons/MNavigationRegion3D.png.import
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
[remap]

importer="texture"
type="CompressedTexture2D"
uid="uid://piy6jiwu28vi"
path="res://.godot/imported/MNavigationRegion3D.png-1b7ea227137c1b5422cbad606885d6e1.ctex"
metadata={
"vram_texture": false
}

[deps]

source_file="res://addons/m_terrain/icons/MNavigationRegion3D.png"
dest_files=["res://.godot/imported/MNavigationRegion3D.png-1b7ea227137c1b5422cbad606885d6e1.ctex"]

[params]

compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
1 change: 1 addition & 0 deletions libs/MTerrain.gdextension
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ windows.release.x86_32 = "res://addons/m_terrain/libs/libMTerrain.windows.templa

MTerrain = "res://addons/m_terrain/icons/M-terrain_icon.png"
MGrass = "res://addons/m_terrain/icons/foilage_icon.png"
MNavigationRegion3D = "res://addons/m_terrain/icons/MNavigationRegion3D.png"



Expand Down

0 comments on commit 78eccc9

Please sign in to comment.