闲谈 下的文章

2012随笔

我真是有幸,来杭州第一次遇到下雨超过一个月,据说周日晴天,然后继续下雨,已经突破60年最长降雨记录。套用微博的一句话:知道为什么江南人多愁善感么,因为一直下雨。。。一直下雨。。。一直下雨。。。 过年回来的2月份基本没上几天班儿,回来两天去参加同学婚礼,见到了毕业后就没再见面的好哥们旺财、龙龙九他们,这么长时间了,见面以后倍感亲切,谈笑间似乎又回到了大学时代。晚上通宵DOTA,网吧已然变成了那会的大学宿舍,好久没那么痛快地开黑了。 回来后从百游辞了职,然后去了巨人,本以为混个名头再出来好找工作,可是那周...
小明 2012-03-8 7,235 views

WebGL之小明家

WebGL这东西自诞生应该也有段时间了,可是一直没见到有什么起色,虽然作为阉割版的OpenGL ES标准也出了2代了吧,没见到具体应用。最近闲来无聊,于是花了三天弄了个Demo放到首页上了。 话说对于OpenGL这东西,素来与我无缘。游戏出身的程序员,我独爱DX,尤其不堪回首大学一幕,做的一款科技创新项目被评审老师用一句话骂了无数遍“看你做的东西,怎么不用OpenGL,显示效果肯定比现在强,DX是什么东西,那玩意只能用来做游戏”。不过会骑自行车就会骑摩托车吧,gl跟dx没什么区别,就像剑冢里玄铁剑与树枝其实作为武器没什么区别。不扯了...
小明 2011-12-30 12,410 views

selenium如何处理contenteditable=true

