我已经在这个网站上找到了一个类似的问题,但是答案并没有真正的帮助。我正在Solar2d /Corona sdk上创建一个游戏,我试图创建多个对象,这些对象在屏幕上弹跳,甚至相互碰撞,改变方向(就像在现实生活中一样)。我有几个问题。我试图创建一些墙,但我只看到白线,我的物体可以通过它们,因为它们只覆盖一半的宽度和一半的高度。下面是我使用的代码(我在互联网上找到的):
local leftWall = display.newRect (0, 0, 1, display.contentHeight);
local rightWall = display.newRect (display.contentWidth, 0, 1, display.contentHeight);
local ceiling = display.newRect (0, 0, display.contentWidth, 1);
local bottom = display.newRect (0, display.contentHeight, display.contentWidth, 1);如何将屏幕的边缘设置为边界?既然我想要创建同一个对象的几个副本,我应该单独或作为一个组创建它们吗?
我是新来的网站,所以如果我犯了什么错误,我很抱歉!
发布于 2020-12-23 12:16:18
您应该使用Solar2D的物理库。(用local physics = require( "physics" )打电话)。然后把所有这些墙变成物理物体
physics.addBody( leftWall, "static", { --[[all other parameters]] } )
physics.addBody( rightWall, "static", { --[[all other parameters]] } )
physics.addBody( ceiling, "static", { --[[all other parameters]] } )
physics.addBody( bottom, "static", { --[[all other parameters]] } )有关您可能希望读取文档的参数
此外,我建议使用display.newLine而不是display.newRect,并使它非常瘦。它显然更容易管理,我在这里编写的代码一点也不改变
https://stackoverflow.com/questions/65384645
复制相似问题