Code Monkey home page Code Monkey logo

Comments (7)

unash avatar unash commented on July 2, 2024

/// 弹幕生命周期行为,实验特性; 可试用, 亦可以通过继承 BarrageRenderer 来实现相同功能

  • (void)barrageRenderer:(BarrageRenderer *)renderer spriteStage:(BarrageSpriteStage)stage spriteParams:(NSDictionary *)params;

目前已有了 进入、消失 两个时间点的回调。其他时间点似乎用处不大。

from barragerenderer.

romainghaha avatar romainghaha commented on July 2, 2024

怎么解决弹幕重叠问题?

from barragerenderer.

mapleleaf99 avatar mapleleaf99 commented on July 2, 2024

弹幕重叠该如何解决

from barragerenderer.

ZhongyiLi88 avatar ZhongyiLi88 commented on July 2, 2024

弹幕重叠问题,我想了一个解决办法:在计算弹幕起始位置的时候,如果没有位置放的时候,不要强制去放,这样就可以避免重叠的问题。
具体看BarrageWalkSprite的originInBounds方法中的如下代码:
if (availableFrom > stripNum - overlandStripNum) { // 那就是没有找到喽 if (self.forceDraw) { availableFrom = AVAERAGE_STRATEGY?leastActiveSpriteStrip:leastActiveTimeStrip; // 使用最小个数 or 使用最短时间 } else { //当在屏幕上没有找到能放的位置时,我们返回CGPointZero,就先不放了,等有合适的位置再放 return CGPointZero; } }

实际效果看,搜狐影音mac版的弹幕

from barragerenderer.

LionXia avatar LionXia commented on July 2, 2024

self.forceDraw

请问一下这里的forceDraw 参数是哪里来的参数 @ZhongyiLi88

from barragerenderer.

dourgulf avatar dourgulf commented on July 2, 2024

我做了一个修改版本尝试解决弹幕重叠的问题:
https://github.com/dourgulf/BarrageRenderer

from barragerenderer.

dourgulf avatar dourgulf commented on July 2, 2024

认真想了一下,应该另外定义一个Walk对象来实现这个特性。
同时,整体框架上引入一个是否可以加入新的弹幕的接口,这样既可以保留现有的特性,有可以支持到新的特性。

from barragerenderer.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.