当前位置: 首页 > news >正文

网站建设公司深圳seo自然优化排名

网站建设公司深圳,seo自然优化排名,江苏建设网站公司,做网站必须要购买域名文章目录 运行结果2D导航概述开始前的准备2D导航创建导航网格创建角色 其他文章 运行结果 2D导航概述 Godot为2D和3D游戏提供了多个对象、类和服务器,以便于基于网格或基于网格的导航和路径查找。 说到导航,就得说一下导航网格,导航网格定义…

文章目录

  • 运行结果
  • 2D导航概述
  • 开始前的准备
  • 2D导航
    • 创建导航网格
    • 创建角色
  • 其他文章

运行结果

在这里插入图片描述

2D导航概述

Godot为2D和3D游戏提供了多个对象、类和服务器,以便于基于网格或基于网格的导航和路径查找。

说到导航,就得说一下导航网格,导航网格定义了角色可以站立和移动的区域,以其中心为基准。

本文章内容主要以官方文档为主,链接如下:官方文档导航部分

开始前的准备

为你的项目设置合适的窗口大小,如下图所示,宽度和高度自定义。
在这里插入图片描述

2D导航

创建导航网格

接下来,我们就创建一个导航网格。
首先为你的场景添加一个地图,也就是玩家可以走的路,这里随便弄,如下图所示。
在这里插入图片描述
接下来添加一个NavigationRegion2D组件。
在这里插入图片描述
单击该组件,在检查器窗口中,新建一个Navigation Polygon。
在这里插入图片描述
接着,点击该属性,在场景中绘制你的导航网格,如下图所致。连接第一个点和最后一个点可以完成导航网格的绘制。
在这里插入图片描述

注意在导航多边形的边缘和碰撞对象之间留出足够的间距,以避免路径跟随的角色在碰撞中反复被卡住。

创建角色

创建一个CharacterBody2D节点。为其添加Sprite2D子节点,为Sprite2D的Texture属性赋值,给他弄一个角色图片,任意即可。为CharacterBody2D添加CollisionShape2D子节点,为其Shape属性添加一个形状。调整大小以契合Sprite2D。
在这里插入图片描述
然后为CharacterBody2D添加NavigationAgent2D节点,最后结果如下图所示:
在这里插入图片描述
为CharacterBody2D节点添加一个MyCharacterBody2D脚本,并为其编写如下内容:

using Godot;public partial class MyCharacterBody2D : CharacterBody2D
{private NavigationAgent2D _navigationAgent;private float _movementSpeed = 200.0f;private Vector2 _movementTargetPosition = new Vector2(500.0f, 200.0f);public Vector2 MovementTarget{get { return _navigationAgent.TargetPosition; }set { _navigationAgent.TargetPosition = value; }}public override void _Ready(){base._Ready();_navigationAgent = GetNode<NavigationAgent2D>("NavigationAgent2D");// These values need to be adjusted for the actor's speed// and the navigation layout._navigationAgent.PathDesiredDistance = 4.0f;_navigationAgent.TargetDesiredDistance = 4.0f;// Make sure to not await during _Ready.Callable.From(ActorSetup).CallDeferred();}public override void _Process(double delta){base._Process(delta);_movementTargetPosition=GetMouseClickPosition();Callable.From(ActorSetup).CallDeferred();}public override void _PhysicsProcess(double delta){base._PhysicsProcess(delta);if (_navigationAgent.IsNavigationFinished()){return;}Vector2 currentAgentPosition = GlobalTransform.Origin;Vector2 nextPathPosition = _navigationAgent.GetNextPathPosition();Velocity = currentAgentPosition.DirectionTo(nextPathPosition) * _movementSpeed;MoveAndSlide();}private async void ActorSetup(){// Wait for the first physics frame so the NavigationServer can sync.await ToSignal(GetTree(), SceneTree.SignalName.PhysicsFrame);// Now that the navigation map is no longer empty, set the movement target.MovementTarget = _movementTargetPosition;}public Vector2 GetMouseClickPosition(){Vector2 mousePosition = GetGlobalMousePosition();return mousePosition;}
}

最终运行结果如下图所示:
在这里插入图片描述

其他文章

Godot实现闪烁效果
Godot信号教程

http://www.ds6.com.cn/news/61784.html

相关文章:

  • 做兼职哪个网站比较好企业网
  • 微网站设计平台网络服务商在哪咨询
  • wordpress 更新 失败网络优化工程师证书
  • 网站开发文档源码医院营销策略的具体方法
  • 网站建设中 html 下载优化关键词的方法正确的是
  • 如何建一个免费的网站营销渠道方案
  • 搜索引擎排名优化方案seo技术团队
  • 开80服务器怎么做网站百度搜索引擎平台
  • 长沙网站建设电话优化大师电脑版官方免费下载
  • 公司网站建设工作重点网页设计友情链接怎么做
  • 东营政府采购网官网贵州seo推广
  • 东凤镇 网站建设泉州seo技术
  • 无锡建设网站制作重庆网站关键词排名优化
  • 内部网站建设app东莞网络推广代运营
  • 网站开发个人总结百度一下你就知道啦
  • 深圳如何做网站路由优化大师官网
  • 郑州网络公司做医疗网站企业查询app
  • wordpress主题设置插件下载2022最好的百度seo
  • 东莞高端做网站推广公司主要做什么
  • 那些网站专门做棋牌推广的个人网站免费推广
  • app制作公司哪家好seo合作
  • 像试淘网网站怎么建设奖券世界推广网站
  • 微信怎么做网站的动图百度竞价推广自己可以做吗
  • 手机软件下载网站源码华为手机网络营销策划方案
  • 杭州设计公司税务筹划seo狂人
  • 使用ftp修改网站图片最新百度新闻
  • 龙井建设局网站免费企业网站建设流程
  • 做购物网站需要什么百度app官方下载安装到手机
  • 网站设计与制作专业宁波seo整体优化公司
  • 上海市工程建设标准化信息网站lol今日赛事直播