D*Lite D Star Lite Unity2019.3.4 完整项目
里面包含整个D*Lite算法演示的Unity项目,包括代码,注意看版本号,旧版的Unity可能无法打开。直接点开Asset/Scenes里面的.Unity就可以打开。
直接在Unity运行算法需要更长时间(所以里面的算法计时会偏长)
这里可以先下演示程序查看:https://download.csdn.net/download/mkr67n/12404898
代码片段和文件信息
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
..A..H. 287744 2020-05-12 00:20 DStarLiteTesting.vsDStarLiteTestingv16.suo
文件 0 2020-05-08 18:07 DStarLiteTesting.vsDStarLiteTestingv16Serversqlite3db.lock
文件 937984 2020-05-12 00:20 DStarLiteTesting.vsDStarLiteTestingv16Serversqlite3storage.ide
文件 46274 2020-05-11 23:52 DStarLiteTestingAssembly-CSharp.csproj
I.A.... 8096 2020-05-08 22:51 DStarLiteTestingAssetsPrefabsCell.prefab
文件 154 2020-05-08 18:05 DStarLiteTestingAssetsPrefabsCell.prefab.meta
文件 172 2020-05-08 18:05 DStarLiteTestingAssetsPrefabs.meta
I.A.... 36560 2020-05-09 23:20 DStarLiteTestingAssetsScenesDStarLiteDemonstration.unity
文件 155 2019-09-14 13:06 DStarLiteTestingAssetsScenesDStarLiteDemonstration.unity.meta
文件 172 2020-05-08 18:04 DStarLiteTestingAssetsScenes.meta
文件 8557 2020-05-09 22:40 DStarLiteTestingAssetsscriptsDebuggerDStarLiteDebugger.cs
文件 243 2020-05-07 21:17 DStarLiteTestingAssetsscriptsDebuggerDStarLiteDebugger.cs.meta
文件 961 2020-05-09 23:01 DStarLiteTestingAssetsscriptsDebuggerPrintUsingTime.cs
文件 243 2020-05-09 15:03 DStarLiteTestingAssetsscriptsDebuggerPrintUsingTime.cs.meta
文件 172 2020-05-08 18:11 DStarLiteTestingAssetsscriptsDebugger.meta
文件 10547 2020-05-11 23:55 DStarLiteTestingAssetsscriptsDstarLiteD_StarLite.cs
文件 243 2020-05-07 15:28 DStarLiteTestingAssetsscriptsDstarLiteD_StarLite.cs.meta
文件 6180 2020-05-09 12:53 DStarLiteTestingAssetsscriptsDstarLiteKey.cs
文件 243 2020-05-07 15:32 DStarLiteTestingAssetsscriptsDstarLiteKey.cs.meta
文件 2745 2020-05-09 21:19 DStarLiteTestingAssetsscriptsDstarLiteNode.cs
文件 243 2020-05-07 15:40 DStarLiteTestingAssetsscriptsDstarLiteNode.cs.meta
文件 172 2020-05-08 18:09 DStarLiteTestingAssetsscriptsDstarLite.meta
文件 1015 2020-05-09 14:52 DStarLiteTestingAssetsscriptsTilesTilescript.cs
文件 243 2020-05-08 18:06 DStarLiteTestingAssetsscriptsTilesTilescript.cs.meta
文件 172 2020-05-08 18:06 DStarLiteTestingAssetsscriptsTiles.meta
文件 172 2020-05-08 18:06 DStarLiteTestingAssetsscripts.meta
文件 370 2020-05-08 18:02 DStarLiteTestingAssetsSpriteswhite.png
文件 2058 2020-05-08 18:10 DStarLiteTestingAssetsSpriteswhite.png.meta
文件 172 2020-05-08 18:10 DStarLiteTestingAssetsSprites.meta
文件 917 2020-05-08 18:07 DStarLiteTestingDStarLiteTesting.sln
............此处省略4799个文件信息
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class DStarLiteDebugger : MonoBehaviour
{
[SerializeField]
Gameobject mapElement;
HashSet tempNode = new HashSet();
Queue path;
Color32 customRed = new Color32(255 75 55 255);
Color32 skyBlue = new Color32(0 200 255 255);
//=========temps==========
Collider2D tempCollider;
Gameobject temp;
Tilescript tempTile;
bool start;
void Start()
{
//创建地图
DStarDebugMap();
UpdateDebugNumber();
}
void DStarDebugMap()
{
float sideLength = 1;
int X = 20;
int Y = 20;
Gameobject temp;
Gameobject[] allTile = new Gameobject[XY];
DStarLite.nodes.Clear();
//tiling
for (int x = 0; x < 20; x++)
{
for (int y = 0; y < 20; y++)
{
temp = Instantiateject>(mapElement new Vector3(x * sideLength y * sideLength) Quaternion.identity);
DStarLite.nodes.Add(temp.GetComponentript>().TileNode = new Node(x y temp));
allTile[x y] = temp;
}
}
//neighbour
//所有结点
for (int x = 0; x < 20; x++)
{
for (int y = 0; y < 20; y++)
{
//九宫格内
for (int i = x - 1; i <= x + 1; i++)
{
for (int j = y - 1; j <= y + 1; j++)
{
//除自己以外
if ((i != x || j != y))
{
//且在范围内
if (i < 0 || i >= X || j < 0 || j >= Y)
{
continue;
}
else
{
//的邻居
allTile[x y].GetComponentript>().TileNode.neighbour
.Add(allTile[i j].GetComponentript>().TileNode);
}
}
}
}
}
}
}
void Update()
{
//退出
Esc();
//显示路径
VisiblePath();
//右键中途取消设置障碍
RighClickCancelBlock();
//左键设置开始结束位置(第一次起点,第二次终点)
LeftClickSetStartAndEnd();
//中键设置障碍
MiddleClickSetBlock();
//空格键开始第一次寻路
PressSpaceStart();
}
//==========注意,DStarLite的脚本没有直接挂载,但是这些函数会调用到那个算法的函数==========
void PressSpaceStart()
{
if (Input.GetKeyDown(KeyCode.Space))
{
if(!start)
{
if(DStarLite.sStart != null && DStarLite.sGoal != null)
{
DStarLite.Initialize();
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
..A..H. 287744 2020-05-12 00:20 DStarLiteTesting.vsDStarLiteTestingv16.suo
文件 0 2020-05-08 18:07 DStarLiteTesting.vsDStarLiteTestingv16Serversqlite3db.lock
文件 937984 2020-05-12 00:20 DStarLiteTesting.vsDStarLiteTestingv16Serversqlite3storage.ide
文件 46274 2020-05-11 23:52 DStarLiteTestingAssembly-CSharp.csproj
I.A.... 8096 2020-05-08 22:51 DStarLiteTestingAssetsPrefabsCell.prefab
文件 154 2020-05-08 18:05 DStarLiteTestingAssetsPrefabsCell.prefab.me
文件 172 2020-05-08 18:05 DStarLiteTestingAssetsPrefabs.me
I.A.... 36560 2020-05-09 23:20 DStarLiteTestingAssetsScenesDStarLiteDemonstration.unity
文件 155 2019-09-14 13:06 DStarLiteTestingAssetsScenesDStarLiteDemonstration.unity.me
文件 172 2020-05-08 18:04 DStarLiteTestingAssetsScenes.me
文件 8557 2020-05-09 22:40 DStarLiteTestingAssetssc
文件 243 2020-05-07 21:17 DStarLiteTestingAssetssc
文件 961 2020-05-09 23:01 DStarLiteTestingAssetssc
文件 243 2020-05-09 15:03 DStarLiteTestingAssetssc
文件 172 2020-05-08 18:11 DStarLiteTestingAssetssc
文件 10547 2020-05-11 23:55 DStarLiteTestingAssetssc
文件 243 2020-05-07 15:28 DStarLiteTestingAssetssc
文件 6180 2020-05-09 12:53 DStarLiteTestingAssetssc
文件 243 2020-05-07 15:32 DStarLiteTestingAssetssc
文件 2745 2020-05-09 21:19 DStarLiteTestingAssetssc
文件 243 2020-05-07 15:40 DStarLiteTestingAssetssc
文件 172 2020-05-08 18:09 DStarLiteTestingAssetssc
文件 1015 2020-05-09 14:52 DStarLiteTestingAssetssc
文件 243 2020-05-08 18:06 DStarLiteTestingAssetssc
文件 172 2020-05-08 18:06 DStarLiteTestingAssetssc
文件 172 2020-05-08 18:06 DStarLiteTestingAssetssc
文件 370 2020-05-08 18:02 DStarLiteTestingAssetsSpriteswhite.png
文件 2058 2020-05-08 18:10 DStarLiteTestingAssetsSpriteswhite.png.me
文件 172 2020-05-08 18:10 DStarLiteTestingAssetsSprites.me
文件 917 2020-05-08 18:07 DStarLiteTestingDStarLiteTesting.sln
............此处省略4799个文件信息
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。
评论列表(条)