【Irrlicht鬼火引擎】 安装配置Irrlicht鬼火引擎
一、下载引擎
官方网站:http://irrlicht.sourceforge.net/
官方网站需要翻墙才能进入,如果不想翻墙,可以通过其他下载地址:
CSDN下载:http://download.csdn.net/detail/fxrz12/4932156
下载后解压,学习引擎的第一步就完成了。
二、使用引擎
想要使用Irrlicht引擎,我们需要在程序中引入头文件<irrlicht.h>,该头文件在Irrlicht引擎的\include目录下。为了让编译器能够找到头文件,我们需要在IDE中设置一下路径。
下面介绍一下visual studio 2010的配置方法。
(1)打开visual studio 2010,新建一个工程
(2)在菜单中选择Project->Properties,会弹出属性面板。Configuration Properties->VC++ Directories的目录下,分别有Include Directories和Library Directories,在这两个栏中添加路径信息。
include: 引擎安装目录\include\
library: 引擎安装目录\lib\Win32-visualstudio 注:在lib中选择符合你的系统类型的文件夹
配置完成后,点击确认,IDE的设置就完成了。
(3)一件必须要做的事
在引擎安装目录\bin\VisualStudio中,找到Irrlicht.dll文件,把它复制到你的工程文件目录下,否则运行的时候会报错的。
三、简单尝试
建立一个main.cpp文件,把下边的代码复制进去,尝试是否可以运行,你的第一个使用Irrlicht的程序就完成了!
#include <irrlicht.h> using namespace irr; using namespace core;
using namespace scene;
using namespace video;
using namespace io;
using namespace gui; #ifdef _IRR_WINDOWS_
#pragma comment(lib, "Irrlicht.lib")
#pragma comment(linker, "/subsystem:windows /ENTRY:mainCRTStartup")
#endif int main()
{
IrrlichtDevice *device =
createDevice( video::EDT_SOFTWARE, dimension2d<u32>(, ), ,
false, false, false, ); if (!device)
return ; device->setWindowCaption(L"Hello World! - Irrlicht Engine Demo"); IVideoDriver* driver = device->getVideoDriver();
ISceneManager* smgr = device->getSceneManager();
IGUIEnvironment* guienv = device->getGUIEnvironment(); guienv->addStaticText(L"Hello World! This is the Irrlicht Software renderer!",
rect<s32>(,,,), true); smgr->addCameraSceneNode(, vector3df(,,-), vector3df(,,)); while(device->run())
{ driver->beginScene(true, true, SColor(,,,)); smgr->drawAll();
guienv->drawAll(); driver->endScene();
} device->drop(); return ;
}

当然,如果你有模型的素材,使用如下的代码添加进入程序之中,运行效果会变得更好:
IAnimatedMesh* mesh = smgr->getMesh("./media/sydney.md2");
if (!mesh)
{
device->drop();
return ;
}
IAnimatedMeshSceneNode* node = smgr->addAnimatedMeshSceneNode( mesh );
if (node)
{
node->setMaterialFlag(EMF_LIGHTING, false);
node->setMD2Animation(scene::EMAT_STAND);
node->setMaterialTexture( , driver->getTexture("./media/sydney.bmp") );
}

