- 博客(9)
- 收藏
- 关注
原创 Android studio使用ndk native c调用OpenSLES播放声音
本文介绍一下内容:介绍OpenSLES API如何使用使用过程中遇到的问题解决Android studio的一些配置本文是在研究了NDK官方的例子后的总结,native-audio,官方demo中有一些问题,每个手机的支持程度有不太一样,总之这套API给我的感觉是不太稳定。将就着能用,对于纯native的项目来说,可以不用jni回调java代码是唯一的好处。因为IOS并不支持Ope
2017-03-20 20:54:09 4725 2
原创 Unity3D C# 状态机封装
简单明了,提供了一下几个功能。enum类型状态id,c# 枚举Enum和int转换(不使用强转)状态切换,获取当前状态,和前一个状态状态进入,退出,执行作为组件绑定在GameObject对象上,从此拥有了状态机为什么要使用enum类型的状态id ?enum的特性符合,状态标识的要求enum比string高效,也不损失可读性enum比int有明确的类型要求,增加类型安全性剔除了自定义enum类型和父...
2017-03-17 18:29:22 1054
原创 XCode编译libpng适配IOS
本文探讨和解决了以下内容:使用XCode编译libpng源码生成IOS模拟器和真机使用的a文件正确配置XCode工程,避免Undefined symbols for architecture x86_64和symbol(s) not found for architexture i386错误
2017-03-16 23:13:32 1941 1
原创 Unity3D Camera设置结合OpenGL详细解读
首先,总体概述。Unity里面的Camera是把渲染画面,最终呈现在屏幕上的最后一步操作。所有的渲染操作最终都要通过Camera在呈现。如果用OpenGL来实现,Camera做了一下几个事情。通过正交或是透视,剪裁平面,得到一个4x4的矩阵数据。这个矩阵就是,model-view-projection中的projection。所有物体的旋转R,平移T,缩放S,形成的矩阵数据
2017-03-15 00:02:24 2897
原创 Unity3D 动态创建的Mesh,导出为Obj模型文件,并生成Prefab文件
Unity运行时,动态创建的Mesh挂载到MeshFilter组件上,并不能保存到本地Prefab文件里。在运行的场景里,拖拽正确配置的MeshFilter对象到Unity资源管理器。生成的Prefab文件,里面的Mesh对象会missing。所以,我们需要在运行状态,导出Mesh到本地生成一个obj模型文件。原理,就是根据obj文件的属性,把运行时Mesh的顶点,索引,贴图数据转化为
2017-03-13 16:39:17 17634 13
原创 Android Studio使用cmake配置c++开发Admob
使用c++开发Admob可以构建跨平台的广告集成体验,不用为不同平台编写原生语言的广告集成代码,也更加方便纯native开发的软件进行广告植入。通过官方教程和demo的研究, 踩了若干坑之后,终于在native code构建的游戏里顺利集成了c++接口的Admob。文本将会详细介绍,集成过程和遇到的问题及解决方法。首先,查看官方教程。注意点,不要看中文的页面介绍,因为版本配置包括sdk
2017-03-10 23:08:52 3166
原创 Android studio ndk配置cmake开发native C
Android 2.2 以后的版本对NDK的支持已经非常好了。最近把一个纯C的android项目,从eclipse ADT迁移到Android studio上。本文是参考Add C and C++ Code to Your Project 官方文档(需要翻墙),经过各种尝试之后的总结。Android studio整合NDK开发,有两种模式,一种是ndk build,一种是cma
2017-03-10 22:38:24 4070 1
原创 Android studio 2.2 使用 cmake 编译 libpng
使用Android studio结合cmake来编译libpng,踩了若干坑才编译成功。首先,去libpng官网下载最新的源代码 http://www.libpng.org/pub/png/libpng.html ,源代码里面有自己的cmake文件,不要用这个整合到studio里面,因为这个文件内容太多太复杂报错很难定位。然后,我们使用studio创建一个新的带有c++ suppo
2017-03-10 22:21:25 3332 5
原创 NDK GLES2.0动态加载GLES3.0的原理
OpenGL ES3.0是兼容2.0的,这样从代码层面就可以,使用ES3.0的库写出兼容ES2.0的代码,通过判断在ES2.0上避免调用3.0的特性就可以了。但是Android studio的工程需要设定API platform的版本,ES3.0的版本apk无法安装在ES2.0的设备上。而在ES2.0的平台上,无法连接ES3.0的函数。所以,这里就需要动态加载ES3.0的函数,在ES2.0的平
2017-03-10 22:03:10 3913
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人