标签: tiled

为什么我使用Tiled在我的libgdx游戏中有线?

我正在使用LibGdx和Tiled,当在屏幕上移动时,游戏上会出现水平和垂直线条.如有必要,我可以发布您需要的任何代码.如何让这些线路停止?

所述线条的静止图像

这是一行gfycat的GIF:

http://gfycat.com/FastUnnaturalAmericanwirehair

编辑:

这是一个小的bitbucket存储库,尽可能小,它有相同的故障:

https://bitbucket.org/Chemical_Studios/example-of-line-glitch/src/8eeb153ec02236d836763072611bd7aa55d38495/minimalExample/src/com/weebly/chemicalstudios/minEx/?at=master

java lines libgdx visual-glitch tiled

9
推荐指数
1
解决办法
3318
查看次数

LibGDX:如何使平铺地图图块可点击?

如何为平铺地图中的切片添加单击侦听器,以便在使用鼠标选择切片时它会突出显示?

java libgdx tiled

9
推荐指数
1
解决办法
5451
查看次数

Libgdx将地图对象平铺到box2d的body位置

瓷砖地图对象帽子的位置的x,y中的像素和在度的旋转.

我正在从地图加载坐标和旋转,并尝试将它们分配给box2d Body.位置模型之间存在一些差异,例如Tiled对象旋转以度为单位,box2d体角度为弧度.

如何将位置转换为BodyDef坐标x,y和角度,以便在正确的位置创建正文?


背景:

使用代码:

 float angle = -rotation * MathUtils.degreesToRadians;
 bodyDef.angle = angle;
 bodyDef.position.set(x, y);
Run Code Online (Sandbox Code Playgroud)

当旋转为0时工作,但当旋转不同于0时,正文未正确定位.

我在这里找到了几个提示:

http://www.tutorialsface.com/2015/12/qu ... dx-resolved /

和这里:

https://github.com/libgdx/libgdx/issues/2742

这似乎解决了这个确切的问题,但是这两种解决方案对我来说都没有用,在应用这些转换后,身体对象仍然处于错误状态.如果定位错误,我的意思是身体位于地图区域应该是,但根据其旋转稍微偏离.

我觉得它应该很简单,但我不知道如何调解Tiled和box2d位置之间的差异.

作为参考,这些是我从上面的链接尝试的两个解决方案(在将值x,y,宽度,高度从像素转换为世界单位之后):

float angle = rotation * MathUtils.degreesToRadians;
bodyDef.angle = -angle;
Vector2 correctionPosition = new Vector2(
        height * MathUtils.cosDeg(-rotation - 90),
        height + height * MathUtils.sinDeg(-rotation - 90));
bodyDef.position.set(x, y).add(correctionPosition);
Run Code Online (Sandbox Code Playgroud)

    float angle = rotation * MathUtils.degreesToRadians;

    bodyDef.angle = -angle;

    // Top left corner of object
    Vector2 correctedPosition = …
Run Code Online (Sandbox Code Playgroud)

box2d libgdx tiled

9
推荐指数
1
解决办法
1049
查看次数

LibGDX:如何在等距平铺地图上做动画?

我对LibGDX和平铺地图有些问题.我来自Corona SDK(Lua),我使用Lime(第三方lib来处理tmx地图),现在我切换到LibGDX并遵循这个最近的功能:GraphicsTileMaps

我能够使用IsometricTiledMapRenderer渲染器从资源加载等轴测图,并OrthographicCamera显示地图(所有工作都在维基页面中描述).我还能够以编程方式填充地图图层上的一些图块,但是当我尝试使用时,我的问题就出现了AnimatedTiledMapTile:

    map = new TmxMapLoader().load(...);

    TiledMapTileLayer layer = (TiledMapTileLayer) map.getLayers().getLayer("layer1");
    TiledMapTileSet tileset =  map.getTileSets().getTileSet("tileset1");
    TiledMapTile grassTile =  tileset.getTile(4);
    TiledMapTile rockTile =  tileset.getTile(6);

    Array<StaticTiledMapTile> playerTileArr = new Array<StaticTiledMapTile>();
    playerTileArr.add((StaticTiledMapTile)tileset.getTile(7));
    playerTileArr.add((StaticTiledMapTile)tileset.getTile(8));

    Cell grass = new Cell();
    grass.setTile(grassTile);

    Cell player = new Cell();
    player.setTile(new AnimatedTiledMapTile(0.1f, playerTileArr));

    layer.setCell(0,0, grass);  // <--- This works.
    layer.setCell(0,1, player); // <--- When I try this, it causes 
                                //      a NullPointerException.

    renderer = IsometricTiledMapRenderer(map, 1 / 30f);
    ...
Run Code Online (Sandbox Code Playgroud)

有人可以帮忙吗?我找到了一个AnimatedTiledMapTile …

java animation isometric libgdx tiled

7
推荐指数
1
解决办法
3475
查看次数

构建项目时出错:构建Player时出错,因为脚本在编辑器中有编译错误

