最近下载了一个PowerVR的SDK,在高手的指点下玩了一把。

感觉PowerVR的Demo的效果还可以,只是没有以前看到的shuiwang的QT下的效果好,不能让人眼前一亮的感觉。不过也没关系,有3D 的Demo,总是可以玩一玩的。

记录以下信息,方便后来者使用:

(1) 下载PowerVR SDK。

网址比较难找:

http://www.imgtec.com/downloads.asp

http://www.imgtec.com/powervr/insider/sdkdownloads/index.asp

下载的时候,挑WIndows版本的下载就可以了。这里的Windows版本,实际上是使用的Win32的模拟器。工程都是Opengl ES的。

(2) VS2008工程--> VS2005。

SDK里边的工程,都是VS2008搭建的,需要转化为VS2005,才可以使用。

这里不要担心,因为,VS2008转化到VS2005,实在太Easy了~

修改方法:

1.  修改.sln文件:

Microsoft Visual Studio Solution File, Format Version 10.00   --> 改为 8.00
# Visual C++ Express 2008                                                           --> 改为 2005

2. 修改.vcproj 文件:

<VisualStudioProject
 ProjectType="Visual C++"
 Version="9.00"                                                                               --> 改为 8.00

(3) 运行模拟器,在PC端查看Opengl ES的效果。

在VS2008的工程修改完之后,使用Win32的PC端的SDK,就可以build出一个exe了。

在高手的指点下,我的第一个exe是:OGLES2IntroducingPFX.exe。

首先,将 libEGL.dll   libGLESv2.dll,2个dll,拷贝到 C :/windows/system32/

(源文件位于:D:\PowerVR Insider SDK\OGLES2_WINDOWS_X86EMULATION_2.10\Builds\OGLES2\WindowsX86\Lib)

然后,运行build出的exe就可以了。

如果这个时候看不到效果,有可能是你的显卡不支持。目前的主流显卡,都应该是支持的。NVDIA的显卡,基本都是支持的。

(4) SDK版本:WIN32(PC) -->> WINCE。

当然,这一步是很繁琐的,下边就娓娓道来吧~

换成WINCE的SDK,工程的很多东西,是要修改的,下边记录我工程碰到的一些问题,以备后来者参考:

1.  error PRJ0004 : Could not generate command line for the 'VCCLCompilerTool' tool.

攻略:Project Settings->C/C++->General->Debug Information Format = 4,       change it to      /Zi

2. fatal error C1083: Cannot open include file: 'crtdbg.h'

攻略:Configuration Properties -> C/C++ -> Preprocessor -> Preprocessor Definitions,加入变量:_UNDER_CE;UNDER_CE;

3. error C3861: 'bsearch': identifier not found

攻略:在PVRTPrint3D.cpp文件中,加入如下以下代码:

//function: bsearch.

void *bsearch(const void *key,
               const void *base,
               size_t num,
               size_t width,
               int ( __cdecl *compare ) ( const void *, const void *))
{
    void * pRet = NULL;
    size_t i = 0;
    for (i = 0; i < num; i++)
    {
        if (!compare((unsigned char*)key + width * i, (unsigned char*)base + width * i))
        {
            pRet = (unsigned char*)base + width * i;
            break;
        }
    }
    return pRet;
}

void *lfind(const void *key,
             const void *base,
             unsigned int *num,
             unsigned int width,
             int (__cdecl *compare)(const void *, const void *))
{
    return bsearch(key, base, *num, width, compare);
}

4. PVRTPrint3D.cpp(608) : error C2660: 'vswprintf' : function does not take 4 arguments

攻略:

vswprintf(s_Text,/* MAX_LETTERS+1,*/ pszFormat, args);
 或者使用,vswprintf_s(s_Text, MAX_LETTERS+1, pszFormat, args);

5. error C2731: 'WinMain' : function cannot be overloaded

攻略:Configuration Properties -> C/C++ -> Preprocessor -> Preprocessor Definitions,加入变量:_UNICODE;UNICODE;

6. fatal error LNK1181: cannot open input file 'OGLES2Tools.lib'

攻略:Configuration Properties -> Linker -> General -> Additional Library Directories,设置为:

..\..\..\..\..\Builds\OGLES2\WinCE\Lib; ..\..\..\..\..\Tools\OGLES2\Build\WindowsVC2008\Debug

