gpt4 book ai didi

c++ - 存储和访问动画的关键帧

转载 作者:太空宇宙 更新时间:2023-11-04 11:38:24 29 4
gpt4 key购买 nike

我想用 C++ 创建一个动画系统,我在其中存储具有时间和值的关键帧。这些值应在播放期间进行插值,因此我需要按时间变量对它们进行排序。因为在插值时,我总是只想在最后一个和下一个关键帧之间进行插值(通常是如何完成的)。

如何存储关键帧,以便我可以轻松(快速)访问特定时间前后的关键帧?

起初我想到了 std::map,但我对关键帧的正确顺序有疑问...有什么想法可以做得更好吗?

最佳答案

您可以使用 std::vector 并保持关键帧的正确顺序。假设关键帧在 vector 中按时间排序,然后您可以提取在对数时间内具有 std::lower_boundstd::binary_search 的相关关键帧。

std::map 在内部保持元素按键排序遵循严格的弱排序标准。所以,如果你使用时间作为关键,你将保持关键帧的正确顺序。

就个人而言,我会使用 std::vector。

关于c++ - 存储和访问动画的关键帧,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22363324/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com