问题标签 [spritebatch]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
matrix - 矩阵创建规模,这里发生了什么?
我正在尝试使用 spritebatch 执行一些矩阵转换,但我不明白比例矩阵发生了什么。
通常我使用这个顺序得到最好看的结果,但是如果我将比例更改为在旋转之前一切都会变得很奇怪,即使使用 (1.1.0) 比例,所以我只是得到原始大小。
让我们将比例固定为 1(不包括 Z),如果我将顶点与比例保持不变(我认为),它为什么/如何影响旋转?
例子:
平移->旋转->缩放->平移
平移->缩放->旋转->平移
提前致谢, 罗杰
java - LibGDX sprite 批量字体坏比例渲染
我在尝试将文本/对话系统放入我的游戏项目时遇到问题。当我创建一个字体并通过相机更新的 spriteBatch 调用它的 draw 方法时,字体的每个像素都具有一个精灵的相同尺寸。
我得到以下渲染:
您可以在图片中看到“hello”的“h”顶部,每个像素都超大。相同的相机用于渲染图块/精灵。
我想要达到的效果是这样的:
这是代码:
我试过使用font.setScale()
没有成功。
有人知道如何实现这一目标吗?
java - Libgdx 将 SpriteBatch 保存在纹理中
我想知道是否可以将 spriteBatch 保存在纹理中。
在批处理中绘制了一些东西之后,我想将所有包含 SpriteBatch 的东西保存在一个纹理中(类似于屏幕截图)。
我不知道该怎么做,我在网上和 libgdx 文档上搜索但没有找到。
谢谢
c# - XNA - 绘制许多矩形会导致滞后
我正在 XNA 中创建一个需要绘制数千个小矩形/正方形的游戏。随着数量的增加,性能会变得更差。这是我当前使用的代码:
我要求spriteBatch.Draw()
每一个方格,我正在重绘整个屏幕只是为了添加一个方格。我已经进行了大量搜索,我相信解决方案是绘制一个纹理,然后调用Draw()
该纹理,但我找不到相关示例。
c# - 在 MonoGame 中绘制图纸的子图像
所以我知道标题可能有点含糊,所以我将尝试解释我的意思。基本上我想要完成的是绘制许多不同的对象和图像,但是在一种缓冲区中,这样我以后可以使用绘图函数只绘制这个缓冲区的一部分。
我正在尝试在 MonoGame 中制作滚动功能,就像 WinForms 中的水平/垂直滑块控件一样,并且我得到了一个滑块工作。我想要的是让滑块准确地切断此滑块窗口内的其他控件。
现在我明白我想要完成的事情RenderTarget2D
就是存在的,当我尝试使用它时,我发现让它做我想做的事情非常困难。我现在的主要问题是,当我在 中绘制某些东西时RenderTarget
,一旦我设置了它就会清除其他所有内容SetRenderTarget(null)
(以便我再次在游戏窗口上绘制)。
长话短说,以下代码在我执行RenderTarget2D
代码之后绘制了所有内容,但清除了之前的所有内容。
另外,我有这些:
我无法想象最后一点有多重要,但我想我不妨添加一点太多而不是太少一点。
是的,所以如果有人知道可能出了什么问题,我真的很想知道,因为现在我一直在查看这段代码并试图弄清楚它的头部和尾部大约 5 个小时左右,而我似乎一点进展都没有。
谢谢
3d - 在 libgdx 的 3D 空间中渲染 SpriteBatch + ParticleEffect?
我正在使用 libgdx 0.9.9 版。我想在 3D 空间中使用 ParticleEffect 以及其他 3D 模型来渲染火焰效果。
我的代码的逻辑流程:
- 模型批处理开始
- 使用 ModelBatch 渲染 Bullet World 中的所有 3D 模型
- 模型批次结束
- SpriteBatch 开始
- 使用 SpriteBatch 使用 ParticleEffect (effect.draw) 渲染火焰效果
- SpriteBatch 结束
- 使用 Stage 绘制 HUD
问题:火焰效果在 3D 空间中的某个点渲染得很好。但是当我旋转相机以使 3D 模型位于相机和火焰效果之间时,火焰效果会呈现在 3D 模型上,而不是隐藏在 3D 模型后面。
我尝试过的事情:
- 我尝试先渲染 SpriteBatch,然后渲染 3D 模型:在这种情况下,火焰效果不可见。我猜测 3D 模型(图层)正在渲染火焰效果(图层),因此效果不可见。
- 我尝试在第 1 步和第 3 步之间渲染 SpriteBatch,即在 modelbatch.begin 和 modelbatch.end 之间渲染 SpriteBatch。在这种情况下,火焰效果根本不可见。
- 我尝试将粒子效果渲染为 Actor(添加到 HUD 舞台)。正如预期的那样,火焰效果渲染为最顶层 HUD 层的一部分,同样的问题仍然存在。
- 我曾尝试探索贴花,但发现粒子效果不适用于 DebcalBatch。我不想在贴花上显示动画火焰 .gif,因此没有尝试。
有没有人遇到过类似的问题?有什么建议的解决方法可以使 ParticleEffect 成为 3D 世界的一部分,以便在被其他 3D 模型阻挡时隐藏起来?我在 youtube 上看到了 Xoppa 发布的关于 libgdx 中的 3D 粒子的视频,但没有提到任何步骤/解决方案。任何帮助将不胜感激。
java - Sprite 粘在 libgdx 中的相机上?
我想让我离开它的精灵在屏幕上,并在世界上拖动相机。但是精灵粘在相机上,当我拖动相机时,它仍然在屏幕底部。
tilemap(.tmx 文件)和渲染器不会发生这种情况:相机可以在 tilemap 上拖动,并且 tilemap 不会粘在相机上。使用 spriteBatch 强硬时,精灵会停留在屏幕底部。
这是我的代码:
java - libGDX performance: best time for OrthographicCamera.update()
I just have a quick simple question (it may be fairly obvious to you but I'm rather new to libGDX and graphics in general):
When is it best to call the camera.update() method in libGDX? Specifically, is there anything else in the render method [I do know that I have to call it in the rende-method :-) ] that I definitely want to do before or after updating the camera (e.g. starting the batch)? Or is it just completely up to me?
Thanks for answering,
Tony
c# - 当确实没有任何无效参数时,MonoGame SpriteBatch.Draw() 无效参数?
我正在 MonoGame 中绘制一个 Sprite,我正在尝试使用 Draw() 方法和允许 SpriteEffect 作为参数传递的重载,但我得到一个红色下划线,它说:
现在,我有理由相信控制台在撒谎。其中一个原因是它没有任何翻转的无效参数。
这是我的代码的样子:
Texture
是我在构造函数中初始化的本地 Texture2D 变量。destinationRectangle
是一个作为参数传递给我自己的 Draw() 函数的 Rectangle。null
是不言自明的。这也适用于接下来的三个论点。effect
只是简单地作为参数传递,最后 1f 显然是 1f。
我知道我在这里做错了什么,我只是不明白我做错了什么。有人可以帮忙吗?
javascript - 从 HTML 页面调用 .bat 脚本
我编写了一个客户将在 Windows Server 上安装的软件,并编写了一个 HTML 页面作为安装指南。如何在 HTML 页面上创建一个链接,该链接将以管理员身份调用我的 .bat 脚本。.bat 脚本将为客户处理安装。HTML 页面将作为文件运行,即没有任何服务器(包括本地主机)。.bat 脚本、html 页面和二进制文件将位于同一文件夹中。该文件夹可能位于 Windows 服务器上的任何位置(我不知道客户会将文件夹放在哪里)。