声明:本教程版权归Lizcst Software Lab所有,欢迎转载,但是转载必须保留本段声明文字,并注明文章来源:http://blog.csdn.net/kflizcst

谢谢合作!

一、概述:

     [认识幻世]

幻世(OurDream)是一款轻量级的,基于DirectX与OpenGL的2D图形引擎(以下简称“幻世”或“幻世引擎”)。她采用了插件式多渲染器的设计,能够支持多种绘图API。目前幻世仅提供了DirectX渲染器,当然,在未来的发展中,幻世将会提供多种渲染核心供开发者使用。

[使用价值]

幻世引擎适合于需要高性能绘图的场合,比如游戏、绘图软件或者动画软件等。采用幻世引擎开发这些软件,设计者将不需要关注于绘图运算的低层部分,而只需要将精力放于软件的功能设计或创意上,可以大大的节省开发时间,集中开发注意力,从而使设计者更容易开发出优秀实用的应用软件产品,降低开发成本。

[主要特性]

幻世引擎的主要特性有:

1、高效的2D绘图;幻世引擎专为大量2D绘图场合而设计,能够充分的利用目标计算机的硬件能力,高速、高效的绘制大量的2D图形。我们实测的数据显示,幻世引擎在同屏幕绘制超过19200个多边形时,帧速率(FPS)仍然能够达到30帧左右(人眼对于流畅画面的忍耐极限),人眼感官依旧非常流畅!

2、系统资源占用小;依托于高效的绘图核心及数据缓存设计,幻世引擎在执行绘图任务时只占用较小的系统硬件资源,即使是满负荷的状态下,也不会影响操作系统本身流畅反应。基于人性化的设计,引擎的绘图操作会在绘图窗口不在视野或失去焦点时自动的暂停,避免后台运行时影响用户临时的前台操作需要。

3、对外接口设计简单易用;我们对引擎的调用接口的设计及使用方法力求保证最大灵活度,提供最大功能的同时,又尽力做到简单易用,降低开发者学习使用的难度。引擎对很多调用操作,既提供了灵活强大但是需要较多外部控制和外部处理的方式,也包含使用简单,引擎在内部帮助使用者尽可能处理使用细节的方式,开发者可以自由的选择!既简单又不失灵活强大!

4、提供众多方便开发者使用的扩展功能;引擎包含有基本的音频引擎(支持3D声效)、图形用户界面系统(GUI)、精灵系统、以及强大的粒子特效系统,在一个不到800KB的单引擎核心文件中,提供了众多强大好用的方便开发者二次开发的组件,使得设计者可以不必再选用其他的扩展组件即可使用现有的功能完成一个完整独立的作品,大大降低了开发的难度。内部提供的这些组件,保持了幻世引擎统一的调用风格——易学好用,简单强大!开发者可以不需要过多的学习即可轻松上手!

5、设计人性化,内部处理机制完善可靠。幻世引擎在设计时就以帮助开发者为设计目的之一,引擎内部会帮助开发者尽可能的减少编程或使用错误,例如资源使用、管理及卸载方面,引擎除了提供接口供开发者自主操作外,还提供了自动管理的功能,开发者可以将各种资源都交由引擎自主管理,这样便可以有效的避免开发者设计时发生的各种疏忽大意的错误(例如资源使用完毕后忘记卸载,编程时遗失丢失资源导致无法使用等等),极大地提高用户程序的健壮性及安全性!

[幻世的局限]

当然,就目前幻世的功能来说,她并不适合下述的场合使用:

需要网络的图形软件。由于幻世本身的设计仅考虑单机使用需求,并不包含任何网络设计部分,因此使用幻世开发网络应用(虽然也可以),将可能需要较多的外部设计工作(主要是网络设计部分),在一定程度上增加了开发难度和需时。

二、获得幻世:

[下载SDK]

幻世引擎的官方博客为:http://blog.csdn.net/kflizcst ,可以在该页面找到幻世SDK的下载地址。

[SDK介绍]

幻世SDK包含对主要开发语言的支持文件,目前提供支持的编程语言主包括:C++、Visual Basic、FreeBasic、Delphi、易语言等。其实就使用上来说,由于SDK中提供了标准调用转换的NOC模块,因此,可以说只要是支持标准Win32 DLL调用的编程语言,都被幻世SDK所支持!

