如何在LUA中同时迭代多个范围
2022-2-2 7:19:42
收藏:0
阅读:284
评论:1
我有这种情况:
n1 = variable_1 -- 0,154
n2 = variable_2 -- 335565,418338
n3 = variable_3 -- -0.2,-3.2
for n1 = 0,154 do -- n1的范围
-- 在n2和n3的范围内按比例增加/减少
end
我想在它们各自的范围内增加/减少n2和n3与n1一起变化,请问for循环是否是最好的解决方案?
原文链接 https://stackoverflow.com/questions/70951685
点赞
评论区的留言会收到邮件通知哦~
推荐文章
- 【上海普陀区】内向猫网络招募【Skynet游戏框架Lua后端程序员】
- SF爱好求教:如何用lua实现游戏内调用数据库函数实现账号密码注册?
- Lua实现网站后台开发
- LUA错误显式返回,社区常见的规约是怎么样的
- lua5.3下载库失败
- 请问如何实现文本框内容和某个网页搜索框内容连接,并把网页输出来的结果反馈到另外一个文本框上
- lua lanes多线程使用
- 一个kv数据库
- openresty 有没有比较轻量的 docker 镜像
- 想问一下,有大佬用过luacurl吗
- 在Lua执行过程中使用Load函数出现问题
- 为什么 neovim 里没有显示一些特殊字符?
- Lua比较两个表的值(不考虑键的顺序)
- 有个lua简单的项目,外包,有意者加微信 liuheng600456详谈,最好在成都
- 如何在 Visual Studio 2022 中运行 Lua 代码?
- addEventListener 返回 nil Lua
- Lua中获取用户配置主目录的跨平台方法
- 如何编写 Lua 模式将字符串(嵌套数组)转换为真正的数组?
- 如何创建一个 lua 脚本以针对特定键为 fluentbit 进行限流
- 如何在Lua中将变量从Lua推送到C ++
线性差值
function lerp(v0, v1, t) return (1 - t) * v0 + t * v1; end local n1 = {0, 154} local n2 = {335565, 418338} local n3 = {-0.2, -3.2} for i = n1[1], n1[2] do local t = i / n1[2] print(i, lerp(n2[1], n2[2], t), lerp(n3[1], n3[2], t)) end
编辑
for 循环只是打印整个间隔内的值。
你需要知道几件事情。
eng_pow_max
的范围sidecant
的范围首先,我们要计算速度比率。the_speed / max_speed 给出了介于 0 和 1 之间的值。
0 / 154
为0
(0% 速度)77/154
为0.5
(50% 速度)我希望你明白这个观点。
现在,我们可以使用 lerp 函数来计算其他两个值
local eng_pow = lerp(eng_pow_min, eng_pow_max, the_speed / max_speed) local sidecant = lerp(side_cant_min, sidecant_max, the_speed / max_speed)