Geotrack test footage 20120822_headcrab


局部地区看不到请点 渣豆链接

PFTrack随便弄张人脸的model摁上去track一下,10分钟就弄出上面这个,好方便。粗糙点没怎么调,“观众能吃粗粮”。
感觉对于模糊一下再偏点位置造的假影子来说.. 这个效果令人过于满意了。
技术前期又完成一个,还有我看看.. 58个events? ಠ_ಠ

微小说0

房间里渐渐热了起来,贴身的衣服里已经有了一丝汗水蒸发带来的潮气,这家旅馆的供热显然过于厚道了。

按了两下空调遥控器,没有反应。我起身向房门走去,房东就在上面二楼。 Read More

[指南] 怎样将Team Fortress 2/Source游戏中的模型导入到3ds Max中

实在是太想用Sentry Gun,折腾了七八个小时终于搞定了, 本文教你怎样通过繁复..的步骤最终达到如图的效果:

中间绕的弯路不谈, 说下过程,可能啰嗦点,因为此文不只是写给你看的,也是我自己为了记录…实在不想万一忘掉还要重新摸索。(4个月后的update:这种技术果然一辈子只会用一次
这个帖子总结的也很好。

用到的软件:

上面那篇文章里还提到了个解压VPK的工具,可能是因为隔的时间比较久现在不这么压缩了,我是没用到。

提取和反编译MDL文件

MDL就是游戏中使用的模型文件,是编译成ANSI码存放的(大概是读取速度的原因)。找到你游戏所在的gcf(盗版可能就没有gcf吧,直接放目录里?不太清楚),用GCFScape打开,如果你不知道模型在哪/该用什么模型,建议下载Source SDK用自带的“Module Viewer”到处看看。Module Viewer不会告诉你它打开的是哪个gcf文件,因为(我仔细看了下大概是这样)Viewer展示的是所有gcf的汇总。所以在Viewer里确定目标以后再找还略略麻烦点,Sentry Gun的模型在team fortress 2 materials.gcf里的 \tf\models\buildables\sentry1.mdl ,把同目录下所有以 <sentry1.> 打头的文件提出来,再用MDLDecompiler选取mdl反编译成零部件,这种反编译好方便,按下按钮就搞定了… 骗你的,肯定会出现各种各样的错误,请参见这个贴子这个贴子这个贴子

完成后得到一堆SMD文件,其中最大的那个是我们要的,其他的是一些动画什么,还没看,也可以导入的。

导入3ds Max

用上面的3ds .SMD Importer就好了,要注意的是在我写此文的时候,2012版本的(至少是64位)不能用,我装了个2010导入再导出给2012。虽然wunderboy.org写的插件2012可用,但是我没法导入材质,官网上说暂时不能导入动画但是骨头和材质都行,我不知道。

点导入会提示选材质,这个材质在哪里呢… 用Wunderboy.org提供的Source MDL Texture Info可以方便的找到路径,把材质文件(vtf格式)提出来和模型放一起,再下载上面的3ds Max用来读取vtf的插件,就ok了~ 🙂

Minecraft 1.8.1 CraftBukkit 建服

因为1.8的bukkit还没有推荐使用版本所以官网首页上下不到,所以要到这里下个最新能用的版本:
http://ci.bukkit.org/job/dev-CraftBukkit/

所谓“最新能用版本”就是左边列表里带蓝色泡泡的最新一个。
下载放到服务器目录(建个文件夹),新建文本文档输入:

@ECHO OFF
IF /I “%PROCESSOR_ARCHITECTURE:~-2%”==”64” “%ProgramFiles(x86)%\Java\jre6\bin\java.exe” -Xincgc -Xmx1024M -jar “%~dp0craftbukkit-0.0.1-snapshot.jar”
IF /I “%PROCESSOR_ARCHITECTURE:~-2%”==”86” java -Xincgc -Xmx1024M -jar “%~dp0craftbukkit-0.0.1-snapshot.jar”
PAUSE

保存,后缀名改成.bat,运行。
等载入完以后关掉…因为大家都是用的盗版所以要改个东西,这个微妙的东西在 [服务器目录]/server.properties 里,记事本打开这个文件,有一行

online-mode=false

false改成true就可以了,重新就可以用客户端进了。
插件列表点这里 竟然没有按population排列的选项啊囧…

Selinux prevents httpd from accessing home directory

I tried to share files via httpd(Apache originally), however it wouldn’t work, saying 403 forbidden.
Apparently we need to set options to permit httpd to follow symbolic links. In /etc/httpd/conf/httpd.conf, ensure there is text below:

(Under <Directory “/var/www/html”>, there should be)
Options Indexes FollowSymLinks MultiViews

But the problem remained. After quite a while I noticed there were some Selinux alerts saying “SELinux is preventing the http daemon from reading users’ home directories.”

Then I disabled selinux(command “setenforce 0” to make it sleep temporarily) and it worked. As Selinux is a kernel-level security mechanism on your system, not a some antivirus or firewall software thing, it may not be wise to throw it away. Check Joshua Brindle (an SELinux developer) ‘s  comments on disabling SELinux here, which states clearly that applications should be fixed to work with SELinux, rather than disabling the OS security mechanism.

So what I do is:

1. According to Selinux log(you can generate it with command “sealert -a /var/log/audit/audit.log”, run “setsebool -P httpd_enable_homedirs on” to enable the literal option(this command takes 20 secs to be done I don’t know why).
2. Still doesn’t work, after some googling I found this, run “chcon -t httpd_user_content_t /home/Viaxl/Music -R” to authorize world rx permissions to apache access (recursively) .

Now they all work right. I found this kind of multi-layer protection, though very complex, is really handful. In this case I only permit http daemon(as a “Target” of Selinux’s conception) to access my Music folder, and this can’t be done precisely by chmod or something.

3dMax,时间,记忆与灵魂

这几天一直在学3dMax(现在改名叫3ds Max了,只感觉比原来拗口多了),一天十几个小时对着youtube教程,英语越听越像第一语言,天昏地暗。一块未定距离标准的矢量土地上生长着光影与材质,多面体和笛卡尔坐标系像狗屎一样毫无征兆的出现在这个不遵守能量守恒的世界里。

矢量的土地上不存在限制,宇宙的细节在这里无穷蔓延,精致的场景模型工程浩大,肉眼分不出真假,比任何一款第一人称射击游戏都真实,比踩到狗屎的柔软都真实。神在细节间,玩深了,持续猫着键盘5个小时以上忘了歇眼睛,我就能看到上帝程序员和佛祖程序员在我后上方45度加班编辑着<地球Online>。恍惚中喵到胳膊上的汗毛随着空调飞舞,意识到这是一副肉体。目睹动脉在臂弯跳动,目睹四肢遵从我的意志变换位置,想到灵魂不能永存,更加难以接受。

也许可以吧,曾经读到,现在神经生物学的进展已经远远超过了一般人了解的程度,在高层原则上的认识已经相当完备了,剩下的工作基本是补充细节。当然,说到细节… 难以想象在有生之年人类的科技树能发展到“备份整个大脑”那么高。所以,我大概可以在赚到本钱以后把自己冻起来?那我应该是第一批这么干的地球人,将来的大脑袋地球人选实验体的时候应该会对较古老的身体更感兴趣,当然保存条件要尽量完美,越到后来冻结人体的技术越高,但是相对的我等待科技发展的过程中身体机能也会下降,这会是获得大脑袋地球人青睐的不利条件,所以需要建立数学模型寻求各种最佳方案吧…

可是记忆保存下来灵魂(我这里指自我意识)就随之保存了么?如果千万年以后我的记忆得以复制的同时肉体被摒弃,而后“我”的机器人会是现在的我么?它/他/我肯定觉得就是我,因为具有我的记忆,记得他自己曾经在这里打字。但如果与此同时现在的我并没有在那里呢?记忆得以延续而灵魂不复?记忆和灵魂的关系是怎样的?(平行宇宙你走开…不关你的事。)

所以我现在的意识是会在进冰棺材之后眼前一黑再一亮到达大脑袋世界,还是说眼前一黑从此归入缥缈?

想来想去,我只能给自己一个相对说得通的答案:灵魂并不存在。所谓意识,只是人脑800亿个神经元的活动而已,记忆是冲动在神经间的回路(这个不太清楚,好像长期记忆是与神经结构的变化有关),分析和思考由脑前额叶策划,爱情是大量多巴胺作用的结果。时间在我们的宇宙中是线性的,记忆的形成过程也必然是线性的,但自我意识是连续的吗?自我意识谈不上连续,因为它不是一个过程,而只是大脑整体功能的一个投影,这些投影以脑的状态和记忆互相连接,从而感觉上是连续的,就像电影,看上去很生动,实际上只是胶片,24帧每秒。

这一秒和下一秒的我是不是同一个我?你你你,根本没有你,不用无谓的看不透生死了。

————-我是分割线————–

以上自己一些小想法,没怎么看过这方面的书… 提到脑前额叶的时候顺手搜了点资料看,觉得解释非常靠谱,理解了为何pongba牛会推荐神经学的书了,腾出空来一定看。

Linux访问Windows共享 && mplayer播放网络文件

mplayer播放网络文件会顿/卡/lag的情况

大笔记本上装的固态硬盘空间严重紧张,一般都是用小本下电影,小本在学校接了个24寸液晶电视看电影很给力,但是在家还是用大本的屏幕看吧… 实现起来一直困扰我的问题是我最爱用的播放器mplayer在放网络上的文件时会卡,隔一会顿一下,跟tm iPad似的(iPad放除了苹果本来支持的意外的格式–即用第三方解码器–总是会卡,怀疑是苹果故意这么干的…没研究过瞎说的)。之前是放弃用mplayer今天心情好Google了一下,发现有 -cache 这个参数,就是缓存啦,加上 -cache 8192 果断就不卡了。也不能怪我没看那八百页的manual…

本来就想说这,但既然提了我就把容易遇上的问题说全乎了吧,方便出现各种问题Google进来的同学们。(改了一下标题)

怎么mount windows的NTFS分区

需要注意的是之前用来接口NTFS格式的samba现在已经不用了,现在用一个叫cifs的东西… CIFS: Common Internet File System,看名字就知道比什么叫“桑巴”的牛逼 🙂
具体实现为:

mkdir /mnt/[dicname]
mount -t cifs -o username=uuuuuuu,password=xxxxxxx //192.168.1.100/[sharename] /mnt/[dicname]

然后关于mplayer字幕的问题

mplayer的字母乱码(或者下划线)上次也让我蛋疼过一次,好不容易弄明白时隔半年我又忘了又蛋疼了一次。
关键点在于… -font后面写的字体不是字体的路径,不是 /usr/share/fonts/xx..xx ,而是字体的名字,比如 -font “WenQuanYi Zen Hei” (由 fc-list 列出)。可能之前的版本是路径吧Google全写的路径…
有三个需要填的 -sub [字幕路径] -sub [字幕编码] -font [字体名称],如下:

mplayer *CD1* -sub 1.gbk.srt -subcp gbk -font “WenQuanYi Zen Hei” -cache 8192

-cache作用见文首。并不用像很多地方说的要把字幕文件通过 iconv 转成cp936格式,只要-subcp写对了就行。
貌似可以在 ~/.mplayer/config 中设置来不用每次都打一长串,但是我不敢在没有配置文件的情况下再忘掉这怎么工作的了 = =

[METAL] 能量金属Rhythm

第一次录音,开心~:)
视频先放优酷的…音质太渣了
面瘫是因为NG太多次麻木了…

吉他 Cort X6,换了拾音器 EMG81/85,双摇改单摇 (焊了几个硬币在里面…现在使用很稳定)
效果器 Line6 UX1
To those who are interested in my equipments:
Cort X6 replaced with two EMG 81/85 pick-ups
Effects is Line6 UX1

Network Programming Using Internet Sockets

Socket网络编程略窥一二.. 网络原理课的课程设计

完全是看这篇文章学的, 貌似有中文版但是我点不进去
就不说两句了, 底层的东西, 全是细节, 非要概括的话可以引用原文第五章的小标题来描述这个过程

5.1. getaddrinfo()—Prepare to launch!
5.2. socket()—Get the File Descriptor!
5.3. bind()—What port am I on?
5.4. connect()—Hey, you!
5.5. listen()—Will somebody please call me?
5.6. accept()—”Thank you for calling port 3490.”
5.7. send() and recv()—Talk to me, baby!
5.8. sendto() and recvfrom()—Talk to me, DGRAM-style
5.9. close() and shutdown()—Get outta my face!

我的代码, 这是linux的, windows有点小不一样, 我不知道 :): Read More

