Corona SDK、delta时间的波动以及一些其他问题。
2015-12-7 16:50:4
收藏:0
阅读:102
评论:1
- 我正在计算时间增量以在我的动画中使用。我注意到我随机得到一个dt峰值,导致我的玩家穿过地板掉下去。如果我不触摸屏幕,它会在一两分钟后发生。我确定这是原因,因为当dt大于0.1时,我会打印出它。这是我的计算dt的方法。
local dt = 0
local lastUpdate = 0
function getDeltaTime()
if lastUpdate == 0 then
dt = 0
else
dt = (system.getTimer( ) - lastUpdate) / 1000
end
lastUpdate = system.getTimer( )
end
任何想法为什么会有巨大的dt峰值?
- 我正在使用一个很棒的库Dusk。我像这样将它添加到我的项目中。
local dusk = require "Dusk.Dusk"
现在黄昏文件夹在我的项目根目录中。我想把它放在一个lib文件夹中。我尝试这样包含它
local dusk = require "lib / Dusk.Dusk"
或这种方式
local dusk = require "lib / Dusk.Dusk"
以第一种方式,它说这些文件必须使用“。”包含,在第二种方法中,它说 未找到模块“Dusk.dusk_core.core”:
我认为这应该是非常简单的,不确定我做错了什么。
- 我的第三个问题涉及从场景中访问变量到外部类。例如,假设我创建一个“Player”文件,其中包含与我的玩家相关的所有功能。我在game.lua中添加玩家,并且我想从“player.lua”中调用一个函数,在“game.lua”中最好的方法是如何达到这些函数或变量?
点赞
评论区的留言会收到邮件通知哦~
推荐文章
- 如何将两个不同的lua文件合成一个 东西有点长 大佬请耐心看完 我是小白研究几天了都没搞定
- 如何在roblox studio中1:1导入真实世界的地形?
- 求解,lua_resume的第二次调用继续执行协程问题。
- 【上海普陀区】内向猫网络招募【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中获取用户配置主目录的跨平台方法
尝试使用
os.time替代system.getTimer。在某些情况下,在挂起和恢复应用程序后,system.getTimer可能会从头开始计算。相反,使用os.time,它是正常的纪元时钟。function getDeltaTime() if lastUpdate == 0 then dt = 0 else dt = os.time() - lastUpdate end lastUpdate = os.time() end使用 require 时,始终使用点,并始终引用从
main.lua所在的位置。如果
lib文件夹正好位于您拥有main.lua文件的同一文件夹中,则local dusk = require "lib.Dusk.Dusk"看起来没问题。player.lua 文件:
local fireBullet function(event) if event and event.grenade then print("grenadeeee!!!") else print("fireeeee!!") end end Runtime:addEventListener("eventFireGun", fireBullet)其他文件:
Runtime:dispatchEvent({ name = "eventFireGun", grenade = true })它将调用 fireBullet,不管它在哪里。您不必保留它的引用。
您只需要记得在删除 player 对象之前删除事件侦听器:
Runtime:removeEventListener("eventFireGun", fireBullet)否则,player 对象将无法删除,这将导致巨大的内存泄漏。