同时SDK中,对FreeBasic提供了额外的支持文件(感谢 叶子的离开 提供),对易语言汉语编程甚至还提供了完全汉化的应用程序模板和易语言汉化模块,可以在易语言中使用中文调用幻世引擎开发图形程序!

 [本教程使用的示例语言]

本教程将使用C++作为示例的开发语言,原因在于:相比其他语言,幻世SDK对C++提供了最大的灵活性以及最强的功能支持,C++可以利用幻世引擎的全部功能及设计。其他语言由于需要NOC模块提供调用支持,因此限于NOC模块本身的设计强度,或多或少的都无法完全发挥引擎的威力。

本教程编写和发布过程中可能会顺带讲解下易语言下使用幻世引擎的内容,届时请各位关注。

[本教程使用的开发工具]

本教程将使用Visual Studio 2010作为开发工具,教程所有的截图指导也将以该工具的操作为主。

 [开发环境的建立]

下面将着重介绍本次教程的主要内容:建立幻世引擎的开发环境。

将下载好的SDK包解压就可以看到幻世SDK开发包的内容了:

主要包括适合不同语言使用的开发组件以及幻世引擎的使用许可协议,建议你使用前首先阅读这个协议。这里需要提醒各位的是:幻世引擎用于学习或非商业用途时,是完全免费的,只需要在开发的作品中显著的添加引擎的LOGO或者注明“本程序基于幻世(OurDream)2D图形引擎设计”就可以了,不需要任何费用。但是如果基于幻世的作品需要进行商业化,那么便需要向Lizcst Software Lab购买许可(小声的说一下,授权费用很低的:-))。

FreeBasic版本及多语言通用NOC版本的开发环境搭建,大家可以看看相应文件夹内的说明,由于这里我们开发语言选定为C++,所以接下来我们只关注于C++如何搭建开发环境。

在C++版本文件夹内,我们看到了另外3个文件夹:

bin文件夹内包含的是引擎的核心文件,在基于幻世的软件开发完成后需要附带上这个文件夹内的文件(放置于软件目录或任何可以访问到的位置下)才能使软件的绘图功能正常使用。

include文件夹内是幻世引擎的C语言头文件,开发幻世程序时需要用到的接口定义等都包含在这个文件夹内的文件里面,因此使用了幻世引擎功能的代码都需要引用里面的头文件。关于该目录内的文件的用途介绍,将在稍后教程开发过程中进行说明。

lib文件夹内是幻世引擎的库文件,该文件在开发幻世程序时需要在代码中包含。

通过上面的介绍,我们了解到,要在C++语言中使用幻世引擎,开发者需要做的就是:

1、在代码中引用幻世引擎的头文件(即include文件夹内的文件);

2、在代码中包含幻世引擎的库文件(即lib文件夹内的文件);

3、在完成开发,并且编译好的幻世程序中附带上幻世引擎的核心文件(即bin文件夹内的文件)。

这样,整个使用幻世引擎的环境变完成了。

[接下来......]

接下来便可以开始幻世程序的设计开发了,在下一集教程中,将开始介绍并指导读者开发自己的第一个幻世程序,敬请期待!

谢谢各位的观看!

Lizcst

2013年12月5日

