UWA学堂上新|服务器AOI(Area Of Interest)算法和功能实现

课程是《基于.NetCore开发MMORPG分布式游戏服务器》系列课程第6节,本系列课程旨在帮助大家从零开始搭建商业化MMORPG的分布式服务器框架,包括不同种类服务器的线程模型,如中心服务器、网关服务器、游戏服务器、寻路服务器等,并讲解了这些服务器该如何根据各自的职责进行业务模块分工。

本课程主要带大家掌握如何使用Unity的NavMesh进行寻路,包括多代理同时寻路,不同代理的参数设置等。客户端大的3D场景如何进行AOI切分,并导出AOI数据给服务器使用,服务器加载AOI数据并创建服务器版本的场景和对应AOI区域实例。服务器进行刷怪,在对应的AOI区域创建怪实例,只有当玩家进入对应区域,才能看见怪,离开对应区域时,怪会进行卸载,从而优化整个客户端同时显示的角色数量,减少通讯压力!

相关课程推荐:

《分布式MMORPG服务器框架搭建以及MongoDB和Redis使用》(基于.NetCore开发MMORPG分布式游戏服务器系列篇1)

《支持HotFix的分布式服务器框架搭建》(基于.NetCore开发MMORPG分布式游戏服务器系列篇2)

《FlatBuffer表格工具和服务器表格加载》(基于.NetCore开发MMORPG分布式游戏服务器系列篇3)

《分布式网络和通讯协议数据传输》(基于.NetCore开发MMORPG分布式游戏服务器系列篇4)

《MMO游戏创建加载游戏角色对应服务器数据存储和读取》(基于.NetCore开发MMORPG分布式游戏服务器系列篇5)

饭饭:独立游戏制作人 YouYouFramework游戏框架作者 自研MMORPG客户端和服务器框架

2014进入手游行业,7年以上游戏前后端开发经验,曾任日系游戏公司主程,畅游程序开发专家。开发过MMORPG游戏《封神之怒》、《轩辕剑》,SLG游戏《战之海贼》、《我的城堡》,休闲游戏《俄罗斯方块环游记》。


目录

1|客户端使用NavMesh进行寻路

2|客户端自定义AOI编辑器创建九宫格数据供服务器使用

3|服务器加载AOI区域数据并在对应区域创建服务器角色

4|客户端进入游戏后根据AOI区域显示对应的角色

5|客户端跨区域移动的时候动态加载和卸载AOI区域角色


本篇转载自《服务器AOI(Area Of Interest)算法和功能实现》的第1节。


以上就是《服务器AOI(Area Of Interest)算法和功能实现》的第1节,此课程比较适合初涉MMORPG服务器的开发者、从事Unity前端开发,对服务器进行学习的开发者以及希望全面学习服务器从零搭建到商业化的开发者。

看完全篇后你会获得:

1、客户端NavMesh的使用和场景进行AOI切分;

2、服务器实现AOI算法并在对应区域进行刷怪;

3、课程配套Demo工程。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/46836.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

PICO,迷途VR?

随着科技的持续向前发展,越来越多的智能可穿戴设备涌现出来。除了最为大众所熟知的智能手环、智能手表之外,VR设备同样是可穿戴设备领域的一大细分领域,不少巨头都在VR领域有所布局。 回溯过往可知,VR并非新鲜事物,早…

【NLP实战】基于TextCNN的新闻文本分类

TextCNN文本分类在pytorch中的实现 基于TextCNN和transformers.BertTokenizer的新闻文本分类实现,包括训练、预测、数据加载和准确率评估。 目录 项目代码TextCNN网络结构相关模型仓库准备工作项目调参预测与评估 1.项目代码 https://github.com/NeoTse0622/Te…

怎么选流量套餐最划算呢,这篇文章建议收藏!

据小编了解,现在大多数用户手上都不止一张SIM卡,大部分都是双卡,甚至三卡了,那么,这些卡槽你真的利用对了吗? 这篇文章就告诉大家,如何更好的利用这两个卡槽,让你即省钱&#xff0c…

XML 验证器:确保数据完整性和准确性的关键工具

XML 验证器:确保数据完整性和准确性的关键工具 引言 在当今数字化时代,数据的有效管理和交换至关重要。XML(可扩展标记语言)作为一种用于存储和传输数据的语言,广泛用于各种应用程序和系统之间。为确保XML数据的完整…

vue3中常用组件封装及使用

vue3组件 文件上传属性与方法完整代码组件使用 文件上传 属性与方法 <!-- 属性1. multiple多选2. action上传文件服务器地址3. before-upload上传前校检格式和大小4. file-list上传的文件列表5. limit数量限制6. on-error上传失败触发7. on-exceed文件个数超出触发8. on-s…

(02)Unity使用在线AI大模型(调用Python)

目录 一、概要 二、改造Python代码 三、制作Unity场景 一、概要 查看本文需完成&#xff08;01&#xff09;Unity使用在线AI大模型&#xff08;使用百度千帆服务&#xff09;的阅读和实操&#xff0c;本文档接入指南的基础上使用Unity C#调用百度千帆大模型&#xff0c;需要…

十五、C++11常用新特性—Lambda表达式

1.基本 这个好像是很好用的&#xff0c;其有以下有点&#xff1a; 声明式的编程风格&#xff1a;直接匿名定义目标函数或函数对象&#xff0c;不需要额外写一个命名函数或函数对象。简洁&#xff1a;避免了代码膨胀和功能分散&#xff0c;让开发更加高效。在需要的时间和地点…

