编程
Setting Up Development Environment
UnigineScript
High-Level Systems
C++
C#
UUSL (Unified UNIGINE Shader Language)
File Formats
Rebuilding the Engine and Tools
GUI
Double Precision Coordinates
应用程序接口
Containers
Common Functionality
Controls-Related Classes
Engine-Related Classes
Filesystem Functionality
GUI-Related Classes
Math Functionality
Node-Related Classes
Networking Functionality
Pathfinding-Related Classes
Physics-Related Classes
Plugins-Related Classes
Rendering-Related Classes

编程概述

本文讲述在Unigine中创建项目的方法。

本文的主要目的是使用户对搭建开发环境有一个很好的了解并对编程作出了概述。本文包含与其它文章的链接,这些文章可以在准备开发环境时提供帮助,也可以在选择开发语言等工作时提供帮助。

语言

要使用Unigine创建自己的项目,可使用下列编程语言:

通过Unigine API,可较为容易地对UnigineScript进行扩展。Unigine允许输出C++ 和 C# 代码,反之亦然。通过C++或 C#,可编写一些函数,然后将这些函数导出到UnigineScript。查看关于C++ APIC# API的使用方法文章以了解更多。

平台

Unigine支持下列平台:

  • Windows (XP / Vista / 7 / 8+)
  • Linux (kernel 2.6+)
  • OS X (10.9+) (若是想重新组装引擎,应使用OS X 10.11)

支持 32位和64位操作系统。引擎会充分并高效使用多芯片CPU架构。

有了Unigine,仅使用单一代码库便可为这些平台搭建应用程序。

欲了解 硬件要求请阅读全文。

开发环境

可使用下列任意PC平台来编写由Unigine驱动的项目:

  • Windows
  • Linux
  • OS X
警告
OS X 不支持对用C#编写的Unigine应用程序进行编译。

除Unigine SDK外,每种平台都需要特定的软件,有了这些软件才能开始编码。可在此处参阅每种平台的要求:

执行顺序

应用程序的逻辑通常放置在世界脚本中。世界脚本文件会随同新的世界对象被自动创建(其具有.cpp扩展)。在加载世界对象时,使用世界对象脚本的初始化函数(init())来创建目标对象并初始化所有必要的资源。如果世界对象被卸载并被用来删除资源时会调用关机函数(shutdown()),这些资源在脚本执行期间得以创建用来避免内存的泄露问题。对于逐帧进行的升级更新,世界脚本拥有三个函数:

  • update() - 用于渲染逻辑实现(与图形相关的一切)。.
  • flush() - 用于不应被渲染的物理,计算和逻辑。
  • render() - 当节点动作完成更新之后,对动作进行纠正。

阅读本文了解放置逻辑代码的位置。也可以阅读执行顺序一文了解Unigine引擎的具体工作流程。

用法示例

用法示例样本具有三部分内容:

对于所有支持的平台而言,编程代码都一样,不同之处在于编译。

对于这些样本,通过项目生成器来创建新项目。项目生成器使用世界光源和平面贴图来创建新的世界对象。

最新更新: 2017-07-03