gpt4 book ai didi

android - 平移和缩放时将 libgdx 相机保持在边界内

转载 作者:塔克拉玛干 更新时间:2023-11-01 21:53:27 26 4
gpt4 key购买 nike

我正在使用 LibGDX 为 Android 开发游戏。我添加了捏缩放和平移。我的问题是如何避免离开游戏区。事实上,您可以在游戏区域外平移到黑暗中。当完全缩小时我知道如何处理它,我只是说:

if(camera.zoom == 1.0f) ;
else {

}

但是,如果放大,我该如何实现。我知道这并没有那么复杂,我只是想不通。创建后,我将相机设置在屏幕中间。我知道如何平移,我正在使用 camera.translate(-input.deltaX, -input.deltaY, 0),我只需要在调用之前进行测试,看看位置是否在游戏区域之外。当我放大时,如何测试我是否在屏幕边缘?

最佳答案

你可以使用其中之一

camera.frustum.boundsInFrustum(BoundingBox box) 
camera.frustum.pointInFrustum(Vector3 point)
camera.frustum.sphereInFrustum(Vector3 point, float radius)

检查点/框/球体是否在您的相机视野内。我通常做的是在我的世界周围定义 4 个盒子,玩家不应该看到这些盒子。如果移动了相机并且其中一个盒子位于截锥体中,我将相机移回之前的位置。

编辑:AAvering 在代码 below 中实现了这一点.

关于android - 平移和缩放时将 libgdx 相机保持在边界内,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12039465/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com