Sentieon应用教程 | 唯一分子标识符(UMI)

介绍 本文介绍了使用Sentieon工具处理下一代测序数据的方法&#xff0c;同时利用分子条码信息&#xff08;也称为唯一分子索引或UMI&#xff09;。分子条码可以在测序之前在模板DNA分子的末端引入唯一标签&#xff0c;从而大大减少PCR重复和测序错误对变异调用过程的影响。 S…

影视迷必备:揭秘高效影视app开发幕后

影视迷必备的高效影视APP开发幕后涉及多个关键环节&#xff0c;从需求分析、规划设计、技术开发到测试上线&#xff0c;再到后续的运营与维护&#xff0c;每一个环节都至关重要。 一、需求分析 在开发影视APP之前&#xff0c;首要任务是进行深入的需求分析。这一阶段的主要目标…

CSS选择器(1)

以内部样式表编写CSS选择器&#xff0c;其主要编写在<head></head>元素里&#xff0c;通过<style></style>标签来定义内部样式表。 基本语法为&#xff1a; 选择器{ 声明块 } 声明块&#xff1a;是由一对大括号括起来&#xff0c;声明块中是一个一个的…

python-矩阵加法(赛氪OJ)

[题目描述] 输入两个 n 行 m 列的矩阵 A 和 B &#xff0c;输出它们的和 AB。矩阵加法的规则是两个矩阵中对应位置的值进行加和&#xff0c;具体参照样例。输入&#xff1a; 输入共 2⋅n1 行&#xff0c;第一行包含两个整数 n 和 m&#xff0c;表示矩阵的行数和列数 (1≤n,m≤1…

艺术创作的新维度:yicaiai照片风格化

艺术创作的新维度&#xff1a;yicaiai照片风格化 一、用户友好的设计理念 1.1 yicaiai照片风格化的核心设计理念 yicaiai平台以其创新的AI技术&#xff0c;颠覆了传统照片处理的方式&#xff0c;将艺术与科技完美融合。其核心设计理念在于赋予普通照片无尽的艺术潜力&#xf…

Python面试题:如何在 Python 中实现一个简单的 Web 服务器?

自动化测试的框架和技术体系 引言 自动化测试是现代软件开发流程中不可或缺的一部分。通过自动化测试&#xff0c;可以显著提高测试效率、覆盖范围和测试的可靠性&#xff0c;减少人为错误。本文将详细介绍常见的自动化测试框架和技术体系&#xff0c;涵盖单元测试、集成测试…

这3种人适合学习人工智能,看看你在不在其中?

人工智能&#xff08;AI&#xff09;的浪潮正席卷全球&#xff0c;它不仅是科技领域的一场革命&#xff0c;更是社会进步的重要推手。随着AI技术的不断成熟和应用领域的不断拓展&#xff0c;越来越多的人开始关注并渴望掌握这一前沿技术。那么&#xff0c;究竟哪些人适合学习人…

华为od机试真题 — 测试用例执行计划(Python)

题目描述 某个产品当前迭代周期内有N个特性&#xff08;F1, F2, ..., FN&#xff09;需要进行覆盖测试&#xff0c;每个特性都被评估了对应的优先级&#xff0c;特性使用其ID作为下标进行标识。 设计了M个测试用例&#xff08;T1, T2,...,TM&#xff09;&#xff0c;每个用例…

Richtek立锜科技可用于智能门铃的电源管理解决方案

新型的智能门铃不仅能满足呼叫、提醒的需要&#xff0c;还能在线监控、远程操作、闯入通知、记录过程&#xff0c;系统构成相对复杂&#xff0c;与传统门铃相比有了很大的改变。 从电源管理的角度来观察&#xff0c;满足这样需求的系统构成也相对复杂&#xff1a; 处于外置状态…

一个糟糕的决策带来无尽的折磨

一个糟糕的决策带来无尽的折磨 你也时常有这种感觉么&#xff1f;怎么每次迭代都让人感觉很费劲&#xff0c;很疲惫&#xff0c;似乎每次都要对之前的代码进行修改才能满足本次迭代的需求。 整个项目像是一团乱麻一样理不清楚&#xff0c;项目工程给人一次性纸杯的感觉&#xf…

Linux环境下安装Nodejs

Linux环境下安装Nodejs 下载地址&#xff1a;https://nodejs.org/zh-cn/download/package-manager 一、使用压缩包自定义安装 上述链接下载好对应版本的软件包后&#xff0c;我存放到 /evn/nodejs 目录下&#xff08;根据自己实际情况设置&#xff09; 设置软链接 sudo ln…

雅思阅读 答题技巧和题型归纳总结 看着一篇就够了

下面给大家介绍一下雅思阅读中常见的十种题型&#xff0c;以及各个题型烤鸭们经常遇到的问题&#xff0c;最后介绍一下针对该题型的做题步骤与技巧&#xff0c;纯干货&#xff0c;认真阅读。 图:阅读理解选择题 第一种题型&#xff1a;选择题 选择题其实是在考你对于原文中提…

爬虫学习 | 02 认识爬虫spider

网络爬虫&#xff08;Web Crawler&#xff09;&#xff0c;也被称为网页蜘蛛&#xff08;Spider&#xff09;、网页机器人&#xff08;Robot&#xff09;或爬虫&#xff08;Crawler&#xff09;&#xff0c;是一种自动浏览互联网的程序。它的主要任务是按照一定的算法扫描和访问…