自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

老猫的专栏

勤能补拙

  • 博客(105)
  • 资源 (8)
  • 收藏
  • 关注

原创 Execution failed for task ‘:generateJsonModelDebug‘

一直不喜欢用android studio。臃肿,经常要联网下载东西,有时候不科学上网还不行。编译慢,而且你还不知道它在干啥,进度是多少了。出现错误时,也经常没有有价值的信息。比如出现这种错误时,折腾半天都没搞定:Execution failed for task ':xxx:generateJsonModelDebug'.> java.lang.NullPointerException (no error message)经过上网搜索,判断错误应该出现在externalNativ

2021-08-14 14:19:21 3640

原创 瑞芯微dongle固件升级(rk3128)

1.安装驱动运行DriverAssitant\DriverInstall.exe2.运行AndroidTool_Release_v2.72\AndroidTool.exe,并选择固件。其中LoaderToDDR选择.bin文件,firmware选择.img文件。3.按住板子上的升级固件的按钮,并连接USB到电脑,此时将会提示发现MASKROM设备,此时可松开按钮。4.点击执行,即可升级固件。...

2021-04-11 00:03:31 5644

原创 使用NEON指令加速浮点数转整数

使用NEON指令的好处就是一次可以转4个float到int,但是有个不好处理的事情就是四舍五入。使用vcvtq_s32_f32是可以转f32到s32,但它是截断的,不会做四舍五入处理。这时候有个小窍门就是对正的浮点数加上0.5f,对负的浮点数减去0.5f,再调用vcvtq_s32_f32就相当于是四舍五入了。float ftmp[] = {0.5f, -1.0f, 0.49999997f...

2019-08-25 23:26:10 3530 1

原创 caffe合并BatchNorm和Scale层

Caffe中BatchNorm层的计算可以表示为:y = (x-mean)/sqrt(var),Scale层的计算可以表示为:y = x*w + b,某些情况下为了减少参数及计算量,可以将BatchNorm和Scale层合并在一起:y = (x-mean) * w/sqrt(var) + b即 y = x * w/sqrt(var) + b - mean*w/sqrt(var)...

2019-08-25 22:54:42 1058

原创 十年IT生活

少年不知深与浅,一入IT已十年。当年志愿选的是自动化专业,只读了一两个星期。鬼使神差的参加了学校的电类联合班选拔考试,然后就入了电信学院,随后就与IT结缘了。高中时代高中的时候,那是01、02年吧,计算机刚刚兴起,学校教的还是Dos系统。班里很多同学已经会去网吧打游戏了,个别同学电脑已经很厉害了,但我对dos里面的“目录”,”路径“, cd、Enter这些总是难以理解,对机房里此起彼伏...

2019-08-03 00:45:24 183

原创 OpenGL实现图片边缘暗角效果(1)

在进行VR视频播放开发的时候,看到如下一段opengl代码,一开始不知道为什么这样做,会产生什么效果。首先是创建了一个纹理:void createVigTex() { static const int scale = 6; static const int width = 16 * scale; static const int height

2017-08-27 20:59:54 1917

原创 一点感想

又登录以前的博客看看,时间停留在2012年,过去5年了.搞技术的,平时学学技术知识,通过博客记录和分享一下心得,有点好处.不一定非要说多厉害的技术和理解,只要是自己的感悟,就是有用的.为什么突然又想起这个呢?最近在看一本关于移动开发的技术书,题目比较宽和大,甚至有360老总推荐,想必是个大牛吧.但是后来看看里面的内容,并不深奥,但是对实际开发来说又确实有用.其实这种书有个好处,就是容易

2017-02-24 00:24:19 270

转载 Eclipse build Android时不生成apk问题解决方法

Eclisps有时build后不生成apk。没有对Eclise做过设置调整,android工程代码也是没有问题的。反正就是莫名奇妙的遇到两次,解决方法如下:1、设置:Preferences -> Android -> Build中有一项“Skip packaging and dexing until export or launch....”,去除勾选状态2、删除debug.key

2012-05-19 12:48:31 612

原创 关于android的sdk版本和分辨率

有一篇文章较好地说明了该问题:http://community-china.developer.motorola.com/t5/MOTODEV-%E5%8D%9A%E5%AE%A2/%E6%82%A8%E7%9A%84-Android-%E5%BA%94%E7%94%A8%E5%85%B7%E6%9C%89%E5%85%BC%E5%AE%B9%E5%90%97/ba-p/1616如果您还不熟悉

2012-04-26 23:13:28 981

原创 gcc宏展开

要把源代码中的宏展开,其实只要使用gcc进行预处理即可。gcc -E source.c >out.txt-E表示只进行预处理,不进行编译。预处理时会把注释当成空格处理掉,如果想保留其中的注释,可以加上-C选项,即:gcc -E -C source.c >out.txt我遇到的问题是宏里面的注释并没有保留下来。如#define generate_some_code

2012-04-24 20:08:15 9405

原创 GLSurfaceView

Android中用OpenGL开发图形应用,一般是使用GLSurfaceVIew来呈现。自己需要做的工作主要有两个:(1)从GLSurfaceView派生一个自己的类,在其中处理键盘、触摸等事件;(2)实现Renderer接口,在GLSurfaceView通过setRenderer使它们关联起来。Render接口如下:public void onDrawFrame(GL10 g

2012-04-22 17:05:24 1034

转载 介绍GLSurfaceView

转自 http://www.linuxgraphics.cn/android/gallery3d_glsurfaceview.html 重点有以下几点:1.派生GLSurfaceView来实现事件交互等2.GLSurfaceView提供了QueueEvent这个简单的方法来实现跨线程事件交互(UI线程和渲染线程)3.对于反应式的应用,可以使用GLSurfaceView.

2012-03-18 00:39:31 713

原创 音乐舞蹈游戏-LGame

用LGame做了一个跳舞游戏,基本结构是移植一个j2me游戏的,不过很多东西还是需要完善。LGame适合于这种组件式的游戏,快速又方便。虽然移植它的时候,做了一个线程。如果用组件(Actor等)做,应该更快。感兴趣的童鞋可以试玩下哈 点击打开链接

2012-03-15 23:33:50 732

原创 LGame使用记

LGame (code.google.com/p/loon-simple)是一款国人开发的Java游戏引擎,有Android及PC(J2SE)两个开发版本,其实WindowsPhone C#版也很快就要出来了。说一下它的优缺点吧。优点是结构清晰,容易理解和上手,具有PC版和手机版,方便开发。特别是android版有兼容j2me的库,可以快速移植以前的j2me游戏。不足之处是LGame知名度不高

2012-03-04 22:35:06 842

原创 windows phone7 模拟器试用

下载了windows phone7 toolkit,安装包含了wp7开发所需的vs studio 2010 express, wp sdk, silverlignt sdk等,还是挺方便的。安装完后,打开windows phone emulator,启动很快(相对android来说)。进入wp7后,发现只有一个应用程序ie,怎么不像印象中的wp7呢,不是主屏幕有好几个tile的吗?点击右箭头,...

2012-02-26 22:54:48 706

原创 Android OpenGL ES

都说android上没有一款好的游戏引擎,原因都说是硬件差异太大,编写游戏引擎时(一般用opengl es)不是所有的api都能用。这是真的吗?最近在android上使用opengl es时,确实发现兼容性要比自己想像中的差。写的程序在模拟器中运行正常,在真机中运行却有很多问题,有的时候直接死机,有的时候画出来是一片白色。例如:(1) glView.getHolder().setFor

2012-01-07 00:40:01 482

原创 android笔记3(surfaceview)

SurfaceView使用Surfaceview的好处是可以自己控制屏幕刷新,还不像一般的View是通过界面消息来进行屏幕更新的。这在游戏中特别有用,因为游戏需要实时的更新画面,以反映游戏进程。使用Surfaceview时,一般会开启一个线程,在线程中进行游戏逻辑和屏幕更新;一般需要实现SurfaceHolder.Callback接口,在surface创建时创建和启动线程,在surfa

2012-01-07 00:36:47 497

原创 android快速遍历目录及查找文件

java中遍历目录,可以使用递归的方法: SearchFile(File[] files) { for (File file : files) { if (file.isDirectory())//若为目录则递归查找 { SearchFile(file.listFiles()); } else if (file.isFile

2012-01-06 23:16:53 7210 2

原创 Android异步处理

在Android 中,不能在主UI线程里处理耗时操作,否则会造成阻塞,时间过长时(超过5秒),甚至造成系统提示是否要kill该进程。(1)使用线程注意不能在非主UI线程中更新界面,有时需结合Handler使用.prgDialog = ProgressDialog.show(GbcJoy.this,"wait","data loading...", true);Thread th =

2012-01-04 21:38:10 825

原创 GbcJoy - android上的GBC模拟器

看图先: GbcJoy是一个简单易用的GBC/GB游戏模拟器,支持声音、进度载入和保存、虚拟键盘、屏幕切换等. 重温儿时梦想,享受休闲时光.请帮助点击广告,支持个人软件。版本需求:android 2.1及以上下载: http://yunfile.com/ls/gbcjoy/使用方法:1. 安装新版软件时请先卸载旧的版本;2. 打开程序后,从文件列表中选择

2012-01-01 00:52:02 812

转载 ARM的工作模式

为兼容数据总线宽度为16位的应用系统,ARM体系结构除了支持执行效率很高的32位ARM指令集以外,同时支持16位的Thumb指令集。Thumb指令集是ARM指令集的一个子集,是针对代码密度问题而提出的,它具有16位的代码宽度。与等价的32位代码相比较,Thumb指令集在保留32位代码优势的同时,大大的节省了系统的存储空间。Thumb不是一个完整的体系结构,不能指望处理器只执行Thumb指...

2012-01-01 00:51:42 503

原创 glTexSubImage

今天把一个使用OpenGL绘图的状态机搞定了。主要就是合并相同属性的图形,减少glDrawArrays的调用次数,以达到提高运行速度的目的。调试时,注意从简单到复杂。最简单的情形即是不合并图形,与原算法一致,如果这样都不正确,就先要查这个层次的问题。逐渐增加算法的复杂度,这样可以缩小每步中解决问题的难度。使用glTexSubImage可以只更新一部分纹理数据,减少调用glTexImage2D所

2012-01-01 00:51:12 1095

原创 android - SoundPool

在android中,可以使用SoundPool来实现游戏音效。使用SoundPool的优点是异步线程,占用资源少,可以同时合成多种音效,因而比较适合于在游戏中使用,比如打斗声,效果声,按钮声等。用SoundPool载入和播放多个音效时,建议使用相同参数的声音文件(如位速,声道,采样率等),并且最好使用OGG格式,否则某些型号的手机可能会出现杂音,重复播放等问题。int streamVolu

2012-01-01 00:50:52 576

原创 android opengl es

都说android上没有一款好的游戏引擎,原因都说是硬件差异太大,编写游戏引擎时(一般用opengl es)不是所有的api都能用。这是真的吗?最近在android上使用opengl es时,确实发现兼容性要比自己想像中的差。写的程序在模拟器中运行正常,在真机中运行却有很多问题,有的时候直接死机,有的时候画出来是一片白色。例如:(1) glView.getHolder().setFor

2012-01-01 00:50:31 468

原创 android笔记2(activity与view)

1.       activity常用方法activity可以看作是一个应用程序或者任务或者进程。由于手机资源的限制,很多手机操作系统虽然支持多任务机制,但往往只支持一个任务在前台操作。即用户只能看到一个程序在前台运行,并占据了整个屏幕,如果需要切换到其它任务,需要先把当前的任务隐藏(切换到后台)。Android也是这样。1.       onCreate在该函数中可以做一些初始化或者

2012-01-01 00:50:10 357

原创 android笔记1(activity与view)

1.       activity, view概述进行android开发,只需具有java语言基础即可。入门的开发并不需要一些高深的java知识,如Swing,网络,线程,数据库等。刚开始进行android开发,会觉得android的架构设计得很好,接口简单,模块独立。特别是像我这种C++程序员来说,没有了框架自动添加的很多消息映射宏,窗口的启动,过多复杂的类等。如android应用程序的

2012-01-01 00:49:56 500

转载 OpenGL ES 关键API小结(转)

OPenGL ES常用API: glClearColor( 0.f, 0.f, 0.f, 1.f );  //  设置模式窗口的背景颜色,颜色采用的是RGBA值glViewport( 0, 0, iScreenWidth, iScreenHeight );//设置视口的大小以及位置,视口:也就是图形最终显示到屏幕的区域,前两个参数是视口的位置,后两个参数是视口的宽和长。glMa

2012-01-01 00:49:34 792

转载 (转)为什么要用补码表示

用补码的主要原因:使用补码,可以将符号位和其它位统一处理;同时,减法也可按加法来处理。另外,两个用补码表示的数相加时,如果最高位(符号位)有进位,则进位被舍弃。n位计算机,设n=8, 所能表示的最大数是11111111,若再加1称为100000000(9位),但因只有8位,最高位1自然丢失。又回了00000000,所以8位二进制系统的模为2(8)。 在这样的系统中减法问题也可以化成加法问题,只需把

2012-01-01 00:49:05 478

原创 MIPS指令集(共31条)

网上有一份,但有错误,自己整理了一下。

2012-01-01 00:48:45 1805 2

原创 对Map按value进行排序

Map内部是按key进行排序的,而不是value。如果希望根据value对Map里面的元素对排序,可以通过把Map里面的元素拷贝到一个list中,然后定义自己的比较函数,并对该list进行排序。(1)首先,需要定义一个结构体,以用于封装Map中的元素对(key, value)。struct strTest{    char key[32]; //key示例    unsig

2012-01-01 00:48:26 550

原创 宏定义中的连接符##和#

1. C语言宏定义中的##用来连接符号可以用##来连接宏定义中的一个或多个变量。如#define file_open(filename_tag, filename, mode)                             \    FILE *filename_tag = fopen(filename, stdio_file_open_##mode)file_o

2012-01-01 00:47:53 406

原创 silverlight没落?

技术界一个爆炸性的新闻就是微软可能改变silverlight的战略方向,而主攻html5。微软技术的战略方向不明确一直为外界所诟病,也许只有桌面windows和office延续得比较好。开发语言方面曾经有的和现在继续有的包括VB,VB.NET,VBScript,foxpro,VC,C#,J#;数据库技术方面有ODBC,DAO,ADO,OLEDB,ADO.NET;用户界面技术方面有win32,MFC

2012-01-01 00:47:28 668

原创 how to build Mesa

(1)    资源准备:下载MesaDemos-7.8.2.tar.bz2,MesaGLUT-7.8.2.tar.bz2,MesaLib-7.8.2.tar.bz2,并解压在同一目录;(2)    编译mesa及OpenGL基本库:在Mesa-7.8.2\windows\VC8\mesa下,打开mesa.sln解决方案,直接build就可以了;在Mesa-7.8.2\windows\VC8\m

2012-01-01 00:47:10 714

原创 用mesa模拟OpenGL 2.0

mesa是一个用软件实现OpenGL接口的开源图形库。即使你的显卡不支持OpenGL 2.0,也可以在它的帮助下,调试和运行需要OGL 2.0支持的程序。详细介绍和最新下载:http://www.mesa3d.org/由于需要调试使用了OpenGL ES2.0接口的程序,但自己的电脑显卡却是很旧的集显,不支持OpenGL 2.0,因此程序运行不起来。无奈之下只好想找一个可以软件模拟OpenGL

2012-01-01 00:45:27 1133

原创 使用vs2005 express

就只是在windows平台上,也可能存在多个版本的项目,如vc6.0的,vs2005的,vs2008的。由于各种各样的原因,这些项目不能统一成一个版本的,这样麻烦的事情就多了。比如说某个项目用的是vc8的静态库,你就必须用vc8来继续开发了,用vc9虽然可以编译通过,但可能运行不起来,可能提示“由于应用程序配置不正确,未能启动该应用程序”。装了vs2008以后,不想再装一个vs2005。于是想装一

2012-01-01 00:45:04 680

原创 图像缩小算法

图像缩放的算法倒是挺多的,常见的有最近邻插值法、双线性插值法、三次卷积法等。其中双线性插值算法应该是应用比较广泛的一种方法,在缩放质量和速度上都比较折衷。在xnview里面选择双线性方法对一幅图像进行0.5倍的缩小,发现效果还可以。看了一下算法原理,实现起来也不算困难。可是用自己实现的方法对图像进行0.5倍的缩小时,却发现效果远没有xnview的效果好。商业软件就是做得好啊,难到它所用的双线性方法

2012-01-01 00:44:46 4956 2

原创 ppm图像格式

ppm是一种简单的图像格式,仅包含格式、图像宽高、bit数等信息和图像数据。 图像数据的保存格式可以用ASCII码,也可用二进制,下面只说说一种ppm格式中比较简单的一种:24位彩色、二进制保存的图像。文件头+rgb数据:P6\nwidth height\n255\nrgbrgb...其中P6表示ppm的这种格式;\n表示换行符;width和height表示图像的宽高,

2012-01-01 00:44:28 1500

原创 用windows api写对话框

1. 通用对话框(打开文件)int OpenFileDlg(char* szFile , HWND hwnd){OPENFILENAME   ofn;               //   通用对话框结构//   初始化结构体 ZeroMemory(&ofn,   sizeof(ofn)); ofn.lStructSize   =   sizeof(ofn); ofn.

2012-01-01 00:44:01 1356

原创 C#顺序读取文件流

有时需要在一个文件流中顺序的读取一段一段的数据,例如一帧一帧地读取图像,是非常有用的。打开文件:fStream = new System.IO.FileStream(fileName, FileMode.Open);fileLen = fStream.Length;//文件的长度curPos = 0;//记录文件指针当前的位置frameSize = imWidth*imHeig

2012-01-01 00:43:10 1065

转载 write back和write through

为了保证cache和memory的数据一致性,通常有三种方法:1〉write through:CPU向cache写入数据时,同时向memory也写一份,使cache和memory的数据保持一致。优点是简单,缺点是每次都要访问memory,速度比较慢。2〉post write:CPU更新cache数据时,把更新的数据写入到一个更新缓冲器,在合适的时候才对memory进行更新。这样可以

2012-01-01 00:42:51 1244

Notepad++代码编辑工具

Notepad++代码编辑工具

2021-05-22

Urho3D游戏引擎源码(1.7.1)

Urho3D游戏引擎源码(1.7.1)

2021-05-22

usb串口驱动(支持win10)

usb串口驱动(支持win10)

2021-05-22

netron模型可视化工具(4.6.3)

Netron 是神经网络、深度学习与机器学习模型的可视化工具, 支持Caffe, tensorflow, onnx, mxnet。github上下载很慢

2020-12-03

EasyMovieTexture视频插件v3.57

unity3d上的easymovietexture,最流行的视频播放插件。

2018-01-05

grafika示例源码

来自google的示例源码,演示了android如何高效的使用opengl,视频编解码,录制,播放,camera等,具有很大的参考价值。

2018-01-05

windows进程监视器

Microsoft Process Monitor(进程监视器),进程监视器这是一个高级的Windows监视工具不但可以监视进程/线程还可以关注到文件系统注册表的变化

2013-02-24

MFC运行库(vc6.0)

vc6.0程序的运行库(mfc),有时可能需要哦,特别是win7

2012-04-03

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除