欢迎来到Kivent文档

点击跳转到翻译原文地址

如果你刚刚开始,你可能会对教程感兴趣。点击跳转

KivEnt是用于构建在Kivy框架中高性能、动态的实时场景的框架。KivEnt虽然不像虚幻引擎或Unity3d那样强大,但是它能够创建能够处理数千到数万个实体的游戏,这取决于我们在这些实体上执行的处理类型。如果后台没有任何动态处理,您可以轻松地呈现几十万个静态精灵。同时,几乎整个API都是通过Python访问的,对于那些希望更接近实用的人来说,API具有更好的性能。即使不创建任何cython游戏系统,您也应该能够一次创建以几千个游戏对象为特征的游戏。

kivent_core模块的唯一依赖项是Kivy本身。其他模块可能有其他要求,例如kivent_cymunk模块基于Chipmunk2d及其cymunk wrapper。

使用实体-组件体系结构来控制游戏对象状态和处理游戏对象的逻辑。这意味着您的游戏对象将由严格保存数据的独立组件的集合组成;每个组件对应于一个GameSystem,它将对组件执行所有数据处理,在每个帧的更新循环中,以及作为用户交互或其他编程生成事件的结果。组件的所有内存都是静态分配的:如果您想了解更多关于内存管理的信息,请阅读这里。

KivEnt是使用模块化架构构建的,并且设计成同时具有python api和C语言级别cython api,允许对游戏数据进行更有效的访问,这使得它适合于用python快速地对进行原型验证。并且如果发现GameSystem对性能敏感,那么对它进行深度定制,把一些模块用Cython进行实现也是相对简单的。这个过程已经针对内置组件完成了,这意味着它们已经准备好让您在它们之上构建新的、高性能的游戏系统。

整个框架都是通过MIT的许可证提供给您的,这样您就可以自由地在它之上构建您想要的任何东西,并根据自己的喜好对其进行商业化。

  • GameWorld
  • Entity
  • Game Systems
    • Python GameSystems
    • Cython GameSystems
    • Aggregators
    • Position Systems
    • Rotate Systems
    • Scale Systems
    • Color Systems
    • Rendering Systems
    • Controlling the Viewing Area
  • Managers
    • System Management
    • Resource Manager
  • The Cymunk Module
    • Physics
    • Interaction
  • Particles
    • Emitters
    • Particles
    • Renders
  • Rendering
    • VBOS
    • Instructions
    • Models
    • Vertex Formats
    • Frame Objects
    • Batching
  • Memory Handlers
    • Buffer
    • MemoryBlock
    • MemoryPool
    • MemoryZone
    • BlockZone
    • ZonedBlock
    • BlockIndex
    • PoolIndex
    • ZoneIndex
    • IndexedMemoryZone
    • memrange
  • The Maps Module
    • Tiled Managers
    • Systems
    • Utils
    • Map Data

你可能感兴趣的:(欢迎来到Kivent文档)