
1. Mindmaping & Sketch
某一天突然来了灵感,于是用Mindmap工具记录下来。后来还是改用纸笔画,因为可以随意画些东西,比较顺手。最初的概念是配合文字设置几个场景,最后因为时间的关系只简化为一个。
2. Making Markers and Tee
用这里提供的工具制作自己的标记,如果不太会用,可以看看这篇文章或者gotoAndLearn()上的这篇教程。
标记不仅可以印在纸上,用手机、PSP等显示设备效果也不错。除此此外,我还在网上印了一套情侣衣。

3. Modeling
用Cinema 4D建几个简单的模型,面不要太多,用自带的Collada导出就可以在Papervision3D里面用。材质不用调,用的是Papervision3D自己的Phong Shader。
4. Drawing assets in Flash
写文字可能比我写程序要难,这些年钻研英文资料造成我的中文水平急剧下降。不过再花哨也都是形式,真的打动人心的东西都是些朴素平凡的东西。打好稿以后,用数位板在Flash中写一遍,还原自然的感觉。
5. Test Drive in Papervision3D
FLARToolkit只是负责检测标记并计算坐标。在此之前先用Papervision3D把场景和动画元素做出来。散落的花瓣用Flint来做,粒子渲染可以和Papervision3D很好的整合。
6. Wrap it up
最后再做整合,只要把坐标关联到一起就可以了(看看BaseNode的代码)。为了尝试用多个Marker,我用了FlarManager这套类库。虽然提供了Add和Remove事件,但是检测机制有点复杂,花了相当的时间来搞明白。由于在移动Marker的情况下,事件会不断的被触发,所以开发一套自己的冲突解决方法是必须的。
此外还有抖动的问题,用ease的方法(如下)可以很好的解决。更多关于FLARToolkit的使用经验等以后慢慢post出来。
var m : Matrix3D = container.transform; var r : Matrix3D = FLARPVGeomUtils.translateFLARMatrixToPVMatrix(marker.transformMatrix); var speed : Number = .4; m.n11 += (r.n11 - m.n11) * speed; m.n12 += (r.n12 - m.n12) * speed; m.n13 += (r.n13 - m.n13) * speed; m.n14 += (r.n14 - m.n14) * speed; m.n21 += (r.n21 - m.n21) * speed; m.n22 += (r.n22 - m.n22) * speed; m.n23 += (r.n23 - m.n23) * speed; m.n24 += (r.n24 - m.n24) * speed; m.n31 += (r.n31 - m.n31) * speed; m.n32 += (r.n32 - m.n32) * speed; m.n33 += (r.n33 - m.n33) * speed; m.n34 += (r.n34 - m.n34) * speed;
7. Shooting & Editing
作为整套计划的最后一部分,也为了给将来留段美好的回忆,一段视频是必须的。D90拍摄,PR剪辑,终于在五一前最后一天搞定。



挺好的设想,
你好 关注你的博客很久了
一直很欣赏你在业界愿意分享的作风,现在很少你这样的人了
看到你求婚的日子,不再潜水了,怎么也要说声祝你们幸福
继续关注你的博客,自我学习
谢谢^_^
keep moving~
kevin cao 终于要结婚啦,祝福啊!
刚开始准备而已,事情太多了。。。呵呵
恭喜…..
哈哈,这创意真不错。
先恭喜啦,话说我当初也是为了初恋情人才学的FLASH,那是02年。
虽然最终没有走到一起,但是却成就了我今天的饭碗。
呵呵,恭喜你,并且祝你们的感情长青,幸福美满。
谢谢分享!!兄弟。 幸福快乐!!加油!!
哈哈,我也不再潜水了,恭喜恭喜。先留下个痕迹在这里。kevin真的很用心,祝贺你们。
很棒的创意。。。。。。
我想学习!。。。。
久仰久仰、恭喜恭喜、加油加油。
恭喜
Kevin,我被抖动的问题困扰了很久了,弄得不能插入较长的音乐……
看到你的方法我真的是眼前一亮
不过我是AS新手,写的AR都是参照FLARManager的,我可能把你解决抖动问题的代码安置在了错误的地方,然后Flex就提示出错了。我想问问你,你能不能把你解决抖动问题的完整代码部分截一个图发给我?如果可以的话,真的很多谢你!
my email : sunnymg@126.com
新版的FLARManager自带smooth功能,只要在设置一下参数就可以了,不用自己写代码了,很方便的,你可以看看。
恩,那个smooth功能可以解决三维模型的抖动问题,但还是解决不了marker侦测的稳定性问题,我本来想插入首3分钟的音乐,onMarkerAdded时播放,onMarkerRemoved时停止,但marker的侦测很不稳定,音乐往往播到10多秒便产生MarkerRemoved事件了…
解决侦测稳定性没有固定的做法。
你可以看一下markerRemovalDelay参数,设置延时触发onMarkerRemoved事件的时间。同时调高markerUpdateThreshold的数值,使得FLARManager系统更倾向于认为是一个marker更新(update),而不是新增的marker(add),这样就不会触发onMarkerRemoved事件。
恩恩,我也是这么做的,markerUpdateThreshold=700,markerRemovalDelay=105,但调了后没什么变化,这两个参数我是在flarConfig.xml里填的,是填的位置错了吗?我填在其中的flarManagerSettings里…
多谢你!
终于明白了,原来我把那两个参数填在了错误的地方,现在OK了!
Kevin谢谢你哦!
超级有创意,学习!