物理模拟 2.12 last_update 的修改

计算机图形学 167 views 2 replies 🔒 closed
#1 ·

last_update 无法实现+=功能

d9ea5874ea43bab00a217999e33c4c3|689x187
d44d0a0083b2ea4f540b45a893d8d1f|690x348

以及 swapbuffer()的具体实现是否为调用 render()?若是,参数如何设置?
#2 ·

调用 update 就行

mod
#3 ·
喜欢我的石代码吗,post:1, topic:8157, username:1905814644:

last_update 无法实现+=功能

time_point 类型是一个类型别名,其全称是 time_point<steady_clock, duration<long, std::nano>>,这表示它默认的 duration 存储类型是 long。而我们使用的 duration 类型全称是 duration<float>,以 float 类型存储,因此不能直接相加,需要使用 duration_cast 转换。你可以用如下方法转换类型:

duration d(1.0f);
last_update += duration_cast<time_point::duration>(d);

更多关于 duration_cast 的说明可见于 std::chrono::duration_cast

喜欢我的石代码吗,post:1, topic:8157, username:1905814644:

以及 swapbuffer()的具体实现是否为调用 render()?若是,参数如何设置?

该问题已经有同学问过了,可以看一下这个话题:https://xjtu.app/t/topic/6641

🔒 Closed