• flash性能优化


     同屏数量只有600个,2000多个肯定卡 

     这个已经是fp用cpu渲染的极限了 
     如果不进行人物排序,不加鼠标事件,可以到1000个左右
    但在游戏中,有很多交互,有很多消息,还有面板的消耗,很难到1K个了 
     特效你可以看作一个角色 
     都是位图渲染 
     所以都差不多,唯一的区别可能是面积不一致
    再加上帧频的不同 
     当场景人物过多的时候,如果是全屏面板,场景就不参与渲染了
     恩,我们游戏里有好多全屏面板,如果打开这些面板,停止场景渲染,这样,场景人物再多在渲染方面也不影响帧频 
     怎么停止场景渲染的
    是只要盖住就行了?还是需要代码处理下 停止ef监听?
     这个处理起来比较简单
    但对于非全屏的面板就复杂一些了 
     非全屏面板,不盖住的地方还是得参与渲染
    我这边处理了一下,效果还蛮好
    游戏中全局一个EnterFrame,一个Timer 
     这样可以最大限度的降低消耗 
     ef
    time里不太准
    肯定会很不平滑
    尤其是走起路来 
     很多游戏在处理视野中大量人物时,如果隐藏了人物,其实消耗也是非常高的
    隐藏了,其实还参与了深度排序,同样也会进行着复杂的as渲染运算 
     这样,对as代码对cpu造成的消耗也是非常高的 
     一般的ARPG同屏幕有500多个位图动画吗?
     这得看动画渲染面积与动画帧频
    这两个因素影响最大了 
     透明区域也参与重绘,所以一个人物一个方向的倒影应该单独分离出来,做成一个圈。提出来就少了左上角那个区域的重绘了,1000个人就少1000*那么大的面积

    ,重绘就是计算,耗CPU的。重绘是按区域重绘,你那资源里面倒影的像素占了大半。

     我现在站在那里不动,形象还是在一帧一帧的播,但是每帧的倒影都一样。如果把倒影拿出来,不动的时候倒影就不用重绘。只重绘形象那个区域。如果方向改变了才去重绘一次倒影 
  • 相关阅读:
    【Linux软件安装】
    Java IO(七)ByteArrayInputStream 和 ByteArrayOutputStream
    Java IO(六) ObjectInputStream 和 ObjectOutputStream
    Java IO(四) InputStream 和 OutputStream
    Java IO(五)字节流 FileInputStream 和 FileOutputStream
    Java IO(三)FileDescriptor
    Java IO(二)File
    Java IO(一)概述
    Java中的集合(十五) Iterator 和 ListIterator、Enumeration
    Java中的自动装箱拆箱
  • 原文地址:https://www.cnblogs.com/as3lib/p/3377969.html
Copyright © 2020-2023  润新知