isometric相关内容

检测等距纹理上的点击/触摸

我很难在一个简单的等距 Sprite Kit 游戏中实现点击处理. 我有一个包含多个 Tile 对象 (SKSpriteNode) 的地图 (SKNode) 的游戏场景 (SKScene). 这是地图的截图: 我希望能够检测到用户点击的磁贴,所以我在磁贴对象上实现了 mouseDown.这是我在 Tile.m 中的 mouseDown : -(void)mouseDown:(N ..
发布时间:2022-01-11 11:48:32 其他开发

使用 HTML5 Canvas 进行真正的等距投影

我是 HTML5 Canvas 和 JavaScript 的新手,但有没有一种简单的方法可以在 HTML5 Canvas 元素中进行等距投影? 我的意思是真正的等距投影 - http://en.wikipedia.org/wiki/Isometric_projection 谢谢大家的回复. 解决方案 首先,我建议将游戏世界想象成一个由 X 乘 Y 方格组成的规则网格.这使得从碰 ..
发布时间:2021-12-21 08:29:56 前端开发

我如何将 x-y 位置转换为等距平铺的平铺 x-y?

我可以根据绘制等距游戏世界上的公式绘制我的地图.但是如何根据它在地图层 div 上的位置找到一个图块的 x-y? 为了清楚起见,我的磁贴的左侧样式为 1036 像素,顶部样式为 865 像素.根据这些css属性如何根据地图找到tile的x和y位置? 平铺宽度为 200,高度为 100. 非常感谢. 我的javascript代码是这样的: this.drawTiles = ..
发布时间:2021-11-26 13:43:40 其他开发

2D 钻石(等距)地图编辑器 - 纹理无限扩展?

我目前正在开发 2D 等轴测图编辑器.我显示包含点和纹理的实体(立方体,玩家).每个立方体由 12 个点组成.(12 个点,但在 sfml(sf::VertexArray) 显示时作为 4 个点的 3 个边处理). (我知道我有时会包含一些“.cpp",我的 IDE(visual studio)有问题,我正在尝试解决,请不要在意.) ma​​in.cpp #pragma once#i ..
发布时间:2021-11-26 13:25:41 C/C++开发

绘制等距游戏世界

在 2D 游戏中绘制等距图块的正确方法是什么? 我已阅读参考资料(例如 this one) 建议以一种方式渲染图块,该方式将使地图的 2D 阵列表示中的每一列呈锯齿状.我想它们应该更多地以菱形方式绘制,其中绘制到屏幕上的内容与 2D 数组的外观更密切相关,只需稍微旋转即可. 这两种方法有什么优点或缺点吗? 解决方案 更新:修正地图渲染算法,添加更多插图,更改格式. 也许“ ..
发布时间:2021-11-26 13:21:24 其他开发

2D 等距(菱形)游戏引擎 - 反转精灵

当我尝试绘制等轴测图时,我所有的精灵都反转了. 这是下面代码中提到的tileset.png: Object.h/Object.cpp 我可以用它们来绘制磁贴、UI 元素等...... #pragma once类对象{民众://职能目的();无效添加组件(浮点值);int getComponent(浮动索引);无效编辑组件(浮动索引,浮动值);无效删除组件(浮动索引);私人的:向 ..
发布时间:2021-11-24 22:31:03 C/C++开发

绘制等距瓦片图

我一直在使用 C#/XNA Game Studio 绘制等轴测图,虽然我已经走得很远了,但看起来不太正确,我想知道是否有人可以提供帮助. 这是我绘制地图的代码: public void Draw(SpriteBatch theBatch, int drawX, int drawY){如果 ((drawY % 2 == 0))theBatch.Draw(tileTexture, new Re ..
发布时间:2021-11-24 22:16:31 C#/.NET

二维等距网格中的点击检测?

我多年来一直从事 Web 开发,我正在慢慢地让自己参与游戏开发,对于我当前的项目,我有这张等轴测图,我需要使用算法来检测哪个领域正在被点击.顺便说一下,这一切都在带有 Javascript 的浏览器中. 地图 它看起来像 this,我添加了一些数字来向您展示字段的结构(瓷砖)及其 ID.所有字段都有一个中心点(x,y 数组),绘制时四个角基于该中心点. 如您所见,它不是菱形,而是锯齿形图 ..
发布时间:2021-11-24 22:03:54 前端开发

我如何将 x-y 位置转换为等距平铺的平铺 x-y?

我可以根据绘制等距游戏世界上的公式绘制我的地图.但是如何根据它在地图层 div 上的位置找到一个图块的 x-y? 为了清楚起见,我的磁贴的左侧样式为 1036 像素,顶部样式为 865 像素.根据这些css属性如何根据地图找到tile的x和y位置? 平铺宽度为 200,高度为 100. 非常感谢. 我的javascript代码是这样的: this.drawTiles = ..
发布时间:2021-11-24 21:33:15 C#

2D 钻石(等距)地图编辑器 - 纹理无限扩展?

我目前正在开发 2D 等轴测图编辑器.我显示包含点和纹理的实体(立方体,玩家).每个立方体由 12 个点组成.(12 个点,但在 sfml(sf::VertexArray) 显示时作为 4 个点的 3 个边处理). (我知道我有时会包含一些“.cpp",我的 IDE(visual studio)有问题,我正在尝试解决,请不要在意.) ma​​in.cpp #pragma once#i ..
发布时间:2021-11-24 21:15:21 C/C++开发

绘制等距游戏世界

在 2D 游戏中绘制等距图块的正确方法是什么? 我已阅读参考资料(例如 this one) 建议以一种方式渲染图块,该方式将使地图的 2D 阵列表示中的每一列呈锯齿状.我想它们应该更多地以菱形方式绘制,其中绘制到屏幕上的内容与 2D 数组的外观更密切相关,只需稍微旋转即可. 这两种方法有什么优点或缺点吗? 解决方案 更新:修正地图渲染算法,添加更多插图,更改格式. 也许“ ..
发布时间:2021-11-24 21:11:21 C#

将笛卡尔宽度和高度转换为等轴测图

我正在尝试在SDL图形库中创建一个Isometric游戏. 在SDL中进行渲染时,您需要一个源矩形和一个目标矩形.源矩形是您要渲染的已加载纹理的一部分,目标矩形是您要渲染到的屏幕上的区域.矩形仅包含4个属性,即X位置,Y位置,宽度和高度. 现在说我有一个具有这些坐标的笛卡尔目标矩形: X = 20,Y = 10,宽度= 16,高度= 16 现在说我想将其转换为等轴测图.要转 ..
发布时间:2020-06-26 19:45:01 C/C++开发

计算等轴测网格上的矩形内包含的像元

考虑给我们一个等距的网格(考虑暗黑破坏神(Diablo)之类的东西).我们对网格有一些度量,例如网格高度,网格宽度和图块高度/宽度.考虑此图像: 网格的中心像元是0,0,扩展了iso-north(+ y),iso-south(-y),iso-east(+ x)​​,iso-west(-x). 假设我们在网格上的任意位置绘制一个矩形.我们没有矩形的等距位置,但是有网格的法线绘制坐标,其中左上角 ..
发布时间:2020-06-26 19:44:59 移动开发

以2D渲染等距文字

如何以等轴测投影的形式呈现文本?我了解原理,但是我不确定如何以编程方式实际转换SpriteFont来做到这一点. 我的意思示例: 我什至不确定我应该寻找什么.看来我可以通过使用等轴测投影矩阵和3D网格字体来完成此操作,但是考虑到我在2D模式下工作,这似乎过于复杂了. 有什么想法吗? 解决方案 SpriteBatch.Begin使用一个Matrix参数,将您绘制的精灵(包括 ..
发布时间:2020-06-26 19:44:57 C#/.NET

等距屏幕到地图问题

我知道关于等轴测图的很多建议,但是我已经阅读了大多数建议,但并没有解决我的问题. 我为C#重写了代码,以简化操作(此代码将在Android平台上使用) 我需要将屏幕线接到等轴测坐标上. 在这里,我为我使用64:32的1:2瓦片,并使用此代码构建菱形贴图 private void drawIsoGrid(PaintEventArgs e) { for(int y=0;y ..
发布时间:2020-06-26 19:44:54 C#/.NET

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

在Tiled编辑器中,有一个等轴测图示例:"isometric_grass_and_water.tmx". 此示例显示了带有尺寸为64x32像素的图块的简单等距图. 我需要知道瓷砖侧面的大小,因此我仅使用毕达哥拉斯定理: 在直角三角形ABC中,边AC =宽度/2 = 32,边AB =高度/2 =16.这样,瓷砖(BC)的边可以计算为: 因此,整个图块都是菱形,其中每边= 35.777. ..
发布时间:2020-06-26 19:44:52 其他开发

等距屏幕到地图

我试图弄清楚当我拥有“坡道"和+1个高度图块时如何在鼠标下获得正确的“活动"图块(见下图). 当我的世界平坦时,一切正常.一旦我添加了一个高度为+1的图块,以及一个返回+0的坡度,我的屏幕->地图例程仍然看起来好像一切都是“平坦的". 在上面的图片中,绿色的“坡道"是我要渲染并计算鼠标的真实图块->地图,但是您看到的“下方"的蓝色图块是要计算的区域.因此,如果将鼠标移到任何深绿色区域中 ..
发布时间:2020-06-26 19:44:50 前端开发

具有非等距子级的css等距视图

我正在使用transform: rotateX(60deg) rotateY(0deg) rotateZ(-45deg);使元素看起来像在等轴测透视图中.我想知道如何才能恢复某些孩子的效果,以使他们共享协调系统但正常对齐.我试图以相同的方式旋转这些孩子,但工作方式似乎有所不同.有什么想法吗? .iso { transform: rotateX(60deg) rotateY(0deg) ..
发布时间:2020-06-26 19:44:47 前端开发

WebGL等距投影

好的,这里要疯了.我正在做一些WebGL,并且正在尝试制作一个等距的多维数据集.我不想使用Three.js.我想首先了解我的代码出了什么问题.我一直在研究,发现唯一的教程似乎是针对OpenGL 无论如何-这是我的drawScene函数: function drawScene() { this.gl.clear(this.gl.COLOR_BUFFER_BIT | this.gl.DE ..
发布时间:2020-06-26 19:44:44 其他开发