PTAM 中的内存泄露问题和修正
在编译和调试 PTAM 过程中发现一些可能引起内存泄露的问题,现将修改方法列出供参考。由于 PTAM 可能更多的只是一个实验代码,我也并没有仔细阅读过,因此问题可能远不止这些,如有发现问题或者修改不当之处,欢迎大家在后面留言讨论。
1、Keyframe 中的内存泄露修正:
1) 修改 Keyframe.h 文件,增加析构函数:
C++
~KeyFrame();
1
~KeyFrame();
2) 修改 Keyframe.cc 文件,增加析构函数:
C++
KeyFrame::~KeyFrame() {
if(pSBI != NULL)
...
iOS 版本 OSG v3.2.1 SDK 下载(OpenGLES2.0&1.1)
之前的文章介绍了如何在 iOS 上编译 OSG v3.2.1 版本引擎。然而对于很多用户来说,编译 iOS 版本 SDK 并不似一件容易的事,如果只是想要使用 OSG 的引擎,那么只需要下载我已经编译好的 SDK 即可。为了方便大家使用,我提供了 OpenGLES 2.0 和 OpenGLES 1.1 两个不同版本的 SDK 供大家下载。
1、编译环境:
1) OSX 10.10
2) Xcode...
Ubuntu 下监控并自动重启 Apache
很多时候网站服务器挂掉手工重启是件很麻烦的事情,使用以下方法可以做到自动重启,并且生成相应的日志记录。相关文章:Ubuntu 下监控并自动重启网卡
1 创建被监控的文件 OK.php
内容如下:
PHP
OK
1
OK为了尽可能简单,这里只用一个内容为 OK 的空 php 文件作为监控文件。
当然如果你想要监控其他状态不妨也写在这个 OK.php,例如监控 MySQL 连接是否在正常:
PHP
<?php
$servername = "localhost";
$username = "root";
$password = "*******";
// 创建连接
$conn = new mysqli($servername, $username, $password);
//...
osgConv:生成压缩格式并加载
上一篇博客介绍了如何使用 WriteImageHint 将模型绑定的素材转换到外部独立文件。其实这个 osgConv 还可以将转换的文件进行压缩,进一步减少大小。
1、转换部分:
使用参数:
Compressor=zlib
1
Compressor=zlib具体命令类似:
./osgconv young.fbx young.osgb -O Compressor=zlib
1
./osgconv young.fbx young.osgb -O Compressor=zlib2、展示部分:
在 iOS 加载的工程中需要注册 zlib 压缩类。编辑 osgPlugins.h ,添加下面一行:
// Pull in the zlib compressor
USE_COMPRESSOR_WRAPPER(ZLibCompressor)
12
// Pull...
osgConv:转换素材到外部并加载
使用 osgConv 的时候,很希望把素材转换到外部独立文件,并且分别加载。其实 osgConv 有这样的参数可以达到这样的效果:
使用参数:
WriteImageHint=WriteOut
1
WriteImageHint=WriteOut具体命令类似:
./osgconv young.fbx young.osgb -O WriteImageHint=WriteOut
1
./osgconv young.fbx young.osgb -O WriteImageHint=WriteOut生成的 young.osgb 动画就会把素材单独放到外边,类似于 young.fbm 这样一个单独的文件夹下面。
加载的时候,只要 young.osgb 文件与素材文件夹 young.fbm 放在同一个路径下,就可以正常加载素材没有问题。
参考文献:
[1] http://trac.openscenegraph.org/projects/osg//wiki/Support/KnowledgeBase/SerializationSupport
示例中的 fbx 文件如下:
http://yun.baidu.com/s/1pJI61YF...
iOS:设置 OSG 绘制背景为透明
在 OSG 3.2.1 中需要设置 OSG 绘制背景为透明的时候,需要做出如下设置:
1、设置 windata:
// Init the Windata Variable that holds the handle for the Window to display OSG in.
...
Mac 版本 OSG 引擎编译
0、编译环境
1) Xcode 6.1
2) OSX 10.10
1、准备工作
1) 安装 CMake 3.0.2
下载地址:
http://pan.baidu.com/s/1i3xekJF
2) FBX 格式扩展(根据需要酌情安装)
下载地址:
http://pan.baidu.com/s/1kT9RzdP
安装。
2、配置 CMake
1) 设置是否编译例子:
BUILD_OSG_EXAMPLES = ON
1
BUILD_OSG_EXAMPLES = ON2) 设置 OSG_WINDOWING_SYSTEM :
OSG_WINDOWING_SYSTEM = Cocoa
1
OSG_WINDOWING_SYSTEM = Cocoa3) 添加 fbx...
iOS 版本 OSG 引擎编译
0、工作环境:
1) Xcode 6.1
2) OSX 10.10
3) iOS SDK 8.1
1、准备工作:
1)下载 OSG 3.2.1 版本:
http://pan.baidu.com/s/1hqkUTdM
2)下载 CMake 3.0.2 版本:
http://yun.baidu.com/s/1dDpeH9Z
安装 CMake 命令行工具:
Tools Install For Command Line Use
3)下载 iOS 相关库文件:
http://yun.baidu.com/s/1dDIkY1F
放入目录 PlatformSpecifics/iOS/3rdParty 中。
2、修改...