一、设计目标
- 真实性:
- AI的整体行为更真实,包括对场景的认知、具体的操作等。
- AI的行动更具有计划性、并能根据场况、对决情况、单局内曾发生过的结果制定策略。
- 工具化: AI的性格和智能度能更简单的被观测、配置和编辑。
- 热更新: AI的行为与数据分离,更好的支持热更和Lua编码,更好的支持编辑器控制。
核心玩法框架是基于“属性、行为、条件”三大设计元,融合帧同步的联机实时同步思路、状态同步的业务逻辑维护思路、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低级优化 |
本文对TMP的中文换行逻辑、字体材质复用、资源工具流进行优化。
本文对多语言TMP字体给出具体解决方案和工作流程。
本文记录光照贴图LightingMode背后的逻辑、以及光照和ShadowMask之间隐含的关系。