手机浏览器扫描二维码访问
相比起詹永枢院士的惊讶,郝云在考虑这个问题的时候倒是没有想的特别复杂,纯粹是挠头的时候灵机一动想出来的这个方法。
程序首先猜测了一个接近1sqrt(number)的值,然后运用牛顿迭代公式进行了迭代运算。
单从算法逻辑上来讲,其实他改写之后的代码,和之前那个Q_Sqrt函数的代码并没有太大的区别。冰川引擎在math。c文件中定义的Q_Sqrt函数,事实上也是采用的这个思路。
而要说唯一哪里不同,大概就是在那个神秘的数字——0x5f375a86上了。
根据牛顿迭代算法的原理,猜测值距离最终结果越接近,迭代的次数越少。而神秘的数字0x5f375a86,便是用来计算猜测值的。
而郝云在尝试了几次之后意外地发现,如果使用“0x5f375a86”这个数,得到的y将非常接近1sqrt(n),以至于最终执行牛顿迭代算法时,只需要2次代法就可以达到他所需要的精度!
至于这个数是怎么得出来的?
郝云也没办法解释。
毕竟他只是遵循着自己的数学直觉,觉得原来那个程序中选取的数字不够好用,然后试着换了个更好用的数字试试。
一开始他也试了好几次,发现更改的数字都没有原先那个数好用,直到后来灵机一动试到了这个0x5f375a86,发现居然只需要两次迭代就能完成整个计算过程。
老实说,他自己也惊讶的不行。
可能……
这也和他的数学属性达到了精通有点关系?
总而言之,采用了0x5f375a86这个特殊的数字之后,单从运算步数来看,整个函数的运算效率将比原本math。c文件中定义的Q_Sqrt函数快上足足两倍!
至于这个结果会产生怎样的效果……
老实说郝云也没有一个准确的概念。
毕竟他对这款冰川引擎的了解,远远没有达到业内人士的高度。
之前他虽然做过游戏,但其实也就只做过2048这一款游戏而已。神殿逃亡算是运用到了和冰川引擎同源的一款开发软件,但那款游戏基本上都是李宗正一个人完成的,郝云压根儿就没参与到开发环节中,就算参与进去了八成也不会研究引擎的源代码。
这个世界的游戏开发工具已经进化到足够傻瓜的程度,除开那些大制作之外,绝大多数的中小型游戏都是能够单纯的依靠开发工具,以及二级程度的编程水平来实现的。
“……话说到底咋测试引擎效率提升了多少?这电脑上就没有一个打分软件,或者测试用的游戏吗?”
郝云在电脑上仔细搜寻了一番,然而根本没有找到那种能够用来给引擎打分的工具软件,也没找到能测试引擎性能的游戏。
事实上,主办方确实没有准备这种东西。
毕竟从一开始,他们压根儿就没考虑过有人能真的完成这道送命题。
“我去,这是搞毛线啊?”
搜索了一番之后仍然没有找到检测工具,郝云哭笑不得地看着屏幕,彻底没辙了。
总不能当场开发一款游戏来跑分吧?
虽然也不是不行,但手边一点素材都没有,电脑更是不能联网,总不能从最基础的素材开始做起吧?
一番纠结之后,最终郝云还是放弃了。
四方大陆分天下,上有日月星河,下有山川万族,或兽!或翼!或龙!或凤!朕有一族!曰人。兽为盘中食!翼为拉车马!龙为族人图!凤为院中鸟!吾善养精兵百万,欲万族为囚!摘日月为冠!千里苍穹为人族战衣,万里黄土为人族疆土。踏尸行,浴血战,筑人族不灭战魂!这是一个种族主义者的争霸故事。以万界位面,为人族征程做祭奠!...
那年,大唐的军队向西走得很远...
一眼看富贵,两眼断生死。从看出女神有灾祸开始,李十一踏上了一条无法回头的死亡之路。...
苏颜是个吃货,也是个学霸,二十七岁大龄单身,误注婚恋网被系统坑了一把,推送回八十年代寻找命定匹配的爱人。被穿越的苏颜一觉醒来,发现自己被渣男戏弄感情,被小姑子推下池塘,好不容易考上了大学,居然连录取通知书都被后奶奶撕掉了身边有极品,爹娘还忒老实,这些都不怕,她手撕白莲脚踩人渣,还要发家致富觅爱郎。她立志要当这个时代让人翻白眼的个体户,要开轿车住洋房,要富得流油腰缠万贯,要引领时尚界的新风尚。...
强力推荐,只爽不虐开学途中,遭遇空难。满载四百人的飞机往龙国中心,坠落而去,全球瞩目,万人祈祷。绝望之际,客机猛然拉升,强行迫降!全国沸腾,世界震惊!但空难仅是开始…10级地震!火山爆发!天降陨石!龙卷风侵袭!灾难接踵而来,蓝星进入灾难纪元。江磊龙舟救援集团正式成立!买飞机,购航母,造飞船…一步一脚印,逐步迈向世界巅峰。若干年后…太阳异常爆发在即,史前洪水再现…全球末日倒计时!末日之际,全球目光投向江磊。作为世界上最大经济体,龙舟集团有责任收留国际难民!江磊摇头正色。方舟计划启动,撤离蓝星!全体龙国人优先登船!龙舟龙国人的方舟,我照顾好龙国十几亿人,就是对国际社会最大的贡献。...
...