四、常见问题
(1)fatal error C1083: Cannot open include file: 'irrlicht.h': No such file or directory
解决:没有设置好include directory, 看看自己的路径是不是设置错啦
(2)LINK : LNK6004: HelloWorld.exe not found or not built by the last incremental link; performing full link
LINK : fatal error LNK1104: cannot open file "Irrlicht.lib"
Error executing link.exe
解决:没有设置好library directory, 看看自己的lib路径是不是设置错了
(3)This application has failed to start because Irrlicht.dll was not found. Re-installing the application may fix this problem
解决:没有复制Irrlicht.dll文件到项目目录下,妥妥的。复制过去就好了。
【Irrlicht鬼火引擎】 安装配置Irrlicht鬼火引擎的更多相关文章
- 分布式大数据多维分析(OLAP)引擎Apache Kylin安装配置及使用示例【转】
Kylin 麒麟官网:http://kylin.apache.org/cn/download/ 关键字:olap.Kylin Apache Kylin是一个开源的分布式分析引擎,提供Hadoop之上的 ...
- Android 2D游戏引擎AndEngine配置环境
Android 2D游戏引擎AndEngine配置环境 1.2 配置环境 在任何编程中,都需要一些软件或者硬件的支持.否则,没有硬件软件是不可能存在的,而想要编写对应语言的的程序,这需要对应语言库和 ...
- sphinx中文版Coreseek中文检索引擎安装和使用方法(Linux)
sphinx中文版Coreseek中文检索引擎安装和使用方法(Linux) 众所周知,在MYSQL数据库中,如果你在百万级别数据库中使用 like 的话那你一定在那骂娘,coreseek是一个 ...
- Express安装入门与模版引擎ejs
Express安装入门与模版引擎ejs 目录 前言 Express简介和安装 运行第一个基于express框架的Web 模版引擎 ejs express项目结构 express项目分析 app.set ...
- python---django中models配置修改数据库引擎
Django支持多种数据库,sqlite,mysql,oracle等,其默认数据库是sqlite 在settings文件中可以发现: DATABASES = { 'default': { 'ENGIN ...
- Database基础(二):MySQL索引创建与删除、 MySQL存储引擎的配置
一.MySQL索引创建与删除 目标: 本案例要求熟悉MySQL索引的类型及操作方法,主要练习以下任务: 普通索引.唯一索引.主键索引的创建/删除 自增主键索引的创建/删除 建立员工表yg.工资表gz, ...
- mysql配置与存储引擎与字段类型与约束条件
目录 字符编码与配置文件 存储引擎 创建表的完整语法 字段类型 整型 浮点型 字符类型 数字的含义 枚举与集合 日期类型 约束条件 字符编码与配置文件 在MySQL5.X系列中,显示的字符编码有多种, ...
- Hive on Spark安装配置详解(都是坑啊)
个人主页:http://www.linbingdong.com 简书地址:http://www.jianshu.com/p/a7f75b868568 简介 本文主要记录如何安装配置Hive on Sp ...
- MySQL 系列(一) 生产标准线上环境安装配置案例及棘手问题解决
一.简介 MySQL是最流行的开放源码SQL数据库管理系统,它是由MySQL AB公司开发.发布并支持的.有以下特点: MySQL是一种数据库管理系统. MySQL是一种关联数据库管理系统. MySQ ...
随机推荐
- Sqoop 命令
1)list-databases List available databases on a server sqoop list-databases --connect jdbc:db2:// ...
- codeforces 630A Again Twenty Five!
A. Again Twenty Five! time limit per test 0.5 seconds memory limit per test 64 megabytes input stand ...
- Python if..else
200 ? "200px" : this.width)!important;} --> 一.介绍 1.完整形式 if <条件判断1>: <执行1> e ...
- MFC中常用的内容
在程序中更改静态文本内容. GetDlgItem(IDC_STATIC)->SetWindowText("欢迎"); 不用UpdateData(false); 如果提示con ...
- status pending状态
开发采用ssh,注解的方式,事物也application.xml配置了,但是在业务层没有使用@Transactional造成浏览器一直处于status pending状态,为什么没有使用@Transa ...
- c#与java webservice调用问题
问题描述一: c#调用java写的websrevice,对方接收到的参数与实际传的值不一致,返回的时候值也获取不到,为null. 该参数为普通的string类型,因此不存在类型转换的问题. 处理: 使 ...
- ssh 设置免password登录
如果: 实现->操作机A机 要以用户"user1"身份.免password登录B机和C机? B机和C机 建立用户 user1 而且能够ssh 登录. A机设置: 1.安装ss ...
- TinyXML:一个优秀的C++ XML解析器[转]
TinyXML:一个优秀的C++ XML解析器 读取和设置xml配置文件是最常用的操作,试用了几个C++的XML解析器,个人感觉TinyXML是使用起来最舒服的,因为它的API接口和Java的十分类似 ...
- w3cmark前端精彩博文周报 10.13-10.19
w3cmark推出每周精选前端博文推荐,通过阅读别人的代码,学习别人的经验,提升自己的水平.欢迎关注 @前端笔记网 微博.其实如果是关注我们微博的朋友都对下面的文章熟悉,因为我们会一旦发现有价值的.精 ...
- memset用法详解(转)
问题描述: int * cow = new int[n+1]; memset(cow,0,(n+1)*4); 将N+1个元素置成0,为什么不行 memset是对一个字节的int4个字节,因此*4 但是 ...