zoukankan      html  css  js  c++  java
  • 精灵管理

    精灵可以有数据和动作状态机种需求,数据相关的逻辑,状态机相关逻辑。

    先把Entity和Actor弄明白,entity里有改变状态机和设置animator的相应动作,有移动控制器motor,可以认为是入口,需要对某个实体做的实体都要通过这个来实现。

    entity太大会是个问题,那么能不能把这些控制器分散开?由各种不同的服务提供,有服务就可以使用某个功能。

    这些功能是放到entity自身里面,还是放到一个公共服务里面?即使放到公共服务里,是不是entity也要被注册这些服务?

    怪物的仇恨列表,是存储在行为树里的。哦,可以这样,行为树里挂了一个Task,用于搜索AOI,即当前可攻击对象。

    通过MVC结构,把entity的view相关的抽到另外的结构里面,model是数据部分,controller是控制器。

    还是应该把关于显示的东西收集到一起,数据的是数据。

    View里一定就是表现层的内容,而controller是什么呢?行为树要访问数据,只能去黑板上拿,这就意味着,游戏内的一些数据要送给。不如先把事件总线给引入进来。这样的话,监听事件等

    那么controller是否要知道数据呢,比如,当前的血量什么的。

    从某个游戏的设计来看,Entity共有的内容包括,AI处理,战斗,移动,属性,状态管理,这些分别拆成了不同的partial class,这样是可以并行开发的,也就是说,某个人在维护property,其他人可以同时维护其他entity的内容。

    ECS更详细的介绍

    http://entity-systems.wikidot.com/

  • 相关阅读:
    实现两个整数变量的互换
    Js中replace替换所有*
    下载win10系统
    Linux网络基本网络配置方法介绍
    搭建Linux虚拟服务器
    解决SVN Cleanup错误: Failed to run the WC DB work queue associated with
    详细QRCode生成二维码和下载实现案例
    Win10中Vue.js的安装和项目搭建
    什么是Docker,它可干什么?
    Win10下搭建Git服务器
  • 原文地址:https://www.cnblogs.com/designyourdream/p/4551142.html
Copyright © 2011-2022 走看看