0%

一、设计目标

  • 真实性:
    • AI的整体行为更真实,包括对场景的认知、具体的操作等。
    • AI的行动更具有计划性、并能根据场况、对决情况、单局内曾发生过的结果制定策略。
  • 工具化: AI的性格和智能度能更简单的被观测、配置和编辑。
  • 热更新: AI的行为与数据分离,更好的支持热更和Lua编码,更好的支持编辑器控制。
阅读全文 »

一、概述

  • MRCV框架是针对游戏客户端业务功能开发,对显示层和数据层设计中的具体问题提出解决方案,并以简化外层工作、提升迭代速度为主目标的设计模式框架。
  • MRCV框架作用于代码、资源、设计和所有相关工作流。
  • MRCV依赖于设计的合理抽象。MRCV适用于任意复杂度的项目和功能。
阅读全文 »

核心玩法框架是基于“属性、行为、条件”三大设计元,融合帧同步的联机实时同步思路、状态同步的业务逻辑维护思路、ECS的属性管理和快照思路,以支持快速迭代、支持可视化编辑工具和弱编码工具为主要特点的联机实时对决框架。

阅读全文 »

方法/函数/库

. .
saturate Saturate is a function that clamps it’s input between 0 and 1.
normalize float normalize(float x)
vec2 normalize(vec2 x)
vec3 normalize(vec3 x)
vec4 normalize(vec4 x)
normalize() returns a vector with the same direction as its parameter, x, but with length 1.
dot 点乘。
float dot(float x, float y)
float dot(vec2 x, vec2 y)
float dot(vec3 x, vec3 y)
float dot(vec4 x, vec4 y)
dot() returns the dot product of two vectors, x and y. i.e., x[0]⋅y[0]+x[1]⋅y[1]+… If x and y are the same the square root of the dot product is equivalent to the length of the vector. The input parameters can be floating scalars or float vectors. In case of floating scalars the dot function is trivial and returns the product of x and y.
pow pow(x, y) x的y次幂
rcp rcp(x) = x的倒数(1/x) 借此来优化除法运算 shader低级优化
阅读全文 »

需求分析

弱网PVE

弱网PVE战斗,即客户端仅在战斗开始/结束时与服务器进行强通讯(服务器返回前等待),在战斗中靠自己进行数值计算、随机触发等等功能。在此基础上,仍需保证与传统强通讯战斗相同程度的防作弊验证、数字运算正确性;也需要支持断线重连等功能的实现。

PVP

PVP战斗必然不是弱网的;但其战斗逻辑本身与PVE是类似的,所以我们并不希望为PVP再另外实现一套战斗通讯甚至战斗逻辑。因此 弱网PVE战斗的设计需要能够支持强通讯的PVP战斗

阅读全文 »