幻世(OurDream)2D图形引擎使用教程1——认识幻世,构建幻世开发环境相关推荐

  1. 幻世(OurDream)2D图形引擎使用教程17——易语言编写幻世程序系列(1)

    声明:本教程版权归Lizcst Software Lab所有,欢迎转载,但是转载必须保留本段声明文字,并注明文章来源:http://blog.csdn.net/kflizcst 谢谢合作! [概述] ...

  2. GCC编译器简明教程(Linux下C语言开发环境的搭建)

    GCC编译器简明教程(Linux下C语言开发环境的搭建) 市面上常见的Linux都是发行版本,典型的Linux发行版包含了Linux内核.桌面环境(例如GNOME.KDE.Unity等)和各种常用的必 ...

  3. Xilinx MicroBlaze系列教程(适用于ISE和Vivado开发环境)

    本文是Xilinx MicroBlaze系列教程的第0篇文章. 这个系列文章是我个人最近两年使用Xilinx MicroBlaze软核的经验和笔记,以Xilinx ISE 14.7和Spartan-6 ...

  4. 【kratos入门实战教程】1-kratos项目搭建和开发环境配置

    1.系列目录 [kratos入门实战教程]0-商城项目介绍 [kratos入门实战教程]1-kratos项目搭建和开发环境配置 [kratos入门实战教程]2-实现注册登陆业务 2.概览 经过上一篇的 ...

  5. java jse_Java构建JSE开发环境教程

    Java构建JSE开发环境教程 引导语:你们知道如何运用Java构建JSE开发环境吗,以下是百分网小编分享给大家的Java构建JSE开发环境教程,欢迎参考学习! 构建JSE开发环境 学习 Java 开 ...

  6. PIC单片机入门教程(二)—— 安装集成开发环境(MPLAB X IDE)

    PIC单片机入门教程(二)-- 安装集成开发环境(MPLAB X IDE) 教程中使用的电脑运行Windows 10 专业版 64位系统 1.下载 MPLAB X IDE v4.05 历史版本:htt ...

  7. android 教程 最新版,Android最新版本开发环境搭建图文教程

    本文只是写了如何配置jdk,以及adt-bundle的配置.对于以前的adt-bundle的版本,会自带cpu/abi系统镜像,经过本文所描述的两个步骤后可以直接创建avd,但是从官网下载的最新的ad ...

  8. Win10+Python+Django+Nginx+MySQL开发教程及实例(1)——开发环境搭建

    Win10+Python+Django+Nginx+MySQL开发教程及实例 PaulTsao 本教程共有三篇内容: 第一篇:Win10+Python+Django+Nginx+MySQL 开发环境搭 ...

  9. Docker最全教程之使用Docker搭建Java开发环境(十八)

    前言 Java是一门面向对象的优秀编程语言,市场占有率极高,但是在容器化实践过程中,发现官方支持并不友好,同时与其他编程语言的基础镜像相比(具体见各语言镜像比较),确实是非常臃肿. 本篇仅作探索,希望 ...

最新文章

  1. IP分类以及特殊IP
  2. 清空oracle表数据 外键,oracle清空所有表数据
  3. JAVA报错是一层一层的吗_Java异常处理:给程序罩一层保险
  4. 反问疑问_句子练习大全(反问、疑问、设问、病句等练习)
  5. MySQL exists的用法介绍
  6. 基于 Kyma 的企业级云原生应用的扩展案例分享
  7. IAR常用快捷键及使用小技巧
  8. python在webservice接口测试中的应用
  9. Google 不要 Android 了?新系统 Fuchsia 或将支持 Java
  10. model存数据_数据库内核杂谈 存储
  11. 开放源代码不得不知的一些事情
  12. 机器学习导论(五)-神经元网络
  13. 支持扫描的单usb口打印服务器,USB设备服务器 轻松实现扫描仪网络共享
  14. 如何在电脑上实现企业微信多开?
  15. c语言编程求阶梯数,c语言编程阶梯教程十二
  16. CV控制输出的图片大小
  17. 使用MATLAB工具箱TOOLBOX_calib标定摄像头过程(双目标定)
  18. SpringBoot+logback优雅的配置日志!
  19. Windows 10 上使用 CMake GUI 编译 Krita 源代码并使用 MinGW 64 作为构建工具
  20. 开源 Java 中文分词器 Ansj 作者孙健专访

热门文章

  1. 项目经理和team leader
  2. FreeNas安装与使用
  3. 网球小组赛对阵表如何php,网球比赛规则 看完就明白
  4. 欧阳萍经典听口班第四季_第一节:餐厅里_学习笔记
  5. 书单丨邹欣的书架:从程序到创新
  6. 传递爱心 汇聚真情—宕昌县特殊教育学校公益行动
  7. 魔方和软件公司招人的故事[结尾挺逗得^^]摘自
  8. 支付宝小程序填坑系列 之 自定义组件无法显示
  9. 奇安信 渗透测试(攻防类)一面复盘
  10. 按需加载图片、html代码、js代码,前端页面性能优化