Google music进不了的解决办法

这两天一直用不了以为是Google服务器又出问题了(之前也有过,以为是.cn服务器挂掉了)。表现为点开播放器只有广告在飘上面打不开,专辑封面图出不来。但是换了代理封面图能出了,播放器由于不是天朝IP没法点。所以怀疑是路由被某众所周知的东西污染导致访问不了。

看了页面源码找到三个地址
1)*.top100.cn/*
2)*.googleusercontent.com/*
3)*.googleusercontent.cn/*
而播放器是放在(3)里的,把(3)地址挂进代理就能用了。

引申:
我把123全放代理里(美国IP)也能正常播放,说明Google检测IP的机制很不严,所以在国外也只要把google.cn挂上天朝代理就能播放了吧~ 没试
在天朝用cloud伤不起啊…

词头词尾闹得住蘑菇?词头词尾闹不住蘑菇。

流言内容:

Aoccdrnig to a rscheearch at Cmabrigde Uinervtisy, It deosn’t mttaer in waht oredr the ltteers in a wrod are,the olny iprmoetnt tihng is taht the frist and lsat ltteer be at the rghit pclae.The rset can be a total mses and you can sitll raed it wouthit porbelm.
细心看一下就能明显看出雕琢的痕迹 比如Aoccdrnig中的cc放在前面,d放在靠后的位置,因为d比较突出增加识别性。如果这个没有说服力的话Cmabrigde就比较明显了,我写成Cbdrgaime谁认识。

于是写了段代码随机排序后: Read More

[ACM] POJ 3274 Gold Balanced Lineup 解题报告, 对数组Hash

算法很简单, 就是记录各个feature的累积和数组, 数组稍作处理, 只要能够比较 [让能够相减得出答案的两个数组] 的”形状”.
比如

111      111      000
110      221<=    110
111      332      110
010      342      120
001      342      120
100      443<=    110
010      453      120

中间一列的221和443的”形状”一样, 也就是相减能得到答案, 所以稍作处理都减去最右边的数即可, 方便比较.
问题是者离散化以后也有100000的数据怎么记录, 好吧我开始用的二叉树后来发现想错了..
无耻的Google以后发现对数组Hash的方法.. 很汗颜 太洋气了.. 跑2xxMS

代码:
Read More

[ACM] POJ 3277 City Horizon 解题报告, 线段树+离散化

第一道线段树.. 略难。 引用忘了哪看的一句话“10亿的的数据规模是任何数据结构都无能为力的,所以必须离散化”。因为略复杂我用class写的…yzhw牛说“线段树编程复杂度太高,一般用树狀数组或者STL set。不要class,class运行爆慢” 但是哥就是用class和链表过了,怎样!! 1200ms.. 不过后来看了一下Google到用Pascal的蒟蒻牛的代码,发现树狀数组果然好用!

hw给了我篇论文,我发现现在的程度知道了一个数据结构的意思&&一些优化比如“lazy”,写出来的东西details上面大家都差不多的。比如这道题目的lazy我也是加了个-1作标签说明下面的节点需要递归确认,即这一块不是一大块一样的

优化有二:
1. compress()  每次插入完一个building以后沿着树往下看有没有标记为-1但是左右子树height(toLoad)相等的,如果有合并左右子树。实践证明这个优化对这题的数据用处不大,反而拖到了1800ms…
2. 这个厉害了,没它我算5000的数据都要跑半分钟,而还有两组40000的数据,加了这优化4w的秒出。也是刚刚那篇里提到的“观察发现,线段树的建树、统计操作已难以再优化,但插入操作却任可以优化。由于一开始房子的高度无序,所以每次插入如果全部包含不能直接赋值,还需要向下递归左右子树。其实我们可以先将房子的高度排序,然后再依次插入,这样一旦全部包含就可以直接赋值,程序的效率大大提高。这样这道题就可以AC了。”

代码:

Read More

网站/WordPress从虚拟主机搬家到VPS上

拖了一个月终于着手并且完成了。其实没有什么难的。但是因为我对Linux的了解非常局限,还是花了一番功夫,同时学了很多东西,在这里记一下。没有试图写一篇“手把手教你搬WP”,只是记录一些我觉得有帮助的东西,希望做同样的事情的且同样不是那么牛逼的Linux学习者们有用:)

虽说是WordPress搬家,但是任何一个小型网站搬家都差不多这样了吧,嘿嘿。

如果用cPanel和MySQLAdmin之类的东西可能就很傻瓜,但是第一cPanel太贵了(竟然要425多刀一年,我都笑了),第二VPS都买了必须必须要抓住每一个学Linux的机会啊。

过程如下(断断续续弄了好几天…): Read More

[ACM] POJ 2133 Cow Imposters, easy DP + BFS

简单DP + BFS
牌子之间两两组合出新牌子, 新产生的牌子只需与原始的号码两两组合即可,即,不用考虑两个新牌子组合的情况,因为两个新牌子组合的结果必然等价与一个新牌子和原始牌子组合的结果, 否则会超时。

很自然的就可以用类似BFS里的队列来做, 我由此引发的思考是, 这种新牌子和原始牌子组合到达新point, 和BFS的思想是十分一致的, 我可以把每一个原始牌子看作一个方向, 牌子号码的每一位是一维空间。 比如 01001 这个原始牌子, 对应了一个五维空间, 这个原始牌子的方向就是 ( 0, 1, 0, 0, 1 ) 。 题目就能抽象为, 给出一个B维的空间和可以走的E个方向, 问你能到达离某个点最近的维度
Read More