【问题标题】:What is wrong in my libgdx box2d texture codes我的 libgdx box2d 纹理代码有什么问题
【发布时间】:2020-11-07 21:03:05
【问题描述】:

我正在尝试使用 aling 纹理和矩形体。问题是当身体碰撞时,某些纹理没有与身体旋转。它自己在旋转。我尝试了我在互联网上看到的所有方法。我做错了什么。谢谢。

在节目中

        val props = startPoint.properties
        props2=props
        val x=props.get("x") as Float
        val y= props.get("y") as Float
        val width=props.get("width") as Float
        val height=props.get("height") as Float
        boxBody=tma.makeRectagleBody(x, y, width,height)
        box = Box(props.get("x") as Float, props.get("y") as Float, mainStage)
        box.setSize(props.get("width") as Float, props.get("height") as Float)

渲染中

 box.setPosition(boxBody.position.x * MyConstants.PPM - props2.get("width") as Float / 2, 
                    boxBody.position.y * MyConstants.PPM - props2.get("height") as Float / 2)
    box.setRotation(boxBody.getAngle() * MathUtils.radiansToDegrees)

制作body方法

fun makeRectagleBody(x: Float, y: Float, width: Float, height: Float):Body{

    val shapeRectangle = PolygonShape()
    shapeRectangle.setAsBox(genislik / 2 / MyConstants.PPM, yukseklik / 2 / MyConstants.PPM)
    val bdefRectangle = BodyDef()
    bdefRectangle.type = BodyDef.BodyType.DynamicBody
    bdefRectangle.position.set((x + genislik / 2) / MyConstants.PPM,
            (y + yukseklik / 2) / MyConstants.PPM)
    val bodyRectangle = world.createBody(bdefRectangle)
    bodyRectangle.createFixture(shapeRectangle, .5f)//Eğer densityyi ayarlamazsan karakter yine rahat hareket etmiyor. Dikkat et.
    return bodyRectangle

盒子里

if (animation != null && isVisible) { batch.draw(animation!!.getKeyFrame(elapsedTime),x, y, originX, originY, width, height, scaleX, scaleY, rotation)
        }
        super.draw(batch, parentAlpha)

【问题讨论】:

    标签: kotlin libgdx box2d


    【解决方案1】:

    我解决了我的问题。通过添加

    box.setOrigin(box.getWidth()/2,box.getHeight()/2)
    

    box.setRotation(boxBody.getAngle() * MathUtils.radiansToDegrees)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-07-28
      相关资源
      最近更新 更多