工作学习笔记
文章平均质量分 63
wtyqm
这个作者很懒,什么都没留下…
展开
-
工作学习笔记——CSAPP第三章
最近在读《深入理解计算机系统》(CSAPP)的第三章——程序的机器语言表示。之前这块内容也有所接触,对书中提到的一些细节问题倒更感兴趣一些。一、可变长数组 刚开始学习C语言时,都会被教到,声明数组时,数组的维数只能使用常量,也就是只能声明定长数组。如果数据个数不定的话,就要使用malloc动态分配。当时只是死记硬背,并没有想想这是什么道理。工作中了解到,函数中声明的数组一般存原创 2011-10-29 23:21:22 · 1754 阅读 · 0 评论 -
工作学习笔记——一些关于链接的有趣小问题
最近工作中经常碰到一些链接小问题。刚碰到时一般会稍有迷惑,思索一下感到原来如此。1.一个工程里引用的两个库,各自引用了一份基本相同的json解析库(源文件名称相同,代码相同,命名空间不同)。链接时vc总报告说找不到其中之一的定义。看了下链接报告,发现vc报了个警告,大意是重复定义,忽略其中之一。网上找了个解决方案,在项目设置里,将输出obj路径改为包含源文件的目录结构,遂解决。想来也是原创 2013-06-30 23:12:31 · 1646 阅读 · 0 评论 -
工作学习笔记——9月
这个月工作比较紧张,没有系统学习什么新知识。平时会碰到一些半生不熟的东西,因为赶时间,上网查查,问问人,也能将就着用着。但是心里总会有些不踏实,总想着能多明白一层也是好的。1.lua与c交互时的堆栈每个lua_state都只有一个堆栈。当lua调用一个c函数时,会保证这个函数可以使用LUA_MINSTACK个(默认是20)堆栈空间,不够的话会自动扩充堆栈。默认情况下,为了效率,lu原创 2012-09-25 17:58:21 · 1337 阅读 · 0 评论 -
工作学习笔记——10月
1.在windows下使用iphone配置实用程序查看log信息我们的项目目前只能在mac本上的模拟器和各种苹果真机设备上运行,这对于只有windows办公环境的策划,调试起脚本来很是不便。好在苹果官方有个windows版的iphone配置实用程序,连上设备后可以查看控制台输出。但这个程序里的控制台,只能检测输出到stderr的信息。虽然NSLog是输出到stderr的,但是我们的代码很多是写原创 2012-11-04 22:48:01 · 1025 阅读 · 0 评论 -
游戏动画技术的发展
2d游戏中的动画,最简单直接的实现方式就是一帧一帧的静态图片依序播放,也被称作精灵动画(sprite)。考虑到大量图片导致的内存消耗问题,发展出了一些2d动画精灵压缩方式。例如一个人物走动的动画,可以将身体、胳膊、腿单独切成一个个碎片图,然后在每一帧里,用同样的身体碎片图,配上不同的胳膊、腿,形成完整的一帧。动画只需要导出身体、胳膊、腿的碎片图即可。这样既节省了动画里大量的不变原创 2012-08-26 12:13:02 · 3211 阅读 · 0 评论 -
骨骼动画原理及简单实现
骨骼动画的含义,一句话,骨骼的朝向和位置,影响顶点的位置。骨骼动画的计算方法,一句话,顶点在骨骼空间里的坐标,不受骨骼本身变化影响。因此,我们只要先将顶点从模型空间变换到骨骼空间,在骨骼发生旋转位移后,再把骨骼空间的坐标变换回模型空间即可。这方面的详细介绍已经有很多了,这里推荐http://www.wazim.com/Collada_Tutorial_1.htm这个向导从骨原创 2012-08-28 22:53:30 · 21649 阅读 · 0 评论 -
工作学习笔记——6月
这个月在工作中碰到的比较有意思的问题有以下几个:1.ios代码签名机制 没有系统学习过ios的开发,碰到keychain、证书、profile等问题时十分头大。在网上查阅了些相关信息,发现这块的东西还涉及公私钥等概念。 按照我的理解,签名机制的作用,是保证客户机上的应用软件,确实是签名的作者写的,没有被恶意修改过。这里要用到非对称加密算法中的私钥加密、公钥解密的认证方式。可原创 2012-07-16 21:49:35 · 1406 阅读 · 0 评论 -
工作学习笔记——4月、5月
这些天给游戏加声音,发现openal真是个好东西,支持3d音效————给音源一个坐标,声音近大远小这种问题就自动解决了。另外我们队引擎对openal的使用有很大问题,游戏中的每个音效在游戏一开始就要被初始化到不同的音源上,这样很快就把openal的音源给耗光了。正确的做法似乎应是把音效载入缓存,游戏初始化时建立固定数目的音源,播放某个音效时把缓存载入某个空闲音源即可。 游戏资源越来越原创 2012-05-20 22:54:30 · 1063 阅读 · 0 评论 -
工作学习笔记——《Game Engine Architecture》
这本书有助于了解商业级3d引擎在底层(渲染、动画、物理、内存管理),上层(世界、对象模型、脚本集成),工具层(编辑器、数据驱动、debug支持)的一些常用设计模式、基本原理。作者的观点比较客观,大多是列举一些模式,同时指出它们的优缺点与适用范围。书中的实例也都是Unreal、Quake、Ogre这些业界知名引擎。对我来说一些很少接触的知识点(3d渲染、动画、物理),看了作者精彩的描述、分析,有一种原创 2012-05-29 23:06:32 · 1317 阅读 · 0 评论 -
ZLIB算法学习
我们的游戏资源数据、例如图片、声音、脚本等,都是使用gzip压缩的。之前做BREW的时候,大部分手机支持BREW的ZIP解压接口,有的不支持,只好在网上找了一份解压的代码。找的代码好像在解析压缩数据头部信息时,有点bug。另外在一些超低端机型上,解压过程中会死机,怀疑是解压需要的内存过大的原因。因为不熟悉gzip压缩的原理,当时胡乱改了改,有些问题也不了了之了。 现在转做智能平台,看原创 2012-02-26 14:49:02 · 10447 阅读 · 1 评论 -
Windows应用程序WinSXS部署问题小结
在开发机器上跑得好好的程序,一拷贝到别人的机器上,经常无法启动,提示:“由于应用程序配置不正确,应用程序未能启动。重新安装应用程序可能会纠正这个问题”出现这个问题的原因是应用程序使用了Windows的WinSXS机制。程序依赖的某些系统dll(c运行库、MFC),按照不同的系统架构(x86,amd64)发行方式(debug\release)、发布版本(50608\50727等),分原创 2012-02-17 21:43:17 · 2738 阅读 · 0 评论 -
工作学习笔记——comboBox抢占焦点问题,以及工作学习的想法
.Net快速开发很便利,但有时总会碰到一些不痛不痒的小问题,让人无从下手解决。比如这个断断续续折磨了我好几天的comboBox抢占焦点问题。 窗体上有一个comboBox,还有一些其他控件也需要接收键盘输入。在没有操作comboBox之前,一切都是正常的,键盘事件流到了我预设的窗体按键事件处理函数里。但是,只要操作了comboBox,似乎它以后就独占了输入焦点,无论是窗体还是其它控件,都无法原创 2011-12-14 00:32:32 · 1727 阅读 · 0 评论 -
工作学习笔记——Alljoyn技术、初试Android开发
七八个Android门外汉用了一个月时间,做了3个wifi联网的Android小游戏出来,体会了久违的加班的苦与乐。联网使用的是高通推的AllJoyn技术(一种点对点近场wifi、蓝牙通信方式)。优点我们看来有二:1.提供直接函数调用的通信方式(一端调用另一端上定义的一个函数),省的byte数组转来转去;2.提供成熟的session机制,功能和安全性都有保证。缺点是接口设计的不太有善,原创 2011-12-12 00:09:06 · 13930 阅读 · 4 评论 -
Android的ActivityNotFoundException异常
Android的ActivityNotFoundException异常原因列举,如何在工程管理上入手避免这种错误原创 2015-09-28 00:22:19 · 6393 阅读 · 0 评论