Irrlicht引擎I 配置
游戏是一个比较大的系统,包含了图形引擎、网络、AI、声音、UI等模块,模块的开发可能会分别进行或者采用开源项目,Irrlicht引擎基本包含了这些模块,不过在使用中也会陆续加入其它的模块。以前开发的程序中基本是一个sln模块搞定,但是对于游戏可能每次编译的时间比较长,类似于我们的游戏中,顶层逻辑为exe输出,引擎、media,lua、gui等都属于DLL工程,所以每次能够看到所有的源代码,代价是修改完代码之后编译的时间很长。OK,对于只是应用而言,直接拿来DLL,lib,.H基本也够用,但是对于学习而言我可以忍受慢一点的编译,这样可以看到整个源码文件。
1 安装
(1)下载IrrLicht 1.7.3版本,这个版本资料比较多,而且相关的插件很多也支持到这个版本如irrMap,下载地址:http://irrlicht.sourceforge.net/downloads/
(2)采用的是Directx 9.0C版本的图形处理库,安装请自百度
(3) 下载源码为Irrlicht的引擎核心部分,编译后可以得到DLL,LIB文件,编译的时候根据IrrCompileConbfig文件中的宏定义进行编译,如果出现DXD8库函数出现错误,可以在这个文件中屏蔽DXD8的define选项.
(4)打开exmple文件夹中的例子工程,打开后设置DLL,LIB,头文件等,如果VS的版本不对可能会出现MSB8012的错误,那是因为工程设置中输出路径,输出文件名的和链接配置中的设置不符,修改对应的配置就可,这样丑陋的美女就出来了。
2 把工程例子和引擎源码配置在一起
VS可以通过引用的方式将多个工程放在一起,并且每个工程的功能可能不太相似,可能是一个exe输出,剩下全部是DLL输出,这里写一下我自己的一点收获:
(1)相对路径,绝对路径
.\当前路径
..\上一层路径
\xxx\ 下一层路径
(2)添加引用
打开例子中的helloword工程,然后添加“现用项”,将irrlicht引擎的工程添加进来, OK,可以看到irrlicht清楚的结构。
(2)VS中全部路径的设置
即所以的VS工程都缺省采用这个类库,比如做游戏开发的DX函数库,做图像的opencv函数库等等,VS2010中可以通过属性管理器来进行设置,打开工程属性管理器,点开Microsoft.Cpp.Win32.user.prop分页,设置里面的VC目录,设置完之后保存即可,以后建立的工程都会默认采用设置的库。

