xtutu

学习|思考|分享


引自《三体》后记:

我曾经陷入【宇宙文明点状化】的这种思维游戏中不可自拔
那个时期,我还编过一个宇宙点状文明体系总体状态的模拟软件,将宇宙间的智慧文明简化为点,每个点只具有描述该文明基本特征的十几个简单参数,然后将文明的数量设置得十分巨大,在软件中模拟这个体系的整体演化过程。
软件运行时最多的一次曾在十万光年半径内设定了三十万个文明,这个用现在看来很简陋的TUBOC编的程序在286机上运行了几个小时,结果很有趣。

模拟地址:simulation
知乎回答:知乎地址

阅读全文 »

之前一段时间做了一个VR项目的Demo。一款p2p的竞技类游戏,玩法类似皇室战争。
现在已经结束了,放一些图片和视频作为记录。


阅读全文 »

实际上submodule 与 pull request,并没有什么直接关系。
比如一些团队采用code-review的方式进行协作,那么他们可能只用到pull request。
这里之所以放在一起,是因为很多场景用到了其中一个,就少不了另一个。
那么,什么情况下我们需要用到 submodule 和 pull request呢?!


假设我们的项目是用git来管理,这时我们需要添加一个第三方库的源码(以下简称lib),而这个lib,也是通过git来管理。
这种情况,一般有两种选择:

  1. 把lib的源码复制到我们的项目中,把它作为当前项目的源码进行管理。
  2. 通过git clone的方式,把lib整个放到我们的项目中(保留它自身的git信息),作为git的submodule。

这两种方式各有利弊,接下去就来好好分析一下。

阅读全文 »

最近一直在Windows下做开发,自带的cmd可用性太差。
虽然也装了GitBash(MINGW64),但是终归和Mac下的Iterm2 + oh my zsh无法比。
所以就花了点时间,去寻找可以在Windows下用的类似工具。
看了一圈之后,最后决定用ConEmu + Babun来实现。

阅读全文 »

中午吃完饭,居然下起了雨,不过好在下的不大。在回公司的路上,小k问了我上面这个问题。
这可有点难到我了,倒不是问题本身有多难,而是通俗的解释问题的结论有点难。
毕竟这个问题涉及到各种数学计算,细节太多,无法直接描述。

既然计算起来比较麻烦,那就只能通过模拟实验来展示结论!

全景

阅读全文 »

晚上和同事小k一起吃饭回家(小k是公司的一名美术),他在路上问了我这个问题。
于是就有了下面的对话。


我:这个问题啊,我得想想怎么才能比较通俗的和你解释。(如果直接说,算法能力、架构能力强,小k肯定是听不懂的)

我:哦,想到了!还记的小学的数学课本上,有一则关于高斯的故事吗?大概就是说“老师布置了一道题目,让大家算出从1加到100是多少”

小k:嗯,有点印象。

我:对于这个问题,普通程序员,可能就是一个一个的做加法,需要运算99次。而优秀的程序员会写出(100 + 1) * 100 / 2的公式,只要3次运算就搞定了。

小k有点懵,貌似不怎么理解为什么可以这样算出结果。。。

于是我继续解释:你可以试着想象一下 “把1+2+…+100写在纸上,然后再在它的下一排,倒过来写100+99+…+1
大致就是这样:”

1+2+…+100
100+99+…+1

我:可以发现,上下两两相加,就变成了: 101+101+…+101。总共有100个101,因为这样算实际上是做了两次1+…+100,所以我们还需要除以2。

小k似乎懂了,但是过了一会又说:等一下,为什么都是101,中间的50+50,不是应该是100吗?

看到小k,问出这样的问题,我只好继续解释:1到100,是偶数个,只有奇数才有中间的那个数字,比如1,2,3。

小k:哦哦哦,懂了

至此,终于向小k解释完这个问题。
如果小k去当程序员的话,应该算不上优秀… :-) 哈哈哈

阅读全文 »

前言

产品在早期的研发过程中,特别是初创团队,可能根本就没有专门的测试人员。(当初我参与的第一个手游项目就是这样,但也因此,项目组的程序、策划、美术每个人,都得反反复复跑游戏,充当测试的角色)。

测试是保证产品质量的一个重要环节,而测试人员本身的专业能力直接影响测试质量。
作为程序员,经常会听到到面向对象和面向过程这类词汇。那么“测试人员”,是否也有类似的分类呢?!答案是肯定的。
在我平时的工作中,接触到的测试人员,基本都是本文标题中所提到的面向客户端测试,能够做到面向服务端测试的寥寥无几。

阅读全文 »

后记:已用VSCode代替,因为所用的硬盘不是SSD,Atom在大项目上的表现实在是卡…

很早很早之前看到有服务端的同事在用Atom编辑器,当时还是蛮吃惊的。
因为印象中的Atom,就是一个拥有高贵血统的体验产品:背景强大,理念前卫,但是Bug还比较多,并不适合作为首选的IDE。

这两天正好有空,就折腾了下。用下来,感觉还是很不错的!

阅读全文 »

Egret中的触摸机制

距离上次写Egret的东西,已经过了好久。其实这篇文章很早之前就写了一些,但是一直没有整理,所以一直没有发上来。这两天刚好有时间,就整理了下。

所使用的Egret版本:3.0.2。

阅读全文 »
0%