摘要:
转载自:http://gislu.blog.163.com/blog/static/104326128200832345255631/3D空间中,在等长度的两个交角为theta的向量v1(x1,y1,z1),v2(x2,y2,z2)之间进行球面线性插值。 实例:做一个行星在围绕太阳等速旋转的动画,假设只采样到旋转过程中的两个位置p1,p2,现在想要用软件模拟行星是怎么从p1运动到p2的。思路:1. 一般线性插值:我们知道一般两个量之间进行线性插值的方法为:v(t) = v1 + t*(v2-v1)(0<=t<=1)(因为t是一次方的,所以是线性的。)这里,考虑v,v1,v2是向量, 阅读全文
摘要:
试用了一个晚上,很不错。^__^,建议有建站需要的人试试。http://dawnli.weebly.com/ 阅读全文
摘要:
以前人们都用Euler Angles来描述几何体的旋转,Euler Angles通常包含XYZ三个旋转分量,也就是我们所熟知的分别绕X、Y、X轴旋转的度数。用Euler Angles表示旋转算是比较节省的了,仅仅利用三个实数就能表示空间中的任意旋转。 下面说说它的缺点:1. 某些情况下会产生Gimbal Lock,Gimbal Lock是什么可以百度查查;2. 计算机动画通常需要进行旋转插值,这样的话就需要对Euler Angles三个分量分别做插值,而这三个分量的插值都是相互独立的,最后的插值效果会不够平滑; 英国数学家William Hamilton在1843发明了Quaternion.. 阅读全文
摘要:
http://mv.baidu.com/export/flashplayer.swf?vid=decb7d715933dbec42bfdd62 阅读全文
摘要:
最近看了Greg Turk的Mathematics for Computer Graphics http://www.cc.gatech.edu/~turk/math_gr.html整理了一些他提及的数学书,这些书都是基础教程,应该还不错。1. Elementary differential Geometry, 微分几何基础 有英文影印版。2. Linear Algebra and Its Applications,线性代数及其应用 有英文影印版3. Numerical Recipes in C: The Art of Sci... 阅读全文
摘要:
何时用到数据断点:当程序运行中某个变量值变得异常诡异,而你又不知道它的值到底在何处被修改,这是便可以用到数据断点,VC会在这个变量值被修改的时候中断程序。步骤如下:0. 先进入Debug模式,在程序最初始位置设个断点;1. 拿到你想观察变量的地址,在Watch栏填入“&”+“变量名”可得地址,例如:&testParam -> 0x011e7f64;2. 点击菜单Debug->New BreakPoint->New Data Breakpoint 填入之前获得的地址,byte大小;3. Go,之后会在变量值变化的地方中断。调试程序非常有用,感谢小洋同学的分享。 阅读全文
摘要:
网上有这么一段话:人生如游戏,在投胎的时候,会让你选择难度。选择简单模式,出生点是发达国家;选择困难模式,出生点是发展中国家;选择噩梦模式,会出生在一个神奇的国家,因为这里有一部分“玩家”是开了外挂的,他们并不需要遵守游戏规则,可以在特定的甚至任意的时候随意践踏你的生命和信仰。不过,乐趣在于,在这个服务器里面玩,能升到满级活到最后的,都是神一样的角色。 想到一些事,心里堵得慌。 不过,最近总算是开始做些靠谱的事了。这是件值得高兴的事。有些东西最基础最辛苦,就是没人做,于是我去做吧。 阅读全文
摘要:
最近写了些3dmax的maxscript,发觉Autodesk不是一般的强大。脚本囊括了基本所有需要的功能,文档也比较详实,就是突然会冒出几个坑爹的BUG,让人抓狂。还好,在新的3dmax版本中,BUG越来越少。 发现了个比较好的模型UV展开插件(unwrella),比3dmax自带的好许多。用depends看了下,居然用的是D3D的库实现。我刚开始还以为老外资金及研究了XX算法,花了几年时间研发出来的呢,原来就是加了个壳。不过老外还是比较认真,壳做得挺精致,而且还实诚,在介绍的时候明确说了是用微软的D3D实现,参考了微软研究院的研究成果。 阅读全文
摘要:
坑爹的D3D程序,为什么依赖d3dref9.dll、D3DCompiler_42.dll,却不直接报错提示。。。照常规的思路,缺dll应该弹个对话框出来,这样程序员才好放上对应的dll。举些例子说吧:1. 用了HLSL的D3D程序,Release的exe如果放到没有D3DCompiler_xx.dll的机子上跑,会无提示地Crash,让你抓狂。2. 最近用d3dsdk的texconv.exe转dds图片(xp系统下),发布的exe没有带d3dref9.dll,于是产生了“Failed to create D3D device”,错误。网上的解决方案是在目标机器安装D3D的SDK,其实拷贝d3d 阅读全文
摘要:
1. 最近玩了玩MineCraft,比较佩服作者的创意和多年如一日的坚持;2. 开始整理有用的代码,并为以后写东西做积累,知识库已经积累了上百条有用代码片段,像备忘录一样;3. 自个儿的事需要尽快提上议程,荒废了很久;4. 少说话,多做事,少愤青,多理智;5. 多给小朋友们技术上的引导,好于替他们写代码;6. 清楚自己需要什么,需要过什么样的生活;7. 睡得太快是坏事么?需要夜里三省么?可别那么累;8. 这段时间能够平和地处理生活上的事了,控制自己的情绪,会带来好的心情。 阅读全文