(需要将WINCE平台的lib,先copy到\WINCE\lib下,然后再设置路径;

OGLES2Tools工程的output路径先设置为:$(ProjectDir)$(ConfigurationName)

7. fatal error LNK1112: module machine type 'X86' conflicts with target machine type 'THUMB'

攻略:Configuration Properties -> Linker -> System-> SubSystem,设置为:WindowsCE。

8. OGLES2Tools.lib(PVRTResourceFile.obj) : fatal error LNK1112: module machine type 'X86' conflicts with target machine type 'THUMB'

攻略:原因是WINCE的工程,链接了win32的lib。重复第6个step,设置为对应build生成的'OGLES2Tools.lib'即可。

(5) 下边,就是见证奇迹的时刻。

把编译生成的exe,放到支持Opengl ES的WINCE平台上,Run。(ESC可以退出)

转载请说明出处,谢谢~

PowerVR SDK记录相关推荐

  1. IOS接入百度地图SDK,百度定位SDK记录

    地图显示 Xcode新建一个项目,我取名叫BaiduMapIOSAgain,包名为com.unity.BaiduMapIOSAgain. 在百度SDK的控制台创建应用,过程略,跟着官方说明即可 首先先 ...

  2. android 记录路线轨迹_基于百度地图SDK记录运动轨迹

    标签 : 运动轨迹 百度地图SDK 最终实现的效果如下图所示### 注意1:模拟器上模拟要设置好Location(如果选择None就无法定位了),同时第一次打开应用会提示授权使用地理位置信息,点击允许 ...

  3. 【阿里云数据总线】Datahub使用Python SDK记录

    文章目录 1. 阿里云 python sdk的安装和使用 1.1 PIP安装: 1.2 使用AccessKey简单调用ECS 2. Datahub Python SDK的安装和使用 2.1 安装pyd ...

  4. cocos2dx android 接入爱贝支付平台sdk记录

    问题: 今天在接入爱贝支付平台的时候,出现一个错误: 01-28 18:00:05.614: E/AndroidRuntime(25801): FATAL EXCEPTION: GLThread 54 ...

  5. 表格存储的Java SDK性能优化经验

    原文发布于阿里云论坛,在圈子内重发. 问题背景 用户通过Java SDK来访问表格存储,在SDK内部也是有开销的,在高并发的场景下这些开销尤其突出.如果SDK的性能很差,用户为了达到更高的QPS,可能 ...

  6. Sentry 开发者贡献指南 - SDK 开发(性能监控)

    内容整理于官方开发文档 系列 Docker Compose 部署与故障排除详解 K8S + Helm 一键微服务部署 Sentry 开发者贡献指南 - 前端(ReactJS生态) Sentry 开发者 ...

  7. 数据采集上报之灯塔SDK详解

    作者:jackhuali  腾讯PCG工程师 |导语  灯塔SDK当前的日活终端设备数超过10亿,日事件上报量超过万亿条,灯塔SDK是什么,灯塔SDK做了哪些工作来支撑如此大业务需求的呢?灯塔SDK是 ...

  8. Android大作业—乐道步走(HappyRunning)一款计步器和跑步运动轨迹记录Android APP

    Android大作业--乐道步走(HappyRunning) (一款计步器和跑步运动轨迹记录Android APP) (作业要求体现四大组件Activity.Service.BroadCast Rec ...

  9. Cocos Play提升3倍转化率:手游微端革命

    Cocos Play:手机页游最佳解决方案 在刚刚结束的ChinaJoy大会上,触控科技cocos引擎旗下的重磅产品Cocos Play全面亮相. Cocos Play是手机页游最佳解决方案,提供高效 ...

  10. GPU 加速下的图像处理

    Instagram,Snapchat,Photoshop. 所有这些应用都是用来做图像处理的.图像处理可以简单到把一张照片转换为灰度图,也可以复杂到是分析一个视频,并在人群中找到某个特定的人.尽管这些 ...

最新文章

  1. 如何在 Xcode 中修改应用的名字
  2. 解决Debian安装后中文乱码
  3. 在有赞工作两年半的感受
  4. C++之const修饰得到是谁
  5. 博士申请 | 澳大利亚悉尼科技大学招收人工智能/软件工程方向全奖博士生
  6. 数据类型转换_强制转换
  7. Python控制鼠标和键盘-PyAutoGUI用法详解
  8. python生成pdf文档_使用Python生成pdf文件
  9. Web前端文档阅读笔记-vis.js在vue cli中的使用
  10. oc73--NSArray使用
  11. access 报表中序号自动_数据报表多种序号生成方式
  12. 机器学习-极大似然估计
  13. 证书到期了_您的PMP证书到期了吗?
  14. USACO stamps
  15. Android 开发神器系列(工具篇)之 Android 屏幕共享工具
  16. 火爆的文字游戏你玩了吗?「GitHub 热点速览 v.22.06」
  17. CF卡技术详解——笔记
  18. 如何帮助空降经理人成功?
  19. 2017“硅谷技划”日记之五:从组织者眼光看Google IO大会
  20. 带托管代码的infopath2007表单创建, 发布,应用(MOSS开发)

热门文章

  1. python tokenize_model_AttributeError:“module”对象没有属性“tokenize”
  2. gitter 卸载_最佳Gitter渠道:材料设计
  3. R语言数学表达式、特殊符号等
  4. MetaMask10.6.1点击切换本地网络LocalHost:8545没反应
  5. 浅谈Attention-based Model【原理篇】
  6. 冬暖夏凉究竟香不香?带恒温的TaoTronics暖风机开箱实测
  7. 教你怎么用Mono Cecil - 动态注入 (注意代码的注释)
  8. 迷时师度 悟了自度
  9. 服务器上文件不能重命名,服务器文件重命名
  10. Sql Server——Sql Server中进行查询操作时提示“对象名无效”