本帖最后由 cyqsimon 于 2015-8-8 23:19 编辑 

Dinnerbone: At long last, our Particles are no longer Entities. Basically means they're not memory hogs anymore!
Dinnerbone: 我们的粒子效果终于不再使用单独的实体实现了。换言之就是说,他们不会再这么占内存了!
从java代码实现的角度来讲,每一个实体都是一个拥有非常多属性的对象,所以如果只是为了实现粒子效果的话会占用许多不必要的内存空间,这次更改后可能是通过openGL State Machine的方式直接渲染,而非面向对象的编程方式实现的粒子效果。
个人推断,大量TNT爆炸时的高内存占用和使用实体实现粒子效果摆脱不了干系,以后在处理复杂场景时,内存占用情况应该会可观许多。
更新:

Dinnerbone 尝试了一下,结果同时创建16000个粒子效果没有产生卡顿
结果被同僚毫不留情地喷了

Grum: 有些人口中的“我没有感觉到帧率降低”的意思是只是说,我的帧率没有降低到垂直同步限制的60fps以下

Dinnerbone: At long last, our Particles are no longer Entities. Basically means they're not memory hogs anymore!
Dinnerbone: 我们的粒子效果终于不再使用单独的实体实现了。换言之就是说,他们不会再这么占内存了!
从java代码实现的角度来讲,每一个实体都是一个拥有非常多属性的对象,所以如果只是为了实现粒子效果的话会占用许多不必要的内存空间,这次更改后可能是通过openGL State Machine的方式直接渲染,而非面向对象的编程方式实现的粒子效果。
个人推断,大量TNT爆炸时的高内存占用和使用实体实现粒子效果摆脱不了干系,以后在处理复杂场景时,内存占用情况应该会可观许多。
更新:

Dinnerbone 尝试了一下,结果同时创建16000个粒子效果没有产生卡顿
结果被同僚毫不留情地喷了

Grum: 有些人口中的“我没有感觉到帧率降低”的意思是只是说,我的帧率没有降低到垂直同步限制的60fps以下
也就是说以后很多个TNT一起爆炸时,内存可以不受折磨了(CPU&显卡:“内存菌……你别走……”)
然并卵系列
不再使用单独实体实现?那么现在是通过一个新的Particles对象来实现么……看起来差不多呐……
看来你并不知道这么做的重大意义
tsd1 发表于 2015-8-7 20:11
看来你并不知道这么做的重大意义
因为从来不开粒子
新生のabmfy 发表于 2015-8-7 20:12
不再使用单独实体实现?那么现在是通过一个新的Particles对象来实现么……看起来差不多呐…… ...
我加了一句自己的推测,可能是直接调用了包含OpenGL渲染的方法,而不是先创建对象,再由对象实现渲染的方法了
tsd1 发表于 2015-8-7 20:11
看来你并不知道这么做的重大意义
只能说,在大多数情况下会有少量性能提升,少部分情况下性能会大幅提升
表示显卡无力支撑1.9的openGL,已经因为显卡问题拒绝打开1.9的游戏了QAQ
我地图的审核到现在都没完成
渣机的福音~~~
cyqsimon 发表于 2015-8-7 20:14
只能说,在大多数情况下会有少量性能提升,少部分情况下性能会大幅提升 ...
用crackshot制造大量轰炸也许会好得多
还有大量tnt爆炸
不过,一般用处的确不大
这样性能会提升吧?
终于不再在别人都在欣赏烟花的时候我却在卡翻天了
好!原来一用那个命令就卡
喜闻乐见 喜大普奔
指令党大福利
指令党大福利
我们的例子效果
例子效果23
终于不用看见一群点燃100个TNT而不卡的人的装逼了
内存不高终于有办法了!
对玩家来说当然是好事。
不过对于Mojang那群开发人员和各个Mod、插件编写者来说,不以面向对象的思想的话,粒子这一块的处理大概会变难吧
不过对于Mojang那群开发人员和各个Mod、插件编写者来说,不以面向对象的思想的话,粒子这一块的处理大概会变难吧
这么说使用粒子效果的时候将会不再使用多属性的实体来进行制作了,那将会很流畅
就是说,我的渣机以后可以开粒子效果了???
TNT测试不了CPU咯
tsd1 发表于 2015-8-7 20:11
看来你并不知道这么做的重大意义
从来不开粒子路过
我擦,我电脑一直不能开粒子效果,开了就卡,还用optifine把所有的粒子效果全关了
henry5041 发表于 2015-8-7 20:52
对玩家来说当然是好事。
不过对于Mojang那群开发人员和各个Mod、插件编写者来说,不以面向对象的思想的话, ...
确实,我自己尝试玩儿过OpenGL,我好歹还用过非面向对象的C,用起OpenGL仍然不是一般的头疼,真的很难想象那些只用过OOP的程序员是什么感受...
当然我觉得吧,Mojang应该还是会考虑到mod和插件作者的想法的,具体封装方法我也只能猜猜
不那么占内存的话那核弹也可以做粒子效果了(粒子蘑菇云…
不知道能提高多少性能 - -
这个好,这个好
粒子效果会不会为此不受蜘蛛网影响了?
长话短说,用大量例子不卡了
熊孩子表示这不公平,我们还要炸服 务 器呢233
我表示要是暴击出现的粒子效果要是能自己设定数量就好了 _(:з」∠)_
这样的话设定出现数量1 _(:з」∠)_然后贴图改成暴击英文字样qwq
这样的话设定出现数量1 _(:з」∠)_然后贴图改成暴击英文字样qwq
你的意思是以后开tnt超平坦都不会卡了2333
G王者Z巨蟹Y 发表于 2015-8-7 20:10
也就是说以后很多个TNT一起爆炸时,内存可以不受折磨了(CPU&显卡:“内存菌……你别走……”) ...
发完往下一看 突然看到观点差不多的
还是有点卵用的
点TNT时,放烟花时终于不闪退了
粒子效果会不会为此不受蜘蛛网影响了?
好像确实是的
G王者Z巨蟹Y 发表于 2015-8-7 20:10
也就是说以后很多个TNT一起爆炸时,内存可以不受折磨了(CPU&显卡:“内存菌……你别走……”) ...
然而我并没有什么卵显卡
终于不用在去关粒子效果了
那就是说还是很卡咯?
渣机党福利
你的意思是,我以后用威力上万的tnt就不卡了?
楼主打错了吧,不是Grumm吗,少打一个m
然而还是卡电脑
机渣表示欢喜{:10_512:}
嘿!你骗我,我用了ExplosionPower:2000的Fireball它就未响应了,哪里不卡了!
栗子不用管了也!{:10_492:}