一般对于输入框输入文本,我们都会采用type方法,比如: selenium.type(“//div[@id=’CLYJ’]”, “werwerwqerqwer”); 但这个礼拜执行脚本的时候一直在这段不成功,之前一直把怀疑的焦点定位在弹出新窗口问题上,以为是新窗口没加载成功里面的内容,看网上答案也是很多说selenium对弹出框的支持不好,搜了很多资料,没有任何头绪,万般无奈,仔细的看了看这个文本框的实现方式,发现它并没有用最普遍的input写,而是<div id=”CLYJ” contenteditable=”true”></div>...
小卷 2011-12-14 3,367 views

oracle对dblink和同义词的优先读取权

今天排查一个plsql死机的问题时,意外发现: 一般情况下,我们想要跨实例访问表的时候,如果两个数据库实例在同一台服务器上,采用的方式是直接建立同义词;而如果两个实例在不同服务器下,则一般采取dblink方式,在dblink的基础上再建立相应的同义词; 但是否有考虑过,如果当两个实例在同一台服务器上,而你又把这两种方式都建立的时候,oracle默认会先取什么? 今天因为一个bug,仔细研究了一下它的默认优先权,发现原来oracle默认是先去取dblink下的同义词,而且oracle的处理方式很奇怪,当你在plsql中将鼠标光标放置在该同义词上...
小卷 2011-12-1 2,667 views

SSAO,屏幕空间环境光遮挡概述和细节讨论

SSAO,屏幕空间环境光遮挡概述和细节讨论 屏幕空间环境遮挡(SSAO)是Crytek最早采用的一种间接光照技术,这种技术使被遮蔽的部分看起来更暗一些。遮蔽可以看成这样一种现象,比如连接门的折页相当于两个平面,当这两个平面呈180度打开时,光照到他们上面相当于一个平面,这是光在每个点上的反射都基本相同,当他们呈90度时,靠近折缝处的点有部分被另外一面遮住了光线的反射路径,当极端情况,两面相对合十的时候,光线没办反反射出去,变成全黑。 为了模拟这种光学现象,同时达到足够的效率,Crytek的做法是通过一个采样球在屏幕空间...
小明 2011-11-15 3,773 views

今天,你被编译器耍了么?

你以为你很会耍小聪明,你以为你的代码能优化性能,事实真的如此么?答:You’re Fucked! 请看如下HLSL代码: for(int x=-1; x<=1; x+=2)   for(int y=-1; y<=1; y+=2)   for(int z=-1; z<=1; z+=2)   {       float3 vOffset = normalize(float3(x, y, z))*offsetScale;       .       .       .   }     看到这里,你有没有想过可能的优化呢,一个if语句2个GPU时钟,很多人都不挺地告诫你,慎用分支语句。于是,你写下了下面的代码: #define NUM_OFFSET_VECTORS 27       const float3 OFFSET_VECTOR[NUM_OFFSET_VECTORS...
小明 2011-11-14 3,318 views

大陆演员果然拍不出武侠片

最近在看新流星蝴蝶剑,本以为国内拍不出什么好片子,不过几个主演的演技都挺不错的,尤其喜欢孙玉伯、律香川、韩棠、高老大,这部片子有不少台湾演员,要是这部戏全让国内的演员拍估计要歇菜了。孙玉伯这个人时孙府的核心,是个很有头脑的领导,需要找个沉稳有气场的人来演。而片中饰演他的这位正好是个四方脸,眉目有神,正是领导者具备的面相。律香川作为老伯的手下,首先应有的姿态应该是尊敬和服从,这从他从未敢正视老伯的眼神中已经完全体现了出来。韩堂是个冷面杀手,藐视对方的眼神很到位,也很冷血。这些细节很好地体现了演...
小明 2011-11-6 2,220 views

GPU上大规模粒子系统的Dx9实现细节总结

GPU上大规模粒子系统的Dx9实现细节总结 GPU上的粒子系统在DX10上的实现已经不是什么新鲜事了。考虑到公司使用的现有渲染器,我决定在dx9上实现之。 首先看到的是fannyfish在csdn上的博文,它把Shader X3上的Massively Parallel Particle Systems on the GPU论文大致做了翻译,但fannyfish同学的代码并未体现论文的算法思路,具体算法详见原版论文,基本思路在这里不再赘述。这篇论文的思路还是比较容易理解的,但随着开发的进行,遇到的问题也逐渐增多。首先遇到的是在顶点纹理中采样出来的点老是不准。经常会采到周围某个像素点去。解...
小明 2011-10-8 3,537 views

GPU Based Particle Using DirectX9

今天工作不多,于是又想起了之前看过的一片文章,叫做基于GPU的大规模粒子系统,是ShaderX3上的一片文章,反复看了一下这篇文章,发现在文章最后说到的渲染粒子的方法我一直存有疑问。它给的方法是用点精灵画粒子,而且说这样比用三角形要省3到4倍的顶点数据,还详细讲了怎么解决点精灵无法绕Z轴旋转的问题。我想它说的应该就是Dx提供的Sprite接口吧。可如果是这样的话这个东西是没法实现的。首先它没办法使用shader,那么就无法完成根据前面GPU算出的粒子属性画粒子。其次这个东西并不会比三角形剩顶点,它内部应该也是用到了三角形的...
小明 2011-09-20 6,682 views

别逼秃驴喝咖啡–关于Tegra2的一点讨论

熟悉我的人都知道我一直是n粉,所以买新手机时我毫不犹豫的选了ME860。这款手机配备了nVIDIA最新的处理器图睿2–Tegra2。今天看了官方关于Tegra2的WhitePaper,但没看完。明天继续看。 首先我的疑问就是为什么安卓系统虽是Linux但软件全要用JAVA写。看网上说google为了提高效率自己实现了一个java虚拟机,而且不是基于栈的而是寄存器的。那么它的一些基本算数运算应该是可以在chip上完成了,但既然如此为何还要搞个虚拟机???为什么还要在硬件之上在虚拟一层呢?这效率不知差了多少。可能有些人支持虚拟机说是它兼容性好,那么我...
小明 2011-09-5 10,058 views