1
This commit is contained in:
parent
bfd2821398
commit
fddc8015dc
@ -882,9 +882,13 @@ bool MapInstance::SceneRaycast(const glm::vec3& orig,
|
|||||||
float max_distance,
|
float max_distance,
|
||||||
glm::vec3& hit_pos)
|
glm::vec3& hit_pos)
|
||||||
{
|
{
|
||||||
|
if (max_distance <= 0.001f) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
float nearest_distance = 0.0f;
|
float nearest_distance = 0.0f;
|
||||||
glm::vec3 nearest_pt(0.0f, 0.0f, 0.0f);
|
glm::vec3 nearest_pt(0.0f, 0.0f, 0.0f);
|
||||||
int raycast_index = MapMgr::Instance()->IncCurrRaycastIndex();
|
int raycast_index = MapMgr::Instance()->IncCurrRaycastIndex();
|
||||||
|
float len = 0.0f;
|
||||||
while (true) {
|
while (true) {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -145,3 +145,17 @@ int MapService::GetGridId(float world_x, float world_y)
|
|||||||
int grid_id = (int)(world_x/cell_width_) + (int)(world_y/cell_width_) * map_width_;
|
int grid_id = (int)(world_x/cell_width_) + (int)(world_y/cell_width_) * map_width_;
|
||||||
return grid_id;
|
return grid_id;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void MapService::GetGridList(int grid_id, list_head* grid_list[9], int& grid_count)
|
||||||
|
{
|
||||||
|
grid_count = 0;
|
||||||
|
if (grid_id <= 0 || grid_id >= max_grid_id_) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
for (int i = 0; i < 9; ++i) {
|
||||||
|
int idx = grid_id + grid_offset_arr_[i];
|
||||||
|
if (idx >= 0 && idx < max_grid_id_) {
|
||||||
|
grid_list[grid_count++] = &map_cells_[idx];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@ -25,9 +25,8 @@ class MapService
|
|||||||
|
|
||||||
bool CanAdd(const glm::vec3& pos, int rad);
|
bool CanAdd(const glm::vec3& pos, int rad);
|
||||||
void AddTriangle(mc::Triangle* tri);
|
void AddTriangle(mc::Triangle* tri);
|
||||||
|
|
||||||
private:
|
|
||||||
int GetGridId(float world_x, float world_y);
|
int GetGridId(float world_x, float world_y);
|
||||||
|
void GetGridList(int grid_id, list_head* grid_list[9], int& grid_count);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
list_head* map_cells_ = nullptr;
|
list_head* map_cells_ = nullptr;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user