- 在线时间
- 11 小时
- 最后登录
- 2015-9-12
- 注册时间
- 2015-3-29
- 听众数
- 10
- 收听数
- 0
- 能力
- 0 分
- 体力
- 175 点
- 威望
- 0 点
- 阅读权限
- 20
- 积分
- 80
- 相册
- 0
- 日志
- 0
- 记录
- 0
- 帖子
- 54
- 主题
- 20
- 精华
- 0
- 分享
- 0
- 好友
- 4
升级 78.95% TA的每日心情 | 开心 2015-9-12 12:05 |
---|
签到天数: 21 天 [LV.4]偶尔看看III
- 自我介绍
- 爱你么么哒
|
C 语言也许「只能」做数学题。可是,绝大多数游戏的运行过程就是不停地做数学题,而所谓编写游戏,也就是把游戏的规则和游戏的效果转化为数学题而已。其中不少题目电脑都已经知道怎么解——是别的程序员事先告诉它的——比如「求一堆散落在三维直角座标系之中的多面体在 8(x−3)−10(y+1)−11(z−1)=0 这个平面上一个给定范围内的投影」或者「给定一些彼此相连的顶点,求任意两点之间的最短路径」之类的数学题,它只需要千万分之一秒就能给你解好。这种能力有什么用?电脑上 FPS 游戏的本质活动就是不停地求三维座标系下的多面体经过变换之后在二维平面上的投影,不停地判断两个多面体是否彼此重叠,以及不停地寻找两个顶点之间的最短路径,最终达到让怪物冲到你面前咬你一口的目的。不止游戏如此,其他软件也都差不多,每一个细节都是某种数学题——比如知乎页面顶端的蓝色导航条背景,就是 CSS 描述的一个浅蓝到深蓝的渐变——渐变是怎么回事呢?给出两个数字分别代表两种颜色,以及第三个数字代表一段距离,求一系列颜色的数值以及次序,使得这段距离中两种相邻颜色之间的变化最小。数学题。别说 C 语言,一切编程语言最终都只能做数学题,根据给定的数据,算出另一些数据,算出更多的数据,然后存贮、发送或者呈现算出的数据。7 C8 w7 F& |7 [4 R+ h9 \3 z
; @; j. F9 V8 g7 z7 I: q, x1 Z
|
|