编译CEGUI「建议收藏」

2022-09-15 10:50:51 浏览数 (1)

大家好,又见面了,我是你们的朋友全栈君。

平台:

  windows 7 /64bit /VS2005

CEGUI下载

  地址:  http://www.cegui.org.uk/wiki/index.php/CEGUI_Downloads_0.7.9

  源码选择:

CEGUI 0.7.9 Library Source Downloads

This package contains the source code supplied as a compressed zip archive. It is intended for Microsoft Windows users. Download Now!

    得到 CEGUI-0.7.9.zip

  依赖包选择:

CEGUI 0.7.9 Binary Dependency Downloads for MSVC

MSVC 2005 (SP1 ATL fix) precompiled dependency libraries used by CEGUI supplied as a compressed zip archive. This dependencies package is needed to build CEGUI 0.7.9              from source. Download Now!

    得到 CEGUI-DEPS-0.7.x-r2-vc8.zip

编译

  参照:  http://www.cegui.org.uk/wiki/index.php/Build_from_source_for_Win32

  分别解压 CEGUI-0.7.9.ZIP / CEGUI-DEPS-0.7.X-r2-vc8.zip

  依赖包解压后放入CEGUI目录中

  最后目录结构如:

代码语言:javascript复制
E:ceguiCEGUI-0.7.9
	bin
		//初始空.生产的Sample执行文件将放到这里
	cegui
		//cegui源码
	datafiles
	dependencies
		//dependencies是拷贝过来的依赖包
		bin
		include
		lib
		……各种License
	doc
	lib
		//初始空.CEGUI生成的LIB
	project
		Xcode
		premake
			config.lua
			//双击下面bat前配置下
			build_samples_vs2005.bat
			//双击生产CEGUISamples.sln
			build_vs2005.bat
			//双击生产CEGUI.sln
			
	Samples
		//sample源码
	acinclude.m4
	aclocal.m4
	bootstrap
	config.guess
	config.sub
	……其他文件

  我的电脑默认找不到DX9相关文件

  修改E:ceguiCEGUI-0.7.9projectspremakeconfig.lua

  将DIRECT3D9_RENDERER = true 修改为false,如下  

代码语言:javascript复制
-------------
-- Renderers
-- this controls which renderer modules are built
OPENGL_RENDERER = true
DIRECT3D9_RENDERER = false  
DIRECT3D10_RENDERER = false
DIRECT3D11_RENDERER = false
IRRLICHT_RENDERER = false
OGRE_RENDERER = false
NULL_RENDERER = false

  重新点击bat生成VS工程文件。

  编译CEGUI.sln

  编译CEGUISamples.sln

  编译CEGUISamples.sln的时候,所有的sample项目会报连接错误,找不到 “freeglut_static.lib”这个文件。

  但是项目的配置中设置的是 freeglut_d.lib,依赖包中也只有freeglut_d.lib。

  直接在依赖包中 E:ceguiCEGUI-0.7.9dependencieslibstatic 创建freeglut_d.lib的备份,重命名为 freeglut_static.lib。重新编译CEGUISamples.sln即成功。

  以上编译都是默认方案 : Debug / static

  E:ceguiCEGUI-0.7.9bin 目录下有生产的Samples执行文件

  Demo7的半透明和窗口移动效果不错 。

如果用代码跑sample的花,会找不到资源

代码在 e:ceguiCEGUI-0.7.9SamplescommonsrcCEGuiBaseApplication.cpp

代码语言:javascript复制
const char* CEGuiBaseApplication::getDataPathPrefix() const
{
    static char dataPathPrefix[PATH_MAX];
    char* envDataPath = 0;
    envDataPath = getenv(DATAPATH_VAR_NAME);
    if (envDataPath != 0)
        strcpy(dataPathPrefix, envDataPath);
    else
        strcpy(dataPathPrefix, CEGUI_SAMPLE_DATAPATH);
    return dataPathPrefix;
}
代码语言:javascript复制
#ifndef CEGUI_SAMPLE_DATAPATH
    #define CEGUI_SAMPLE_DATAPATH "../datafiles"
#endif

/***********************************************************************
    Static / Const data
*************************************************************************/
const char CEGuiBaseApplication::DATAPATH_VAR_NAME[] = "CEGUI_SAMPLE_DATAPATH";

两种方法:

  1.修改 CEGUI_SAMPLE_DATAPATH 的值到具体路径

  2.设置名称为 CEGUI_SAMPLE_DATAPATH 的系统环境变量,变量值是资源路径,比如这里的

      E:ceguiCEGUI-0.7.9datafiles

转载于:https://www.cnblogs.com/ezhong/archive/2013/03/31/2991668.html

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/163739.html原文链接:https://javaforall.cn

0 人点赞