(3)设置IrrLicht引擎的文件输出目录到helloworl的debug文件下
在存在多个DLL工程的情况下,一种比较好的做法是General的OutputFile就是DLL输出地方:DLL工程的工程配置中输出路径为$(SolutionDir)$(Configuration),这样一个工程都是许多DLL+一个EXE来形成的EXE的SLN把其他DLL的VCPROJ文件引入后,其他工程的OutputFile自动输出到主EXE的DEBUG和Release下面。
(4)理解VS中一些环境变量的意义:参考网页:VS2008 Property Pages设置
(5)工程配置管理器,新建的工程默认可以选择debug或者release进行编译运行,存在多个工程的时候,可能不同编译模式下的选择不同,通过工程配置管理器可以对不同编译模式进行配置。
OK ! 可以看源码了
Irrlicht引擎I 配置的更多相关文章
- 在QT中使用Irrlicht引擎的方法与步骤
Ø 相关库,插件安装部分 本篇文档介绍在Qt5.2.0下面使用lrrlicht引擎在Qt窗口中输出(开发环境:vs2012) 1. 首先安装好Qt5.2.0,下载地址: http://downlo ...
- Android 2D游戏引擎AndEngine配置环境
Android 2D游戏引擎AndEngine配置环境 1.2 配置环境 在任何编程中,都需要一些软件或者硬件的支持.否则,没有硬件软件是不可能存在的,而想要编写对应语言的的程序,这需要对应语言库和 ...
- Irrlicht引擎剖析一
代码风格: 1.接口以I开头,实现以C开头,保存数据的结构体以S开头 2.函数名以小写字母开头,变量以大字母开头 3.接口的公共函数,其参数大部分给了默认值 4.采用名字空间 名字空间i ...
- Database基础(二):MySQL索引创建与删除、 MySQL存储引擎的配置
一.MySQL索引创建与删除 目标: 本案例要求熟悉MySQL索引的类型及操作方法,主要练习以下任务: 普通索引.唯一索引.主键索引的创建/删除 自增主键索引的创建/删除 建立员工表yg.工资表gz, ...
- springboot系列四、配置模板引擎、配置热部署
一.配置模板引擎 在之前所见到的信息显示发现都是以 Rest 风格进行显示,但是很明显在实际的开发之中,所有数据的显示最终都应该交由页面完成,但是这个页面并不是*.jsp 页面,而是普通的*.html ...
- python下的Box2d物理引擎的配置
/******************************* I come back! 由于已经大四了,正在找工作 导致了至今以来第二长的时间内没有更新博客.向大家表示道歉 *********** ...
- 2 ~ express ~ 模板引擎的配置与使用
一,创建应用 (一),创建应用,监听端口 var express = require('express') // 创建app应用 var app = express() app.listen(3000 ...
- KBEngine游戏服务器(一)——引擎环境配置
系统:Win10 版本:Visual Studio 2013(也就是vs120) kbengine:v1.0.0 MySQL:5.7 MySQL Workbench :6.3 一.下载kbengine ...
- thinkPhP 引入Smarty模板引擎及配置
做配置: TMPL_ENGINE_TYPE = “Smarty” 给smarty做配置: TMPL_ENGINE_CONFIG = array( 左标记, 右标记, )
随机推荐
- mybatis 如何查找表里的某一个字段,然后返回它们的结果集list ?
<select id="findArgByParams" resultType="string" parameterType="map" ...
- snmp监控磁盘
http://www.it165.net/os/html/201209/3438.html https://sourceforge.net/p/net-snmp/mailman/message/168 ...
- 计算字符串相似度算法——Levenshtein
转自:http://wdhdmx.iteye.com/blog/1343856 0.这个算法实现起来很简单 1.百度百科介绍: Levenshtein 距离,又称编辑距离,指的是两个字符串之间,由一个 ...
- APP性能分析1
我们使用云测试平台对产品进行了性能测试,情况如下: 详见这里.
- JVM的生命周期
package test; public class JVMTestLife { public static void main(String[] args) { new Thread(new Run ...
- AngularJS学习笔记二:AngularJS指令
AngularJS 指令: AngularJS 通过被称为 指令 的新属性来扩展 HTML. AngularJS 指令是扩展的 HTML 属性,带有前缀 ng-. 几个常用 指令: ng-app 指令 ...
- HDU 1429 (BFS+记忆化状压搜索)
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=1429 题目大意:最短时间内出迷宫,可以走回头路,迷宫内有不同的门,对应不同的钥匙. 解题思路: 要是 ...
- 转:10条建议让你创建更好的jQuery插件
在开发过很多 jQuery 插件以后,我慢慢的摸索出了一套开发jQuery插件比较标准的结构和模式.这样我就可以 copy & paste 大部分的代码结构,只要专注最主要的逻辑代码就行了.使 ...
- Mysql_mysql 性能分析及explain用法
1 使用explain语句去查看分析结果,如 explain select * from test1 where id=1;会出现:id selecttype table type possi ...
- C#引用COM对象,报错:《类型 *** 未定义构造函数, 无法嵌入互操作类型 *** 。请改用适用的接口》的解决办法。
错误信息: 1.类型“SQLDMO.BackupClass”未定义构造函数 2.无法嵌入互操作类型“SQLDMO.BackupClass”.请改用适用的接口. 代码如下: ...