我有Tiled2Unity插件.当我开始在Unity中构建我的游戏版本时,无论是独立版本还是其他任何东西,我都会收到以下错误:"构建播放器时出错,因为脚本在编辑器中存在编译错误"

然后它指向我这堂课

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

using UnityEditor;

namespace Tiled2Unity
{
    public class CircleObject : TmxObject
    {
    }
}
Run Code Online (Sandbox Code Playgroud)

有人可以帮我弄清问题是什么?

c# unity-game-engine tiled

4
推荐指数
1
解决办法
9935
查看次数

C#词典-词典中不存在给定的键

我目前正在尝试将Tiled(Tiled地图编辑器)地图文件中的游戏对象加载到我在C#中制作的游戏引擎中。我正在使用TiledSharp(在此处链接到github )。它使用字典来保存我要加载的每个单独图块(或“游戏对象”)的属性。但是由于某些原因,当我遍历属性时会收到错误消息,如果检查它是否为null,也会收到错误消息

这是我正在使用的代码的片段:

for (int l = 0; l < tmxMap.Tilesets[k].Tiles.Count; l++)
    // This line throws an error
    if (tmxMap.Tilesets[k].Tiles[l].Properties != null)
        // and if I remove the above line, this line throws an error
        for (int m = 0; m < tmxMap.Tilesets[k].Tiles[l].Properties.Count; m++)
Run Code Online (Sandbox Code Playgroud)

我得到的错误是字典中不存在给定的键。但是...我什至都不在寻找钥匙。

我想念什么吗?

任何帮助,将不胜感激。

c# dictionary game-engine tiled

4
推荐指数
1
解决办法
4455
查看次数

Unity 2D艺术很模糊

出于某种原因,我不能像在Unity中创建的那样将这些图块映射出来......像素艺术从Tiled导入Unity.

Tiled中的像素艺术: 瓷砖

导入Unity的相同像素艺术: 统一

有谁知道如何解决这个问题?提前致谢!


根据要求,精灵导入设置: 精灵导入设置

pixel unity-game-engine tiled

4
推荐指数
2
解决办法
6609
查看次数

libGDX:如何实现基于平铺/网格的游戏角色运动?

因为害怕重新发明轮子,我想知道:

使用libGDX在自上而下的Tiled(2D)地图上实现基于平滑网格的游戏角色移动的最佳方法是什么?

只要按下箭头键(或者在角色的某个方向上发生触摸事件),角色就应该在瓷砖之间保持平滑移动,并且应该完成限制在按键/触摸释放上的网格位置.运动应独立于帧速率.

我会很高兴一些已经实现的示例可以研究并导致正确的libGDX API使用.

java windows android libgdx tiled

3
推荐指数
1
解决办法
5047
查看次数

TILED编辑器 - 可以在对象层中对齐网格对象放置?

再次感谢您提前帮助我.

值得庆幸的是,我已经能够在没有太大问题的情况下将TMX导入到libgdx游戏中,但是现在这是第一次使用对象层,此时此刻我只想将平台作为对象(即我有1x Tile Layer显示我的背景图像和上面的1x Object Layer.现在我已经看到我可以绘制线条和/或方框,圆圈等来创建"区域",我可以将其拉入我的代码中(善良只知道atm但我会稍后/很快就会知道)

但我在Tiled看到按钮 - 插入平铺(T) - 存在.我正在尝试使用它但是当我使用平台作为平台放置它时,它正好在按下鼠标的地方,除了删除它之外我无法移动它.我现在只想复制粘贴它们的整行,而Level1只能在一条扁平线上放置50个瓷砖,这样我就可以完成所有工作了.对我来说,Tiled不能做到这一点似乎很奇怪,但我花了很多年的时间寻找方法却无法找到它.

我错过了什么,或者这是不可能的?如果是后者,经验丰富的平铺用户(谁制作2d平台游戏)如何在Tiled环境中创建如此简单的示例呢?

oop tmx tiled

3
推荐指数
1
解决办法
928
查看次数

平铺地图编辑器:等距平铺边的大小

在Tiled编辑器中有一个等距映射示例:"isometric_grass_and_water.tmx".此示例显示了具有64x32像素大小的图块的简单等距映射.

我需要知道瓷砖边的大小,所以我只是用了毕达哥拉斯定理: 在此输入图像描述

在直角三角形ABC侧AC =宽度/ 2 = 32并且侧AB =高度/ 2 = 16.因此,区块(BC)的侧面可以被计算为:

在此输入图像描述

所以整块瓷砖是菱形,每边= 35.777.

然而,当我向Tiled添加尺寸为35.77 x 35.77的方形物体时,它不适合网格(它实际上比在瓷砖上更大).但是,如果我添加尺寸为32 x 32的物体 - 它非常适合.

请看一下这张图片(对象A是32x32,B是35.77x35x77):

在此输入图像描述

这怎么可能?Tiled是否使用了某种缩放,或者我的计算出了什么问题?

tile isometric tiled

2
推荐指数
1
解决办法
3792
查看次数