代码之家  ›  专栏  ›  技术社区  ›  George Shuklin

SDL中的静态流和目标纹理有什么区别?

  •  0
  • George Shuklin  · 技术社区  · 5 年前

    https://docs.rs/sdl2/0.34.3/sdl2/render/struct.TextureCreator.html#method.create_texture )介绍了静态纹理、流式纹理和目标纹理,但给出了它们之间的区别。

    如果我想在每个帧上完全更新纹理(纹理是画布大小的100%),我应该使用哪种纹理?

    0 回复  |  直到 5 年前
        1
  •  0
  •   George Shuklin    5 年前

    我花了一点时间来理解它们之间的区别,但是:

    • 静态纹理是一种很少更改的纹理(如精灵)。
    • 目标纹理是一种可以用作“绘图位置”的纹理(用作曲面,使用SDL绘图原语)。它打算经常更新。
    • 流纹理是一种特殊类型的纹理,它假定从外部数据源进行完全更新。它是为视频播放器等设计的(将视频的新帧渲染成相同的纹理)。它也打算经常更新。

    流纹理应该用 with_lock 采用闭包执行更新的方法。闭包获取纹理的可写字节数组作为参数。