随笔分类 -  Demo

DirectX Demo
用DirectX实现魔方(三)视角变换及缩放(附源码)
摘要:在本系列第一篇介绍过鼠标按键的功能,如下。左键拖拽 - 旋转魔方右键拖拽 - 变换视角滚轮 - 缩放魔方今天研究一下如何实现后面两个功能,用到的技术主要是Arcball,Arcball是实现Model-View-Camera的重要技术,这里的旋转基于Quaternion(四元数)来实现,当然也可以通过欧拉角来实现,但是欧拉角的旋转不够平滑。先看一下Model-View-Camera的效果,如下,这个gif效果图是用LICEcap录制的,帧率有些慢,略有卡顿现象,大家可以下载文末的可执行文件查看更加平滑的效果。右键拖拽 - 变换视角由上面的动画可以看到,通过用户按下并拖拽鼠标右键即可以旋转视角( 阅读全文

posted @ 2013-09-16 09:50 前端风云志 阅读(10793) 评论(17) 推荐(8)

用DirectX实现魔方(二)
摘要:这篇说一下如何构造魔方,主要包括魔方几何体的构造及纹理贴图。以下论述皆以三阶魔方为例,三阶魔方共有3 x 3 x 3 = 27个小立方体。构造魔方在第一篇里面说过,最初模型用的是微软的.x文件格式,由于魔方要实现按层旋转,所以不能将整个模型做成一个.x文件,只能分成若干个小立方体,每个立方体对应一个.x文件。这导致在发布程序的时候也要发布这些模型文件,而且.x文件已经逐渐为微软遗弃,所以就干脆不用了,自己画吧。魔方由27个小立方体构成,所以只要绘制一个小立方体,并复制27分,再将这个27个小立方体按一定顺序堆叠在一起,最后贴上纹理,就可以构成一个完整的魔方了。一个小立方体包含六个面,由于每个面 阅读全文

posted @ 2013-07-10 09:22 前端风云志 阅读(7515) 评论(26) 推荐(14)

用DirectX实现魔方(一)
摘要:关于魔方 魔方英文名字叫做Rubik's Cube,是由匈牙利建筑学教授和雕塑家Ernő Rubik于1974年发明,最初叫做Magic Cube(这大概也是中文名字的来历吧),1980年Ideal Toys公司开始销售此玩具,并将名字改为Rubik's Cube。 魔方在80年代最为风靡,至今未衰 阅读全文

posted @ 2013-06-28 09:18 前端风云志 阅读(10097) 评论(38) 推荐(7)

导航

关注我

前端风云志